From patchwork Tue Oct 4 17:41:28 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bart Van Assche X-Patchwork-Id: 9362175 X-Patchwork-Delegate: snitzer@redhat.com Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id CAB91600C8 for ; Tue, 4 Oct 2016 17:44:13 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id BE5E428B70 for ; Tue, 4 Oct 2016 17:44:13 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id B2EC728B9C; Tue, 4 Oct 2016 17:44:13 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_MED, RDNS_NONE, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from mx5-phx2.redhat.com (unknown [209.132.183.37]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 8577928B70 for ; Tue, 4 Oct 2016 17:44:11 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by mx5-phx2.redhat.com (8.14.4/8.14.4) with ESMTP id u94HfbVE026707; Tue, 4 Oct 2016 13:41:38 -0400 Received: from int-mx11.intmail.prod.int.phx2.redhat.com (int-mx11.intmail.prod.int.phx2.redhat.com [10.5.11.24]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id u94HfamJ032750 for ; Tue, 4 Oct 2016 13:41:36 -0400 Received: from mx1.redhat.com (ext-mx04.extmail.prod.ext.phx2.redhat.com [10.5.110.28]) by int-mx11.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id u94HfaJB013612 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO) for ; Tue, 4 Oct 2016 13:41:36 -0400 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on0061.outbound.protection.outlook.com [104.47.36.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id AD9F2821C3 for ; Tue, 4 Oct 2016 17:41:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sandiskcorp.onmicrosoft.com; s=selector1-sandisk-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=WsRN7xvjBBbE56tB3pS+V4myjMJD7YJkgnqeidJzl2M=; b=OduX9zIPdVf/oT96Ib0UyqfXRCToNYJCCVW+RqntNT8ykIpHIt2HXGHK7k1OUPD1vZCNUtLTn3EFgqODGVq/TfqbUTzQl5MDZAODDOv6bqWBHTFA28joxChPr5uhxLMeM7VjFga/NpMm+vnYru8VpfKFtWLVBXmUjXhovMAfcl4= Received: from BN1PR02CA0023.namprd02.prod.outlook.com (10.141.56.23) by BLUPR02MB1619.namprd02.prod.outlook.com (10.162.212.157) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.649.16; Tue, 4 Oct 2016 17:41:32 +0000 Received: from BL2FFO11OLC003.protection.gbl (2a01:111:f400:7c09::149) by BN1PR02CA0023.outlook.office365.com (2a01:111:e400:2a::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.649.16 via Frontend Transport; Tue, 4 Oct 2016 17:41:32 +0000 Authentication-Results: spf=pass (sender IP is 63.163.107.21) smtp.mailfrom=sandisk.com; redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=bestguesspass action=none header.from=sandisk.com; Received-SPF: Pass (protection.outlook.com: domain of sandisk.com designates 63.163.107.21 as permitted sender) receiver=protection.outlook.com; client-ip=63.163.107.21; helo=milsmgep15.sandisk.com; Received: from milsmgep15.sandisk.com (63.163.107.21) by BL2FFO11OLC003.mail.protection.outlook.com (10.173.161.187) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.629.5 via Frontend Transport; Tue, 4 Oct 2016 17:41:31 +0000 Received: from MILHUBIP03.sdcorp.global.sandisk.com (Unknown_Domain [10.201.67.162]) (using TLS with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by (Symantec Messaging Gateway) with SMTP id 68.4C.26959.867E3F75; Tue, 4 Oct 2016 10:31:20 -0700 (PDT) Received: from milsmgip12.sandisk.com (10.177.8.100) by MILHUBIP03.sdcorp.global.sandisk.com (10.177.9.96) with Microsoft SMTP Server id 14.3.319.2; Tue, 4 Oct 2016 10:41:29 -0700 X-AuditID: 0ac94369-b97ff7000001694f-c7-57f3e7685695 Received: from exp-402881.sandisk.com ( [10.177.8.100]) by (Symantec Messaging Gateway) with SMTP id 4D.6B.03606.9C9E3F75; Tue, 4 Oct 2016 10:41:29 -0700 (PDT) To: Christophe Varoqui References: <157defac-6527-ab23-92f2-9c1926042885@sandisk.com> From: Bart Van Assche Message-ID: Date: Tue, 4 Oct 2016 10:41:28 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 MIME-Version: 1.0 In-Reply-To: <157defac-6527-ab23-92f2-9c1926042885@sandisk.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrBLMWRmVeSWpSXmKPExsXCddJ5kW7G88/hBtP+mlms+ziXzWLvu9ms Dkwea26fZvV4v+8qWwBTFJdNSmpOZllqkb5dAlfG1Q/LWQpWCFXM6frE3sD4kq+LkZNDQsBE Yk/LHZYuRi4OIYGlTBLTnt5lA0kICWxnlDhxoRam6FfLdEaoIkaJs1fXgBUJC0RLnG36zA5i iwiYS8w/t4wFotlOomnDUbAaZgFjia87fjOC2GwCRhLf3s8Eq+EFqul7shWshkVAReJW10JW EFtUIELi1sMOqBpBiZMznwDZHBycAvYSPafSQExmAU2J9bv0IabLS2x/O4cZ5DQJgS5Wicvb z7NDnKAucXLJfKYJjMKzkEyahdA+C0n7AkbmVYxiuZk5xbnpqQWGpnrFiXkpmcXZesn5uZsY IeGduYPx7hPvQ4wCHIxKPLwGGz+HC7EmlhVX5h5ilOBgVhLhDX8CFOJNSaysSi3Kjy8qzUkt PsQozcGiJM7rdu9LmJBAemJJanZqakFqEUyWiYNTqoFxxWWT2MsBlyde/em1/7jNHYUirc/O PE2C25bkTA+LPHZz32PnnozXm1oM5ZMWrjZfZHOFRf+Hil7IETWvH+aPax77BdaE3hEtS59U Fi77Ok3U6Ip8SemnA+9+pv6adT54zmaW+hnXfihsvHxQKe37hPT3bZc4vduZ7+VZqiwUvv5z 6aw506MuK7EUZyQaajEXFScCALkOSVRrAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrAJMWRmVeSWpSXmKPExsXCtZEjRffky8/hBiveilus+ziXzWLvu9ms Dkwea26fZvV4v+8qWwBTFJdNSmpOZllqkb5dAlfG1Q/LWQpWCFXM6frE3sD4kq+LkZNDQsBE 4lfLdMYuRi4OIYHFjBJ9D4+ygCSEBaIlzjZ9ZgexRQTMJeafWwYWFxKwk2jacJQNxGYWMJZY vH4+mM0mYCTx7f1MsBpeoJq+J1vB4iwCKhK3uhaygtiiAhEStx52QNUISpyc+QTI5uDgFLCX 6DmVBjFSXeLPvEvMELa8xPa3c5gnMPLNQtIxC0nZLCRlCxiZVzGK5WbmFOemZxYYGukVJ+al ZBZn6yXn525iBIcZZ9QOxusTzQ8xMnFwSjUwes/b2PyDtcaDn6WpwIGZc48Q06m28zusr534 nKVg2cMz2/4Oz06n3AIPvuNR/vt4prlJMgYs7Zmcu9ko4kKH94PVd+MvnmlQLpzvdKfz0kqb 3zyWbmuWVk05NvX5PvWO49EG17/N/Wvt5fRCRvnFy7c9S55zTvw+v1T7zgaF/rv9J7xWlegs VmIpzkg01GIuKk4EALFdqmnjAQAA X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:63.163.107.21; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(7916002)(2980300002)(438002)(189002)(199003)(8936002)(586003)(4001350100001)(54356999)(50986999)(76176999)(65806001)(11100500001)(356003)(86362001)(5660300001)(31696002)(65826007)(83506001)(77096005)(68736007)(189998001)(2270400002)(87936001)(64126003)(97736004)(110136003)(65956001)(69596002)(626004)(19580395003)(47776003)(19580405001)(50466002)(2906002)(8676002)(229853001)(305945005)(92566002)(2950100002)(230700001)(106466001)(81166006)(36756003)(6916009)(7846002)(53416004)(31686004)(23676002)(4326007)(81156014)(33646002); DIR:OUT; SFP:1101; SCL:1; SRVR:BLUPR02MB1619; H:milsmgep15.sandisk.com; FPR:; SPF:Pass; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11OLC003; 1:NDu/mcj8qV4vRuxKqlfyKpreGhsjtVaNMdmrYCecsD1URb2aDukA+O3BqEZRkrntYrQYsy+ElSXl22axyHcIhbLyfCvVKbMHic6aH3T7stmpMXwUlB3rCXdaXSGWMslacO8/sSQMHxtpk1GGSa+nXOTeZ0xZVuquJjeLusPeC+V85e0UHrO1Yripr6oLdMOcxAT/VWZQ9WPrbwA7V8ofeq+WEnaF0PerqUdChZGzBLQvrAdds2QQG15cpcvjPooGqCq+1qjLd+BC9Hkur1wKP2+rtjtWFjukK5J1jdnMczXN2jWZS8t/K1ByJNDWzNURhQv1rDHgcdY1XLqGQBbKqcwB9Gx4CLK2TMzm4FBTFDy327K+yguK7VCNBfMxzatV4RWBhSIJf3tbUEPd54UZeoPRhTZDFVBhwd422PYW5p4zk2JGfbPOaLGmc3RSbarUg2F6XQzRIIdLxzrlHymQMjH+RpuR4SQW06Qiks8jkqljtaNqh9GzAHkehUcYwEmZywGUiH6HHe155Qb85lgGlg== X-MS-Office365-Filtering-Correlation-Id: 36411cc8-bb85-498a-620e-08d3ec7dadd7 X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB1619; 2:xjNwymonbjtvezlIqDbu5EkiAKb7pV+fn4i5oPmPl0pHCB1+MIkaQfnlXZNxxs0GBpK48jKSCDE4NDfWeRAwScZr6SIO5K06uej2HvEh593Gxb+4GUBNSElUWxQWpG8nA+486JEqcEwVBwTCi5r8Ktfz6YtaYy//kLRzsBQ+tfSM8IE27iLM/06Vw4FBD8djo5KHe31HpPdc+2E18Ge1uA==; 3:u5rzhR929cOFfRyDJ95+QL67louEaugrbQ7MMxiKD0RKsCVKs/x3tT0jTXRDlUh2wWeHWIfmcBHp/JRsxs3WO32C84qxPeJl0aFKeNR2s5oVkRlCv97jdHkDOEcb6YsAAFCJrztcgmfJwFb09/DI2sf3Lf4qDGQwHQivkU1pa7eKcGJYXJFUbgHejQwZV63tYWmUQpIWgbclzRMUoJorQpS3zf3oPLh1LUgGbeQAHaiQ5lWtamAmg7IE7DEDpERaS7i3HdvJ9xKSPSuwjNHLVBSsuOWESRKBSIa5BIgQTL8=; 25:9JxUm5QteYoQ7O3ENvit/OaIjM78A8sTvPII7Z34jKX7gHjl1HN/hiqCrgnZ6ry5KJT6cCPjgSKFe6FtYX63aCqHvvxJIDDdgCIzYqFIUS3KASxY9r5Eo2ZvJ0vw7Q/P99O3JEbtkW9GAm8U14zXJPQlQ8xP7D5s9XbpMMRVmlIxNO1KV2YCw/oOAmGk2adl8lubleQomcNe7/008gDu61nD+OkkmqfLQ6rQnqxysuWqGWq6AgHlCUs3C4txk6h9c/JcV9wuxYsDPQputQtnkW8SP4pYb+MaAbUAYj6697jC5nJ0NW/SyDf55yQ8Ikm/1blKbbLQ0pfpr/+XuvgUa9sZAWRLzI8DUx6pviov18JEvlwWMQP9Y7PVCw8OrThAyfbcuw8PxjDUbJYxGvkRqPhYvKph9GMBHV4KYZELwVDCKPBoeHFoTj/y/OUH0Tyd X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(8251501002); SRVR:BLUPR02MB1619; X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB1619; 31:ri2yI60pj3dMJq1NKQvSo+6vpwkIeVlRj+WQxPzOdjVPzCciv7nwGcjSGf39vXBt8P5yMyQ9tCZld2+VdHJeN4+vJgPdP8BfA9zkKk1Silzg6e30hWbsWE9Fx2GdxpGHS+3j1AH/l/hnS6Dhzv4pezFwtyY7gVOz8NBfsbuYwWsTp4+GMuOk5Y3mfGQP3GEHv3AY4amhEHRACKGNKp+SJ4TpeZOYwBkkehe4qQvAI0ZsSC4sEEKZzZlns8DUkMo6; 20:ODDrnny8BY+wnq1mBAV7znBQymWPGfUtE7+XOZwEoVGOQ9Al7GYbaFSz/3LPwC2iHQ/NmIfxTnv/pQ6AHcRDkVBiLTQR7ZaD2pogVPomTVnOt9AhKL1hNbBeIslaiz1Ay5VT8dLUKKaJhJHg5DIE6NolOtSR2JTIX3pjXg4SD/fSd9J3/fmJNayNx8Xj787A/d7MSFhxz4bb30ShbHV6xvoXn09WIJVriD8fTxK1d2tBLRPgIZUqEZkdovk/zwNXG07JuGr0eq6b/nlp/XPhGIz3oRlCaSVytnTYAxafHE7FcV3n9vkbGE4SGG0m0T0OyogSvrpd4l0XJnJwzclZadsUXeyACzVFOEKkwyvkuyDm8mm8ylsSrwpSHepXR92dZvmuNicDh5J3unKcIpLrzzUCZI19EQjSovGwa8/nlzlwqB5J6ReC1D1szKH/eDU2azshhss1ienmrLbHsHlQHQX6N1HBHaAQ3x7N9LQi6Drdz5Gd/rXipDLRpJxQO2lp X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(42932892334569); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040176)(601004)(2401047)(8121501046)(13018025)(13016025)(5005006)(10201501046)(3002001)(6055026); SRVR:BLUPR02MB1619; BCL:0; PCL:0; RULEID:; SRVR:BLUPR02MB1619; X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB1619; 4:D+7z6KWbrPOX11kAh1uZ7l0L820MxHlS7XnCONJTzdwxksnuu2Sj0auztQSwkdK8ECftRm2iS129USyYhqUnp08guGlVamsnfu9y70PigjEXA8STsvd6hMi3NOfiKEEE7ee7X2DUHrcSijPCz7pcrIETaIXNPK7SdPE87pKd4fjc6eu77K+2VnM6EkriYKGoqw2fMITuKi8dgYyO3LCSaS6Az+U7hx5IT2m9GMaBQkXY6WMawAgnYB7Z5khNfwwsRJVA9VsC6USaR+PMKtyaaDOIP4NS/hQj5p8jg1o++YhmJr/URetkHud0UBIvhCjP/VBXdpt3n+8kyeQzPeaZHmgtkM4vHEp/gLIo/vNgkByAWHRZKBXm6wiAbGD6a71L/RDhJ8N29BDxJCcT7w2PRIbREZ/bgYchrZYCL/5WO3FcSyvefaTZUgK4NJBCQ5pgu7akm67+a50UfanLDb4mFSX8oCzEH3Fh93fk3ABsO7ILZ3jM5cce8cANGkNFVerC X-Forefront-PRVS: 00851CA28B X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtCTFVQUjAyTUIxNjE5OzIzOjNJeVBUK3dOQlhlbHF1VnZRakl4ZmR1TXlz?= =?utf-8?B?QWhVYmNQdGdIZk1iTHVERWRpalRMdEo1aFMwWi9JU25SRFZ2TUxLTkE3Z205?= =?utf-8?B?NGdEeXhSb3Jtak1TeVBoMk5pSlJUbXJOOXJjMkFUbEwxRkpWWFoxcVpaMXZF?= =?utf-8?B?eFJ6ajVyaVlMOHRabHZyOWIvc3R6V0QwZ3Y1OEpKV1prR00yQnlOQytldWVI?= =?utf-8?B?WGZHK0p6RU95L0hXY3VmY0hQakZ5SlJCTCtUbkpzd0FOQytYNjJXZERUTWJw?= =?utf-8?B?VEFWR28ydFJFb1JJRUFUMktQSzU0NmlYVW1VMS9xWlkrTlM1dGZuZEo2bVBI?= =?utf-8?B?ZVJ3a2NzUThZZThZS2pUWEVMMmNhc2ZGVE9XSFZmZFpxSHordUpjOXBzVklx?= =?utf-8?B?UUoxcVhQdFZBM3lqcG9NbTJHS0FuMWRjMXhEN0x3c1diQUJiRlJ5Q2s5ejVv?= =?utf-8?B?V1NoTXV0ZEFsUnJFdUFCa3gwNzFaaVQ1RGhoVmZYKytBeks3eXErcHlPR3pu?= =?utf-8?B?c3dKNzBHeHZZOC85RDhMRTFrRmdlT2ZxL0NWcTFSTTZxdWprbU1JalhkdSsx?= =?utf-8?B?UkVkczdodkFuYW9qZUhwUlhCMnoxNjB0a2VnZ3B6STBxVGNtaGRvdFh6dEFj?= =?utf-8?B?dis1OGJBcWFYWVlGdmFocTZxbTRuanBNdzFRNk1NN3lpYUg3YXNnK3NtODJF?= =?utf-8?B?eVJucG5HN05zVmdSYU9Td0U2R3puWWQ1d2hRTTRiN1QxellRUnMyRkYzQlIy?= =?utf-8?B?WHRDODhLMXkzSUZuQVJFcHpESVM1TndERlJDcE93K05jQ1NUdEFXYStFZkM1?= =?utf-8?B?TUxKOEJIQWtSWDVKcXd0NHBFQ1hwL2dLR0tpZzNLSlFlUXpuWFg1TmsyRlI3?= =?utf-8?B?aGtlcEo3MFFiT1lvWmxCVjlvVk5UN3QxVVpDcWZPSit1aUdUcnN0SjdtbDJP?= =?utf-8?B?VThkcktJMU9qWWlLU0MvcFpMRzVYMUVBa1V6QkpiUE9DQUNYVHp1a01zemZn?= =?utf-8?B?WnQzSU5sazVqd1c4TVROU3o3b1V4cUNXb09lbTdsY2YvcnVNdlZCL1RYRHM1?= =?utf-8?B?akorUFVFeVRKZEkzTnFVbWtWaDNhSzdUVjdBSVQ5ZVdpL0dhTVU5YTVQeDZW?= =?utf-8?B?SW03UTZaeGdzNFdDZ0JUbUdQNHcyclhZdE8ydEw3OXoyUmZkYS9JV210SkRW?= =?utf-8?B?V3dEblZVVG9LZ2RXN0VPMnRPMGc0WmxVZzdYMWRzMkFONGZ0RytUZ3FZbjhX?= =?utf-8?B?R0ZyOWRoVGFlbkZyYzJIWkhNMmVyR3FVdmE3VDZFQTcwcmhKSUsxSE16UGFu?= =?utf-8?B?WlN4SlV4eWVFdkZOTmsxVTNCNzNBQ1BZeERFL2FHTWJZcDBmbk1aQzBvbGFP?= =?utf-8?B?QjdCT0FTTXU2b3RzY3Vva1U0b1ZMUzR2NC96aU14T045c1RhVjBaYjhBNHdV?= =?utf-8?B?MllXaUY2R005UnNHaFJjNHB0NTNjSjE2Qlc1M3VKbzlVZ1ZzbU1jaTArN1FD?= =?utf-8?B?aEFOdk9Oak52ZnJsQU5SbFRnelJtVUpvU29yWE5RNkd4TFBkV3doUHUvcHFs?= =?utf-8?B?MDZzUzBKY1gzdE9pL21vbGo0YUdQaUdJWFl4ejJlT01RTFlaMFZsSVQvd0FD?= =?utf-8?B?YWxKUTJYKyt6M3oyRjFzUmQvOGNFdTlHdE1XaVJBLzlKV0Q4ZFNWSjFQMERW?= =?utf-8?Q?XqjtEjjpjxIhbXUWhBuSHKIXJJKuIjAjvV4muM0?= X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB1619; 6:4RzAMYMzbACRKEOSi5pikGNzCSrj0LHCZbwujAP9kxPHvI3av5rxLO0GE7hVgrpqm46zoGooUfIYiWQqNt5OBxFTzUh3M4oa4FLIyCpkfVc7XglBFUMbRh7XDgnz94VBqJM4r3ylT/47Z4SNh0iCbxDpkLrvxvOybjB081QXhAlPVWqoN/fOG67/U0jdFaILuRqqjvvHOU4htOuQGDP57hl3K6aSQf/3WIze7KTHvnLVtCu1xCKBvDrwFa3YCDbHjNGyLvbOkIKCfp//LpIQma9Xw15Gtcn/PsxqmvvAYMwbgixJ8D3pGrRdQVFCAfQdCIHTsyOOch9aXEhylIuT4HLlX6Sl5CSJWtoCoxiOkcg=; 5:swoZdvyv9+bGIFdYeJomc9DXNmfw3VH1mLh2UsMVDlwtauus0KzAUunknZ58Wec2DPeGoEahNcyAQAl5ZPdPlYldOEUxIEdNvIrKsVE71BW9Otyv0p/84uWiSLNxeQlkANE0rfg0mZK8TfFYtFQ8jjbvJFI8+OULIpnXIADtNMw=; 24:eZesV6uGtkckyKnxxBx8NVYiyByB84vEKfRqHD/725wmE/l/27KXUw0NOsdyNJEIq3UfDovGKVJc+Q376prO4VzYD5U8aRrvzrO42e+GpqI= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BLUPR02MB1619; 7:C+i+SwGaowGEOKHO92nCDzJ7CULhEQ4SUNwFjoHkvcAj771oRHK0Ut7D/ttEEWYUlykDcaTiyHPQRQduVzFKlLIlI8/dqv7PATL1JQA3iETtcRdT26Y3yCOSzy/gt6iBKkuYpTppid+WIRKr0ydwdkZtzpF9AFYLL2w6+FffYMyPEqtpTlmZl/iaZu527TGQceg5PAkqImDJ+gaycGGjl2ZFGPQN/l+bkfIcrD+h0jqKM0hBhj4YrkMpjnLSd3JC0PzoAovuUccpu5SnnFZxsfOXuOQwcNu4zqGYYuSPuNXM1EzeUFEe5T5KoWA5V2woKvSmrz39VPQcLHBK9ONCrg==; 20:RhKfXwhGIqilkHEm4X203JiZ8rtY6BAlwFvT/05FC0ADCrzf4DoagFyCrycW7S5zI6iLqfWt1kpRloIgE2PB/8MemDMZlYdjXe8+2RkxKeU+GLbTUvTrAcYS6AP5hWGG46yiqW9o5gQRst9O5zx6oh4XxW6SN1W0IxD5ldE6pr4WKPDMKd/J+sygkqTCTzx3tRuFoThZiZKsob8cos3g7UZOi0bdSu7RQChYGxDN5JnxwlXJ0WIRolrOgauT0pWe X-OriginatorOrg: sandisk.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Oct 2016 17:41:31.7892 (UTC) X-MS-Exchange-CrossTenant-Id: fcd9ea9c-ae8c-460c-ab3c-3db42d7ac64d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=fcd9ea9c-ae8c-460c-ab3c-3db42d7ac64d; Ip=[63.163.107.21]; Helo=[milsmgep15.sandisk.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR02MB1619 X-Greylist: Sender IP whitelisted by DNSRBL, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.28]); Tue, 04 Oct 2016 17:41:34 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.28]); Tue, 04 Oct 2016 17:41:34 +0000 (UTC) for IP:'104.47.36.61' DOMAIN:'mail-sn1nam02on0061.outbound.protection.outlook.com' HELO:'NAM02-SN1-obe.outbound.protection.outlook.com' FROM:'Bart.VanAssche@sandisk.com' RCPT:'' X-RedHat-Spam-Score: 0.368 (BAYES_50, DCC_REPUT_00_12, DKIM_SIGNED, DKIM_VALID, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_PASS, SPF_PASS) 104.47.36.61 mail-sn1nam02on0061.outbound.protection.outlook.com 104.47.36.61 mail-sn1nam02on0061.outbound.protection.outlook.com X-Scanned-By: MIMEDefang 2.68 on 10.5.11.24 X-Scanned-By: MIMEDefang 2.78 on 10.5.110.28 X-loop: dm-devel@redhat.com Cc: device-mapper development Subject: [dm-devel] [PATCH 13/15] libmultipath/checkers/tur: Fix races on tur_checker_context.thread X-BeenThere: dm-devel@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: device-mapper development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dm-devel-bounces@redhat.com Errors-To: dm-devel-bounces@redhat.com X-Virus-Scanned: ClamAV using ClamSMTP Avoid that pthread_cancel(ct->thread) can get called after the TUR thread exited because this is not allowed for detached threads. Avoid that data-race detection tools complain about reading ct->thread without holding ct->hldr_lock. Signed-off-by: Bart Van Assche --- libmultipath/checkers/tur.c | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/libmultipath/checkers/tur.c b/libmultipath/checkers/tur.c index 7605fb9..a7a70f6 100644 --- a/libmultipath/checkers/tur.c +++ b/libmultipath/checkers/tur.c @@ -224,6 +224,17 @@ static void cleanup_func(void *data) cleanup_context(ct); } +static int tur_running(struct tur_checker_context *ct) +{ + pthread_t thread; + + pthread_spin_lock(&ct->hldr_lock); + thread = ct->thread; + pthread_spin_unlock(&ct->hldr_lock); + + return thread != 0; +} + static void copy_msg_to_tcc(void *ct_p, const char *msg) { struct tur_checker_context *ct = ct_p; @@ -334,7 +345,13 @@ libcheck_check (struct checker * c) } if (ct->running) { - /* Check if TUR checker is still running */ + /* + * Check if TUR checker is still running. Hold hldr_lock + * around the pthread_cancel() call to avoid that + * pthread_cancel() gets called after the (detached) TUR + * thread has exited. + */ + pthread_spin_lock(&ct->hldr_lock); if (ct->thread) { if (tur_check_async_timeout(c)) { condlog(3, "%s: tur checker timeout", @@ -355,9 +372,10 @@ libcheck_check (struct checker * c) tur_status = ct->state; strlcpy(c->message, ct->message, sizeof(c->message)); } + pthread_spin_unlock(&ct->hldr_lock); pthread_mutex_unlock(&ct->lock); } else { - if (ct->thread) { + if (tur_running(ct)) { /* pthread cancel failed. continue in sync mode */ pthread_mutex_unlock(&ct->lock); condlog(3, "%s: tur thread not responding", @@ -391,7 +409,7 @@ libcheck_check (struct checker * c) tur_status = ct->state; strlcpy(c->message, ct->message, sizeof(c->message)); pthread_mutex_unlock(&ct->lock); - if (ct->thread && + if (tur_running(ct) && (tur_status == PATH_PENDING || tur_status == PATH_UNCHECKED)) { condlog(3, "%s: tur checker still running", tur_devt(devt, sizeof(devt), ct));