From patchwork Mon May 8 23:40:48 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bart Van Assche X-Patchwork-Id: 9716865 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 7EDFD6035D for ; Mon, 8 May 2017 23:43:29 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6F0452684F for ; Mon, 8 May 2017 23:43:29 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 638682807E; Mon, 8 May 2017 23:43:29 +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=-6.8 required=2.0 tests=BAD_ENC_HEADER,BAYES_00, DKIM_SIGNED, RCVD_IN_DNSWL_HI, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) (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 A259B2684F for ; Mon, 8 May 2017 23:43:28 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 92C7A1293; Mon, 8 May 2017 23:43:27 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 92C7A1293 Authentication-Results: ext-mx05.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=sandisk.com Authentication-Results: ext-mx05.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=dm-devel-bounces@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 92C7A1293 Authentication-Results: mx1.redhat.com; dkim=fail reason="signature verification failed" (1024-bit key) header.d=sharedspace.onmicrosoft.com header.i=@sharedspace.onmicrosoft.com header.b="tRCZ7eLm" Received: from colo-mx.corp.redhat.com (unknown [10.5.11.21]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 65BFA17A76; Mon, 8 May 2017 23:43:27 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 2E00541284; Mon, 8 May 2017 23:43:27 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id v48NhPmr008586 for ; Mon, 8 May 2017 19:43:25 -0400 Received: by smtp.corp.redhat.com (Postfix) id 54E3F17A76; Mon, 8 May 2017 23:43:25 +0000 (UTC) Delivered-To: dm-devel@redhat.com Received: from mx1.redhat.com (ext-mx09.extmail.prod.ext.phx2.redhat.com [10.5.110.38]) by smtp.corp.redhat.com (Postfix) with ESMTPS id B8295784C0; Mon, 8 May 2017 23:43:21 +0000 (UTC) Received: from esa2.hgst.iphmx.com (unknown [68.232.143.124]) (using TLSv1.2 with cipher RC4-SHA (112/128 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 94E3764D86; Mon, 8 May 2017 23:42:47 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 94E3764D86 Authentication-Results: ext-mx09.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=sandisk.com Authentication-Results: ext-mx09.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=Bart.VanAssche@sandisk.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 94E3764D86 X-IronPort-AV: E=Sophos;i="5.38,311,1491235200"; d="scan'208";a="112966644" Received: from mail-co1nam03lp0020.outbound.protection.outlook.com (HELO NAM03-CO1-obe.outbound.protection.outlook.com) ([216.32.181.20]) by ob1.hgst.iphmx.com with ESMTP; 09 May 2017 07:54:03 +0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sharedspace.onmicrosoft.com; s=selector1-sharedspace-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=4cI4iWEUyujK/CjVWwUYXmAcCI03GN051mf0hkvBaug=; b=tRCZ7eLmnxDAUo1Nrn5nIhwCdRMo426WOBj/PoY1dabxm1co+zKqplsfRZW8qon3oZdWY5BP4MkjNUXHI3J4jL/edmRYp52nNvDL7sekmNqr8Vs95eEGh0BCoeRmZJ3U73zdafewgt11WmnOwbemiNcbHC1EDXKK+A+J8PoRZl0= Received: from CO2PR04CA0079.namprd04.prod.outlook.com (10.166.88.47) by BLUPR04MB723.namprd04.prod.outlook.com (10.141.206.152) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1075.11; Mon, 8 May 2017 23:41:01 +0000 Received: from BN3NAM04FT058.eop-NAM04.prod.protection.outlook.com (2a01:111:f400:7e4e::202) by CO2PR04CA0079.outlook.office365.com (2603:10b6:102:1::47) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1075.11 via Frontend Transport; Mon, 8 May 2017 23:41:00 +0000 Authentication-Results: spf=pass (sender IP is 63.163.107.225) 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.225 as permitted sender) receiver=protection.outlook.com; client-ip=63.163.107.225; helo=milsmgep14.sandisk.com; Received: from milsmgep14.sandisk.com (63.163.107.225) by BN3NAM04FT058.mail.protection.outlook.com (10.152.93.101) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.1047.9 via Frontend Transport; Mon, 8 May 2017 23:40:59 +0000 Received: from MILHUBIP04.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 FA.95.19026.B0201195; Mon, 8 May 2017 16:40:59 -0700 (PDT) Received: from milsmgip12.sandisk.com (10.177.8.100) by MILHUBIP04.sdcorp.global.sandisk.com (10.177.9.97) with Microsoft SMTP Server id 14.3.319.2; Mon, 8 May 2017 16:40:56 -0700 X-AuditID: 0ac94371-41ba798000004a52-2c-5911020b6b72 Received: from exp-402881.sdcorp.global.sandisk.com ( [10.177.8.100]) by (Symantec Messaging Gateway) with SMTP id 54.00.18148.80201195; Mon, 8 May 2017 16:40:56 -0700 (PDT) From: Bart Van Assche To: , Mike Snitzer , Alasdair Kergon Date: Mon, 8 May 2017 16:40:48 -0700 Message-ID: <20170508234052.32375-7-bart.vanassche@sandisk.com> In-Reply-To: <20170508234052.32375-1-bart.vanassche@sandisk.com> References: <20170508234052.32375-1-bart.vanassche@sandisk.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrOLMWRmVeSWpSXmKPExsXCddJ5kS43k2CkwZf/UhbrTx1jttj7bjar xZ5Fk5gsVq4+ymTRtvErowOrx+6bDWwe7/ddZfPYfLo6gDmKyyYlNSezLLVI3y6BK+POkfvM BSeVKvYtfM7awPhLuouRk0NCwESidckbxi5GLg4hgaVMEt+eP2aFcLYzSvRf+8EOUzX57yxm iMRmoMSm66wgCTYBI4lv72eygNgiAgkSbVfngnUzCxxjlJgwcQszSEJYwE7izNk2ti5GDg4W ARWJX6/rQcK8AvYS396dYIVYIC9xdstOsHJOAQeJ1/e72EBsIaCaPWfPsYHMlBCYxSrxZFkf G0SzoMTJmU/AFjMLSEgcfPGCGaJBXeLkkvlMExiFZiEpm4WkbAEj0ypGsdzMnOLc9NQCQxO9 4sS8lMzibL3k/NxNjJDgLtzB+Pq29yFGAQ5GJR5ejTyBSCHWxLLiytxDjBIczEoivKYvgUK8 KYmVValF+fFFpTmpxYcYpTlYlMR5s2SnRggJpCeWpGanphakFsFkmTg4pRoYi7Z6uyeKnN51 xo6rflUr79wXt75c+rhB9dF3/UPLnZPVF8ukfPRZbDHvqPW3t52/ZR72FQXkWn5+soRT99wC rw3T71+/8/n7PNE/IZq/05vYLKuT31tZrXM7EcfeJbhT6vjMGYZ3pB0dd1/3WsC/N+eOv8t9 /qUveTk4tr1+/76p8pKfnea8BiWW4oxEQy3mouJEACkTiW1qAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrAJMWRmVeSWpSXmKPExsXCtZEjRZeDSTDS4OkVJov1p44xWxz82cZo 0dr+jcli77vZrBZ7Fk1isli5+iiTRdvGr4wO7B67bzawebzfd5XNY9qa80wem09Xe7Qf6GYK YI3isklJzcksSy3St0vgyrhz5D5zwUmlin0Ln7M2MP6S7mLk5JAQMJGY/HcWcxcjF4eQwEZG if+r5rKAJNgEjCS+vZ8JZosIJEhc+/6FHaSIWeAEo0T7txnMIAlhATuJM2fb2LoYOThYBFQl tt/hAgnzCthLrH3ewASxQF7i7JadYOWcAg4Sr+93sYHYQkA1e86eY5vAyL2AkWEVo1huZk5x bnpmgaGRXnFiXkpmcbZecn7uJkZwmHBG7WC8PtH8ECMTB6dUA+NC9W+K36b+4JS+o7ts6cOH vkeSHLVXsqm0HuT9pSNZs4PV2GLBlsKaZpvPtT4fj8+vuMZkah3vxfO1QGPRjEqWNS/unYps 3npwdpCctvO6tEu7b2kf/ikWvGjd8b7zzUJiGpWbfbnKCsW2d7YeOjP5S9jLJ61/Yy+470mz 37Vv3na9AFF7hVwlluKMREMt5qLiRABCqPtYwwEAAA== MIME-Version: 1.0 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:63.163.107.225; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(39860400002)(39840400002)(39450400003)(39410400002)(39850400002)(39400400002)(2980300002)(438002)(199003)(189002)(9170700003)(1076002)(5660300001)(305945005)(50226002)(8676002)(81166006)(5003940100001)(36756003)(47776003)(8936002)(478600001)(50986999)(76176999)(50466002)(106466001)(48376002)(6666003)(2950100002)(54906002)(77096006)(356003)(38730400002)(33646002)(53936002)(86362001)(2906002)(4326008)(189998001); DIR:OUT; SFP:1102; SCL:1; SRVR:BLUPR04MB723; H:milsmgep14.sandisk.com; FPR:; SPF:Pass; MLV:sfv; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN3NAM04FT058; 1:6VU7kzYgudaDtLXYzHA0oIMW8QTu2tXYgxwF0lU8yaZ9GnN9xxnyt1JW7xUUUFyB363g8aOO8D+jxiutODsfTT93F7A8WdT5XPt3PVptUri13LTe4r/0hfSRSIgfnDhbUFye5vufsThNpcfwCrFtiyyBKyF2+H0TgPviBpeWQWJsPjeWAwc4Segp6iMGmj1QcrvYJBHIMmg4nse74kDqQIy6Prfropz6FJUktiunUyjs/S+GfN6A7FcjajL36JiHNbJqD381GwcTgyOtoF02hTF69daBexYzq0h9uhyJ92gD3LYOBm9GSE6y11fe+4GCjuYyh3wpFkVhjSQg3igi/2jgBTXu8K6P0aoAN7UmKjfO0CtTTEwXc5pbxMrIHzKrLUOt4m9pFd1TZG1xeL2Ea3TwuwI4zqiXLhZFvmv7cuNUxHSRobRGC2MRDG9ZTyoI/B9UuDLp2r9+lDEYeZ9W+MCS4o0kstOBrmxbj06qAPBwJOS1ZmpX8hCcPWhMe0Hg X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 031e5f55-c4d9-4409-89df-08d4966baed3 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(8251501002)(2017030254075)(201703131423075)(201703031133081); SRVR:BLUPR04MB723; X-Microsoft-Exchange-Diagnostics: 1; BLUPR04MB723; 3:sSOsuI3byk4XlEJBfqLcaHSNF6Q5ZRqppBH+aFZRlw1YRfbcXqnekga+F7jsdtRePwYEkjcGblC6ZyTXC4Bbjtt75Cyd48yu2Vi5yp/guIzw0yoV7/o8eQWYJrKXqsjf8e87I06XUsbmqou9T+sAxx5xSGFgv94TGcrMshsacQvOXw/76erBp7O7bNMjnhskrGmZIdpPqn8c/Oi6O3Aplvg/2o/OLk2LbK1BaLI6klDQInlnhIZSPgPoAYaJ45BL3N2ptFsB+ukaFKI3qZQGBB2tyWnW9tWYix2XLD/+Q01ksNG+NLcScvptZ6VoQY2o02O49V8oLXOdcaGRIAivg6jPJ3iw34RI0v0M/bzaFCFALFXJ4+d/kSTPUbWIxo/zzl3CJsmOnAd4IaSlJZiETJ0JqsDmdkofQ7D/tWh5SW3yOncFtpgQm8d4xV7QITUFnJvtUM9LG/2yUI1NiWVpj1CvExaGo1tAzfu24Xyl3pj7IrI2mRu/J1K89Z3IlgPh X-Microsoft-Exchange-Diagnostics: 1; BLUPR04MB723; 25:eUSO9C24vzd0BIyf6AlHbEbYe7846l4CXHhROhdL7be280/zQ/6cdXcx5mFOcfZWA31WGmH5oJfejjiGX2Oo/3FLIrlgKDXZcw38011CDQC2u3NOqqaZlVgT0SyIxz6POTN00ubzg8ZWl+F9Cnc4gtEnTfSJR/WdhRNHbDfElfeN+m0zHCiSfozx5i+Mh3mUIpzdXhz+m3Gr6jphILK3dncjDZBZnkJM3LaSFEW0tvLQ+gyW8MIRx6ZWlkT2ncvKeX8v7asvNrV+Kt7V5Fvkjm9p48BAYousSwyTP+TxWNYZQx02txfP1YZZGsCtPLIAwHVjdpiSI8Ue/5c4m+6iYEBJWNDf+DB2Q1t5TBX1M0byneuNeHtXlfR5iSf3yrk6hB3msJX5OrJ2RMDTJbt4qpsPkPESlX6jhBAh+EelonKw42YFn+06xUCH5LyI4ABt4GQi447LftFsCBU/poNclQqeinlbrMNqke4G1418uo8=; 31:J18+76hZfJ4ydjJh2SWotcOerO8OzNnK0DfDvYmGqpuvZ9inOjHXVCUlnHN9x7qwu58XWPobQ4ohmA2lf5fSZEKkTeeMAEFNJJydFCd6CYb4x3OYW8RnpQwDFbD8XkqL/nLFiw62StxkL8A6dpt9JPZwYqbiIG2/fDh/X2jiR9wWG44ThhnMDNBerqZ91pdtP+TQ+9JoLecdTLCPlUvMvWB1C6je1a91mssfbTa/yYMxvOzPy8RoltK3BWjqA3nEsr2cVmkxm+hhhDnTqrX1WxHocfWCx7zIQJJQ/UiVc/E= WDCIPOUTBOUND: EOP-TRUE X-Microsoft-Exchange-Diagnostics: 1; BLUPR04MB723; 20:G+qkaf38WHmAQjb1ROFa4Y8oFgFRFC5M3Ua2t7xDVsFjOT9/ZWyZCo6Z1ltZS8XOdob5dVTuWw3X142JuDr0A9IZMQaMt35WbYIDxkny/MsTesGh52e/bLxLcadA4sMUKcMA6xO9y4NpBYx2JjjCZ9h77xpa5YFB3gEcnXVu56niXnXoTX36AiiRDx79e4i7wYR/zEaCbiVshN2JOFgno6xxuoDO6DiNWQqM1Xrvl3BjPbeQ2Hor1dyXs3oPuWUkPBUN3JurhU+rGvW1aWHCgrmELmASYdLiY2CkOQNu7N7C7mzi7pDriVj7Io2Ze8L9cUJ340suci4Sz0weDz8KkuF3Xh/MvacXJyqYY5aEe5WPAjwBws4PUkJUZAEeBERvO2sWCWQORpbvS4DY+QAWSalRxFklao0TLrRrzhiCJAA6263PWIOYgEpAzFmrUNeWyA+xGOQM2SWH/r9XBX4vcdcIltM/J7nvLGGzbgbjwUXj16rYU/aMZjmckxJBo7+h X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(42932892334569); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040450)(601004)(2401047)(5005006)(13016025)(8121501046)(13018025)(10201501046)(3002001)(93006095)(93004095)(6055026)(6041248)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123564025)(20161123560025)(20161123562025)(20161123558100)(6072148); SRVR:BLUPR04MB723; BCL:0; PCL:0; RULEID:; SRVR:BLUPR04MB723; X-Microsoft-Exchange-Diagnostics: 1; BLUPR04MB723; 4:eyw+T8CR+PAqy+jMynwIvvgrpmDMTbzDIWdy+gRikHyO+i+uT4WHG2henijNyIY8HvG+3CdyAa8UWsgiCrURr22CuJ0pdv/s5WYeBsOGey+mnGeUUdeinB0SfbrN4ebgdY4to79sI7xPxWx6EW9Yzo8vX1r10zXYu0K4aMPwttAlFqm3XbY5q79nhpiYiqwIPl7ydVBmuT2DrTsloqvo8VP60lhqowpUQ2AqGg3e8tk4jZPEgT4/S19dXC1aqvgXZCrvLVIztAlcfU6MHnltF3gNiEnP1PAi8U7rz1VFqnPD+6wIAf7aY7mdvbzr97TEkHSJOWTx+ogAsvMKDwcs7qrFxfO9ss5u0BQxSYhr9F9Tfiv1Bt7CJZhkag4jjlXFlvCfoMJsnbjXoTsOknDxwsvzvDtkZETu9Ob3zNT0NhhF/gy0AJqTk6/YQdORPmhQ7NjxW0gt3YHJiQQSGLmta6BwHR7xqGCL8BxEv+POFJ6jmCVm1a6mA3q7mfK41NOi1lAkIzbiuJ7zWcKuB/Q5+GycWteciZfW26VcYuEXpx/DlQ6fffDLAw5clJJh1A86E1sdaNaEa4AQ6TCJ7hMd1sWEAF9dHyj5nZbWouADnAe9ASj8i2b77jeSi2XbWoKiadI4mNUGdvGS+Tf8fK90q1eSBhwftylNmon+ZFxYuvTHWfNvZM3wgfSbbXhv3mMNfhOADh1A26sSAw1CJQwSl9XAfy5YK/YHkXoZ1U/uXfNl265TlOldzBBkNI2tX0Dprppl2pI4EIc/cKUg6qVmOXeKKfHpDDTw+Xr8OpXobXYzvik3QvxY3duksCT6dIUNvxcUevrqM9//PBQbWOx6GHo5tS8nvj6PN6uzNkUdyanKs9ipjuz7/aiJKPc3kuSB X-Forefront-PRVS: 0301360BF5 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BLUPR04MB723; 23:pwjoHsnrEGICLViYsqSupq2b4l6hk+WGap4j+suxZM?= =?us-ascii?Q?zq/bTjtVEMLOYiqxw/vhMHKSW7lYRCybazzbPXceTGK+McQAxSdY+ua9Bpt4?= =?us-ascii?Q?QTu/+HhkotxRNMkY6gcKrny4f+pMei+lBUD41Mja+M/npV9lNnO84cR/nQds?= =?us-ascii?Q?V2ufH4OLM19X7UsiWfLAbojboBpRQ8ZV67+5RzZuTdvadmxfzN7LHuJHRkUa?= =?us-ascii?Q?/1foQeZFneVVD2pbO4ucBtKX2cc8cFjFM8olKf0yd524bIhk5xPuLG+7BSJF?= =?us-ascii?Q?Jhg2KTAHUPj1yrupye5Wnk7skKA/5SznfTca0+iqpYzVknhultQZ/Fy+IAzO?= =?us-ascii?Q?7IGwiYWLiEKPKNWtLoDEip86kSWn/dWoYrXU74H6HMM46ua+1JRFppIjEYTD?= =?us-ascii?Q?V8DX7PXZhMxSzIOBP+84hxP2nobj4uOwlpZ50TfxfwnIPYhISLQvI9QHq+p1?= =?us-ascii?Q?LVMGtbaXtIhHqMG0nS2P1vgqzzEFK8/NYAdiEOtJ8/9pWUamtnXcH+/OXOr5?= =?us-ascii?Q?LYFkMs/DJGe/TVnzZT4wvi6UWPA0rNLi36DUHz/5Z7uThS5FAW89myrlpAPY?= =?us-ascii?Q?d2w6mEgl+65QR5zyV6sE+YcHrQSbcHTTxZBsDKixMuWDICnMF7J1sQu0BW8k?= =?us-ascii?Q?kIvi1TwdZ2ivSfLYc1knFeysRJ45hk8vwKoo7YjoqN561EyqJi9GS1r+hUNU?= =?us-ascii?Q?jdcvj1NBkw1BzMPdxfaGmqu6QAN4ZFVQt1abuM3lWzfR4HsAgpU+kRgt8tDn?= =?us-ascii?Q?ywIverMZVM6EvAqZgaSEtdwIQ85pXdmob+HmF/8SeLM91B8nU1fimvqTCVQd?= =?us-ascii?Q?bfmh+7fnA/huSbLzkGRWPmw6tB2IFjoHY61B0BlMxIIOYeBfVI37SntPofhR?= =?us-ascii?Q?zhZnHhGx1uM5kBUk9KG08/vCzEkYVRJj6ymD8vUASR6Z4nbKPzWGqmBD89Qr?= =?us-ascii?Q?bFs9HodILaSHgg150pcIfACa1zjCSUUAnn/wdQZjLeHIh3uYXGkHwQontBCN?= =?us-ascii?Q?Zw4SBVVVGF4uFAQGQQkEZ7hQNns7p9ZFsUhgyUb3zHxQ=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; BLUPR04MB723; 6:Z715FrGL+n0dj3tx5PLTDGoZ9krXcGzO73KA+rrsZBFE0ENKS8dFbF3lYcnCkKVSJD8pRqLnqq8Sy6aD0axXtmOYvnrf5NUZIqYnvavnGMz42hGs63+8VjZvWlKNRxEY6FHRtP2SuW4oPrWm2Az0tm3N0RXLmNKEZERuE1kngniwzcMHBsXN/0iBjFmUUqBi/7isSoFEMSTZQS/j2uZwVJ35O8nlBptQfN8zhrDWQeZ3XBgWjJS1O6O9I//2nzH0FFBG46Nf9PDYBXXyWb5HTAj59i0uhSXuVUnZjNErqdxcSwdlFCvcbdLXoQ2x1tyfz9LtEpYWctRz+v/RE4WBmiouY9/+q0h+9m2g+JcwUzLSrCMmm6HDwUhtaXQV9jTuhmGH4hLlwn4YZI9jJionH+Zfnks4rzuysY57xae1O8yFHg43hbOy6uOANhPZb5xUc0EqQdv4djZ1m7SWRHa/SXCYnbu/cs9qMeQNxdCFXV1zEJ1GsVY1SrfOeU1CeL41jIC5pJdPD+6H+IfH7IMA82NKLlR7XyO6M1zhKPrIc2I=; 5:etHALgw9oOK8Z4t/jPLztAjU9B/0DwsXumCajhNq6gRjC7hjmwvQlIWquMCUbm5gzswuwj9RejgcdL7HfYwkhNEwvUBIV/BnrknvN5cXW5brQHbL5rdxIfvknKObn50nlMWa5Qc+xeL0+ZrH+dSuBA==; 24:Vg+0jqNc9Dwo7kNRsblRzBdULaN36WwLe5nfZ8S0InqNidy0ncUI1hzypmGEteyWZol7pUdWunZGlBOPpTDkHl7wBEB+sSjEOCsNqcMGGA4= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BLUPR04MB723; 7:CzryCkmGy1Zj3R9axSlZhk7VBCDHQHni5wbzeq6v+c/eMK1IuEnJpGYpBLzoeOlWxm6zqqN9ZsNwkBolrlogvbhiTraCwlCOZZnKyrxv3Zp9blxHj952pbdRyp/4eM8FOgtgbOeOWPL8XBnyUtXH+STqmSfiUwacWbeoBZ/F1O8eeCePYL5gdIvHomR9BBlhPu+Jv3P6hAWP5mp4dLdiBXQvdX4GuovcDIjUFEKT/88Eohd1/ciNQTuPWp3XHRFpERC6IKsh3u0r79UJ118smbMWMzd3RsFVDgWvydy/m6mPUR/3C1vpscQcsas33PlkZhemRENm0fElxXV/HXaucg==; 20:PWM+7o2UaUFA6BOm+zAfCJlqT/mH8OXCcPDXXo296wS+9VZ3MNmRAIOKXTRmMrReoLQYoHZL0s9N5CEkKab6mMTbV6GqktGTRAtqKjXRAWHpSHSlnBjvHh8JGzA0uZFM0MG7OE1e5KYh1HIBCfSsJjUKhewVkUly8LZwBlg5g7Y= X-OriginatorOrg: sandisk.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 May 2017 23:40:59.9692 (UTC) X-MS-Exchange-CrossTenant-Id: b61c8803-16f3-4c35-9b17-6f65f441df86 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=b61c8803-16f3-4c35-9b17-6f65f441df86; Ip=[63.163.107.225]; Helo=[milsmgep14.sandisk.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BLUPR04MB723 X-Greylist: Sender passed SPF test, Sender IP whitelisted by DNSRBL, ACL 203 matched, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.38]); Mon, 08 May 2017 23:42:48 +0000 (UTC) X-Greylist: inspected by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.38]); Mon, 08 May 2017 23:42:48 +0000 (UTC) for IP:'68.232.143.124' DOMAIN:'[68.232.143.124]' HELO:'esa2.hgst.iphmx.com' FROM:'Bart.VanAssche@sandisk.com' RCPT:'' X-RedHat-NoPTR: 68.232.143.124 has sent a message and has no valid PTR record X-RedHat-Spam-Score: 0.493 (BAYES_50, DCC_REPUT_00_12, DKIM_SIGNED, DKIM_VALID, RCVD_IN_DNSWL_LOW, RDNS_NONE) 68.232.143.124 [68.232.143.124] 68.232.143.124 [68.232.143.124] X-Scanned-By: MIMEDefang 2.78 on 10.5.110.38 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-loop: dm-devel@redhat.com Cc: Bart Van Assche , Damien Le Moal , Christoph Hellwig Subject: [dm-devel] [PATCH v3 06/10] dm: Introduce dm_remap_zone_report() 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-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.29]); Mon, 08 May 2017 23:43:28 +0000 (UTC) X-Virus-Scanned: ClamAV using ClamSMTP From: Damien Le Moal A target driver support zoned block devices and exposing it as such may receive REQ_OP_ZONE_REPORT request for the user to determine the mapped device zone configuration. To process properly such request, the target driver may need to remap the zone descriptors provided in the report reply. The helper function dm_remap_zone_report() does this generically using only the target start offset and length and the start offset within the target device. dm_remap_zone_report() will remap the start sector of all zones reported. If the report includes sequential zones, the write pointer position of these zones will also be remapped. Signed-off-by: Damien Le Moal Reviewed-by: Hannes Reinecke Reviewed-by: Bart Van Assche --- drivers/md/dm.c | 80 +++++++++++++++++++++++++++++++++++++++++++ include/linux/device-mapper.h | 10 ++++++ 2 files changed, 90 insertions(+) diff --git a/drivers/md/dm.c b/drivers/md/dm.c index 023bbc0..df68142 100644 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c @@ -1009,6 +1009,86 @@ void dm_accept_partial_bio(struct bio *bio, unsigned n_sectors) } EXPORT_SYMBOL_GPL(dm_accept_partial_bio); +#ifdef CONFIG_BLK_DEV_ZONED +/* + * The zone descriptors obtained with a zone report indicate + * zone positions within the target device. The zone descriptors + * must be remapped to match their position within the dm device. + * A target may call dm_remap_zone_report after completion of a + * REQ_OP_ZONE_REPORT bio to remap the zone descriptors obtained + * from the target device mapping to the dm device. + */ +void dm_remap_zone_report(struct dm_target *ti, struct bio *bio, sector_t start) +{ + struct dm_target_io *tio = + container_of(bio, struct dm_target_io, clone); + struct bio *report_bio = tio->io->bio; + struct blk_zone_report_hdr *hdr = NULL; + struct blk_zone *zone; + unsigned int nr_rep = 0; + unsigned int ofst; + struct bio_vec bvec; + struct bvec_iter iter; + void *addr; + + if (bio->bi_error) + return; + + /* + * Remap the start sector of the reported zones. For sequential zones, + * also remap the write pointer position. + */ + bio_for_each_segment(bvec, report_bio, iter) { + + addr = kmap_atomic(bvec.bv_page); + + /* Remember the report header in the first page */ + if (!hdr) { + hdr = addr; + ofst = sizeof(struct blk_zone_report_hdr); + } else { + ofst = 0; + } + + /* Set zones start sector */ + while (hdr->nr_zones && ofst < bvec.bv_len) { + zone = addr + ofst; + if (zone->start >= start + ti->len) { + hdr->nr_zones = 0; + break; + } + zone->start = zone->start + ti->begin - start; + if (zone->type != BLK_ZONE_TYPE_CONVENTIONAL) { + if (zone->cond == BLK_ZONE_COND_FULL) + zone->wp = zone->start + zone->len; + else if (zone->cond == BLK_ZONE_COND_EMPTY) + zone->wp = zone->start; + else + zone->wp = zone->wp + ti->begin - start; + } + ofst += sizeof(struct blk_zone); + hdr->nr_zones--; + nr_rep++; + } + + if (addr != hdr) + kunmap_atomic(addr); + + if (!hdr->nr_zones) + break; + + } + + if (hdr) { + hdr->nr_zones = nr_rep; + kunmap_atomic(hdr); + } + + bio_advance(report_bio, report_bio->bi_iter.bi_size); +} +EXPORT_SYMBOL_GPL(dm_remap_zone_report); +#endif + /* * Flush current->bio_list when the target map method blocks. * This fixes deadlocks in snapshot and possibly in other targets. diff --git a/include/linux/device-mapper.h b/include/linux/device-mapper.h index afd25af..3a45254 100644 --- a/include/linux/device-mapper.h +++ b/include/linux/device-mapper.h @@ -450,6 +450,16 @@ struct gendisk *dm_disk(struct mapped_device *md); int dm_suspended(struct dm_target *ti); int dm_noflush_suspending(struct dm_target *ti); void dm_accept_partial_bio(struct bio *bio, unsigned n_sectors); +#ifdef CONFIG_BLK_DEV_ZONED +void dm_remap_zone_report(struct dm_target *ti, struct bio *bio, + sector_t start); +#else +static inline void dm_remap_zone_report(struct dm_target *ti, struct bio *bio, + sector_t start) +{ + bio->bi_error = -ENOTSUPP; +} +#endif union map_info *dm_get_rq_mapinfo(struct request *rq); struct queue_limits *dm_get_queue_limits(struct mapped_device *md);