From patchwork Thu Jun 8 17:33:47 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: 9776163 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 CBF23603B4 for ; Thu, 8 Jun 2017 17:34:35 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id B37762521E for ; Thu, 8 Jun 2017 17:34:35 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id A7F9726E4D; Thu, 8 Jun 2017 17:34:35 +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.9 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3BE3128385 for ; Thu, 8 Jun 2017 17:34:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751413AbdFHReO (ORCPT ); Thu, 8 Jun 2017 13:34:14 -0400 Received: from esa3.hgst.iphmx.com ([216.71.153.141]:44588 "EHLO esa3.hgst.iphmx.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751428AbdFHReH (ORCPT ); Thu, 8 Jun 2017 13:34:07 -0400 X-IronPort-AV: E=Sophos;i="5.39,315,1493654400"; d="scan'208";a="23827509" Received: from mail-co1nam03lp0016.outbound.protection.outlook.com (HELO NAM03-CO1-obe.outbound.protection.outlook.com) ([216.32.181.16]) by ob1.hgst.iphmx.com with ESMTP; 09 Jun 2017 01:34:06 +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=XLSpJ6bU9rloXXj7OOsPMGn0saqCwAuT/jPnKb6nGag=; b=JibkAudJ+SClJbKIVMYJXRbPzMtKhERueE/XoDm3UQGwCBGrz3EznmDL28vTOSJUWdMlZFUEI7o67+AEyjVE055c3M1tSYFdpayAuzhzYMigl91S0wZyqil7jj3f6Iewtd4h3+gouQGoLc5T12fDHeBm/9M/REHb7lt7h3QX5JM= Received: from BN6PR04CA0027.namprd04.prod.outlook.com (10.174.93.144) by BN3PR0401MB1458.namprd04.prod.outlook.com (10.161.210.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1143.10; Thu, 8 Jun 2017 17:34:03 +0000 Received: from SN1NAM04FT056.eop-NAM04.prod.protection.outlook.com (2a01:111:f400:7e4c::204) by BN6PR04CA0027.outlook.office365.com (2603:10b6:405:3b::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1157.12 via Frontend Transport; Thu, 8 Jun 2017 17:34:02 +0000 Authentication-Results: spf=pass (sender IP is 63.163.107.21) smtp.mailfrom=sandisk.com; vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; 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 SN1NAM04FT056.mail.protection.outlook.com (10.152.89.39) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.1143.11 via Frontend Transport; Thu, 8 Jun 2017 17:34:01 +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 CD.59.51736.88A89395; Thu, 8 Jun 2017 10:34:01 -0700 (PDT) Received: from milsmgip12.sandisk.com (10.177.9.6) by MILHUBIP04.sdcorp.global.sandisk.com (10.177.9.97) with Microsoft SMTP Server id 14.3.319.2; Thu, 8 Jun 2017 10:33:58 -0700 X-AuditID: 0ac94369-6dc8f9800000ca18-06-59398a880bcd Received: from exp-402881.sandisk.com.com ( [10.177.9.6]) by (Symantec Messaging Gateway) with SMTP id 7A.E7.18148.68A89395; Thu, 8 Jun 2017 10:33:58 -0700 (PDT) From: Bart Van Assche To: Jens Axboe CC: , Christoph Hellwig , "Bart Van Assche" , Hannes Reinecke , "Omar Sandoval" , Nicholas Bellinger Subject: [PATCH v3 04/12] block: Make most scsi_req_init() calls implicit Date: Thu, 8 Jun 2017 10:33:47 -0700 Message-ID: <20170608173355.25898-5-bart.vanassche@sandisk.com> X-Mailer: git-send-email 2.12.2 In-Reply-To: <20170608173355.25898-1-bart.vanassche@sandisk.com> References: <20170608173355.25898-1-bart.vanassche@sandisk.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrOLMWRmVeSWpSXmKPExsXCddJ5kW5nl2WkwfUOJovVd/vZLBa82ctm sXL1USaLvbe0LdpWn2G0OHzvKosDm8fE5nfsHpfPlnrc336EyWP3zQY2j/VbrrJ4fN4kF8AW xWWTkpqTWZZapG+XwJXRd2ozS8Gc6ood696xNzA+SO1i5OSQEDCReD1rDWMXIxeHkMBSJon+ KV3sIAkhga2MEtcPx8IUXV3dwQoRX84ocW6tNYjNJmAk8e39TBYQW0RAQaLn90o2kEHMAveA ah48ZgJJCAt4SvTOfAPWzCKgInHtziqwOK+AvcT2aYcZIRbIS5zdspMZxOYUcJC4tnMJG8Qy e4m9Dd/ZIGoWsUo0HDaH6BWUODnzCdhiZgEJiYMvXjBD1KtLnFwyn2kCo9AsJGWzkJQtYGRa xSiWm5lTnJueWmBoqlecmJeSWZytl5yfu4kREvyZOxjvPvE+xCjAwajEw5sQYRkpxJpYVlyZ e4hRgoNZSYT3qAFQiDclsbIqtSg/vqg0J7X4EKM0B4uSOO85makRQgLpiSWp2ampBalFMFkm Dk6pBsbqQ0sZfn43Duo1XinftfLWvBPPF6/aVnFps0y30LXonPLIv54efYmedSx8DGfeaJ3M Cn0dHqQv+DvlRadRzVmncuGm4Fz2lXEhpvFKf+p/d1kUn3yRa5/2YMedmSc0FnNOXXmAL2TF pZPtzV+WsbT4q03QvrRFTfOQcfFRPgk9nWCP4Hee6UosxRmJhlrMRcWJABpK5mp6AgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrJJMWRmVeSWpSXmKPExsXCtZGTTbetyzLS4M5FQ4vVd/vZLA7+bGO0 WPBmL5vFytVHmSz23tK2aFt9htHi8L2rLA7sHhOb37F7XD5b6nF/+xEmj903G9g8pq05z+Sx fstVFo/Pm+QC2KO4bFJSczLLUov07RK4MvpObWYpmFNdsWPdO/YGxgepXYycHBICJhJXV3ew djFycQgJLGWUuHLiCQtIgk3ASOLb+5lgtoiAgkTP75VsIEXMAo8YJU6u3csOkhAW8JTonfmG FcRmEVCV+DW3BayBV8BeYtaSRWwQG+Qlzm7ZyQxicwo4SFzbuQQsLgRUs7fhO9sERu4FjAyr GMVyM3OKc9MzCwyN9IoT81Iyi7P1kvNzNzFCAidqB+P1ieaHGJk4OKUaGBfdl4pl7JlcLjPp l3OdjIr/9pk3pn+9LfTqytSbn+SZvvQmSl3I313IfklY4qwrh9Ph6WfX88eUe9XNNns2mTXR Ys56BVHHjf1/8489mnronoWniMgFj+DJHw75FffoPihX5+F4eGbxS/27+t9aVtdb/bRtKp90 Qm3tr/R7jMmqjGskcrZl1SqxFGckGmoxFxUnAgB/cSkSzAEAAA== MIME-Version: 1.0 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:(10019020)(6009001)(39840400002)(39450400003)(39410400002)(39400400002)(39850400002)(2980300002)(438002)(199003)(189002)(9170700003)(48376002)(86362001)(575784001)(5003940100001)(5660300001)(356003)(54906002)(77096006)(189998001)(4326008)(305945005)(1076002)(36756003)(8676002)(50226002)(53936002)(81166006)(8936002)(478600001)(2950100002)(6916009)(6666003)(50986999)(76176999)(38730400002)(33646002)(110136004)(72206003)(47776003)(2906002); DIR:OUT; SFP:1102; SCL:1; SRVR:BN3PR0401MB1458; H:milsmgep15.sandisk.com; FPR:; SPF:Pass; MLV:sfv; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; SN1NAM04FT056; 1:z7kfPsJYOXpM96nzsVGGTW7MSUwIgqlEaNIvzH3F0ze2NsadISX3gNAHMyxksEav1bK8lPAapGPnMcGK6i0LrsKchHrYskf3h9nsdVQZT9qyOqf+usOXiPkxUqtqhWdyf588ge+kkLHbHYw2Sp7jRK30+JKpRX3D4XyHC/QJySE+efuEtZQrXsrF23otHwiFJEvRPLjsvgr1zu7q2SyZwqA1Qcgb9qXQSGD/BPV/rPUVpx6U67b8V3STxUZXxag9m9eGdsJCyYE5NeVPa0AGRnoXcuJZYVqSbg7cMNnvGHsh5vQR3VzpxDe+LzBeLUWomMMAmkPmEyO8ITRvbdcB3SsJI/ghP1mMfmqENLnVtk7P8TqElHXbp4+DfyKi/8jDZqUPi23xOwSlkuCztFEAHnOMgckgeUuNK2aA+VcdqW7X7Luyj7oeksYp+VuEYQr0imQJnTT3dBNGeC0TBQCBsyipPiEPLQqH+X4yl+Fyr3nH3SA2t0H6G3W65yu5oP1+HNblTH7wTdwyK9y/uHzLNTo+9Tmv+T53+goVDTVD48h+kjbGIQLM8axcjxRLFKqf X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BN3PR0401MB1458: X-MS-Office365-Filtering-Correlation-Id: eaf8a085-bd64-4bf1-c85a-08d4ae948ded X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(8251501002)(2017030254075)(201703131423075)(201703031133081); SRVR:BN3PR0401MB1458; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0401MB1458; 3:GrBLE25GudFrDpCcO3LszC21HcXa6bGmcNuYbxOBs5ySuJX2obqOKAA6ukR22cHTF3IJurkldrxr1z6MtSaDNVM41WncddXphhuYcuX10yXyN7a0D5wRZOmIsoROHMeVATEVtMh4woENKB6ONCddmr0gFWXooY9syqHx/CqJ7pJ4Al/IDu3nsQueAoHtBiL5a5/GQ8f1BIl/rPPjOhrs47XtC0spFdhWhc8ChuLCaz1J1pJJxNO9feC2PnGVad6mnARhdzkgX1Ws00xAvIEW5+0OjKawxsGxZrpv/rbqJzomeXlHasVkWrNWIiuNFvCFQZ1wEpEjS4qPtLJ+3S3rIKV9Yb8eW0wL715YV+AxpVk9MrJk73OabPL6Cu3oJjs0DyBi/XUlB1UlHzUdhg7Y7nt340alqaStCInRrsQvQOCR+N+dv4Sqqd34WLFVqkBtnFCzu+83tvf5jUJVX/IyYYuaChRisFZtHbuQANw16zq/fJdbX2qfIUYmNJHr1H7s X-Microsoft-Exchange-Diagnostics: 1; BN3PR0401MB1458; 25:7+G6roGN6afNkbC806ymggCsj1PDJuitDVrUwqyDH7l4iHgjJ0OvebTNSC8/0ILFkOu5s+Z6ZjNcHEd8XRyegx3l85PmxojSyiSCIxVOkTRLcUopbphL0zgvsmqqg0oz/IFIIOjjPHKD2x/Y8uGxMuKyVG6i3BHvZjWFWRiWrceYjrs21SCFnV2oX46V3KruqGcxwadmposEEKM2o1Hjdb1ozGWGcbR+wZZo6AOr9NzFepbXO3WuSFqUChW9abmPfX9+ZOYzx4IE1Se9WiZyHjmfBMXaMDriwVFPDgqdeKSLEv71lg9b+dU3ZfSjmbK1G2MB3FPzmJhwt6U73lW3hjxjv0Hwf8uPIMSj4dnOzG9qa95jvqVhj2FbiAs1nWSpR6/jdzvi2gtlV3gGkobqgPGvqiMbjQ6aV9G0XQ0a+XjlJRta9oG36oGRoAgR5gWeDdsTVf+vNDOruH+PjbqqEBr9gzFt3R0Aep4Lgk2Clgc=; 31:hh+J9D9WQxTCb/fhVOFbTH4AwHLzEC23y8td21p61+q35U2EYWziDAXwh88c2+O0XSBTR+TjSKWXJNsSDoHbqBZB9gH2IGF4RWrIHRFSOTxFssx/7tl4qCHAzh6f9tdysUjWryeXW06o7LfVvhZm5UjXBYUDLDwNRorB1lrsH+pZQcgFm0fbCJgvWWT3HBgm0S8DG4sHEnlMN8n1KFioNXyBJx0l6IrfdXokEMSJnopWrzv3jGBPRWICSlEsM4QU7FvIMn6haEc4955F7k8NVA== WDCIPOUTBOUND: EOP-TRUE X-Microsoft-Exchange-Diagnostics: 1; BN3PR0401MB1458; 20:PR5VaIM7f/QR4kUC2GOtRkDabkAm3gbmE1NYMwLhzQ4ylWM/b/nCcBBJHjMCA1kWntAHd4rEf6317alDfVl7AmzHIfAoRTnboZarRH1crg2AKS10Rtw3piXHMfRXZyvmlZE+7QxNPxyxX+xvVsiF5FDoW1ux8xO2RccUFEHOuqYaAeLBHRm37y6u617vzB+allbeG/Mc9TRqkvjw8ckDjO+8pm0oiQcU5ryxAuawF2XmO0tYupD5fbk2uvU14PEtmMw4Bc4hAJEvORzcwUTjQ3sXfPYrAMrqkspw4TJttlC7xwz/iMJuTZgAPAjBwCzYqS3ScZv9cvD2iburG7QxH03EHDN9sr3uaaSGXJLMgyeezlooBcrZ77uT5hcMWPEw5Z3/9O6/fJSdE8bEDalKw31IepsskmL6/JNIcJM5n2m+3jEUhADNBwv7o1W/sP8UBT7N85fJFMKX5p+WhY7IEfOYffA494GzDj7opZLud4hKbcdiFVzWAl5TnS0ywOyb X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(67672495146484)(42932892334569)(17755550239193); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(13018025)(13016025)(100000703101)(100105400095)(10201501046)(3002001)(93006095)(93004095)(6055026)(6041248)(20161123564025)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123558100)(20161123555025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:BN3PR0401MB1458; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:BN3PR0401MB1458; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR0401MB1458; 4:23ACv8XawODnvksdE6xzhY6OBu8YeiZv2FVDF0kU?= =?us-ascii?Q?TlUNwMiSXc3e1T/ehyKofgfECGksxjbnGmbpxtoFK8onKBjlwYTR2m76rSp/?= =?us-ascii?Q?XfPZguDSGQOno1hpWAj1jAxQXc2Esdu1lWWk1sVTVH/3s9fvMEkClHORbOOC?= =?us-ascii?Q?mXIIPzqP9Otu++GgshEdRqtwnDyPvksyxqpfarPLIGNcNe1ImZ/Yqx8GdxBU?= =?us-ascii?Q?wFSZO0N8OE5Vu4Omrr3jWjt7Mp5vB6a3BoAqalIxnz/vfx8IEBU3ri03N/X0?= =?us-ascii?Q?o1ogaaCJVkIDV/tgovSiR2N7yQjGX9+MQB2TN7VqiTESDXhpOcYDfM5LddP4?= =?us-ascii?Q?b2N5Stp4O+c2Vj8Hus/UD+rrA7rcUu8JW0nU0P+MkAMNbPu02JOFK91COlHx?= =?us-ascii?Q?z3izl7tJR7G9bWOQMABd8iJensxMFy/yFTR7sIIqGTgNu8T3XT1+/c+/H8ai?= =?us-ascii?Q?qgLsdgfQIR9/hHqWzEGRTmyjp39PghJ18wWAFwQ9fgEb82fynjgGlvbPVqR9?= =?us-ascii?Q?lPchY9pHV+JEKe30yW5l1H8APjst9Fld/lo0oIzwThEG9rrlkjAo80mwaUfR?= =?us-ascii?Q?BBu2nWcMnNNICk+igdgqrz81Q+xxdQvimu4amn+GBXeEKYyMz5QrEk04IspP?= =?us-ascii?Q?kT6Ma2JOekbelbOG/OFK/dIDNII3PX1rOq9YQRSPT8KmMXLGSxVNDlMoMlsw?= =?us-ascii?Q?qEZcWywPaLnHipLQV7JehetM21Y2Os2cQNc170EKaMrZn0oCoF0+NxYnAx1G?= =?us-ascii?Q?rJczahjWQYvUVdqPgutBNn1NZOSTgVVkGQig6p7Fu5f7E3/ZP4RH8qaxjhYq?= =?us-ascii?Q?6/CDXab3EYp0eTMFh4EjHvhYDI3/+A6vNcaY5okYAB4uF8Q1QXMWqNnJLt4m?= =?us-ascii?Q?5bnzUZFBcPDjJQQVR3AafiIfTzZ3FFJwDcnYKhMF9GntMYhYf8zk9o7uB6uO?= =?us-ascii?Q?YDYxwWgzLAyLjObfXF1IwF6uRpbDvcwrC02/dD9WmC5lKs71yheXA9jd+di+?= =?us-ascii?Q?YTPW3oV8WzGYrMsjShZeo9tCc3BrS29yZ9GyJ6fZFDiGhaU1lq0cCwv7f/Vs?= =?us-ascii?Q?kv5UI2+87hr+riAcxBT2/ayZpKTiwILUTLQJveRAT0c3RH/hhiBkNct3DUj4?= =?us-ascii?Q?G+x37YVQ2ZTJlgQvZtfOeGzhLiOgiJp26FZ/F/hbTLw36ArWPLLVxG7FAB4j?= =?us-ascii?Q?u66cQemEj4A7ILfEmt0b4BvmT+z0GJ7eHrepVSRV5aLDP5RMT1/iUSOWyfsy?= =?us-ascii?Q?1Dy2wWmtYHVUfC5YA76q31gDeec1tAWWeQbQR8VaHpq/bkus4aM3aGQQscHJ?= =?us-ascii?Q?5THym2vx0WiuTuyDqppH+WM=3D?= X-Forefront-PRVS: 0332AACBC3 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR0401MB1458; 23:LPLue5WxfX/k5a6NJlqqL8GkubQ73BbuFpji7Xl?= =?us-ascii?Q?KbayJ6J29YbqbRVWppyy4AGrTiqlBKDqtrRqMsfjcTsanQst/u7cH/AofUiy?= =?us-ascii?Q?A5hV4AcuTgJT4n344N79tukjkaRIhZs09LWbq/HzpuQtJtMw1I+hH0F/DwKX?= =?us-ascii?Q?6WAk+fXqLqIxAFZM/XdKUcGvwNNsyoBtI4gzFzxoED+onl01E/7dPFflIVzr?= =?us-ascii?Q?TRmGIKyzCY+V+tl7htu3GTs6dOaJVlRaR2fP/6kmQqWQhGxLXX6bis1/z/q9?= =?us-ascii?Q?pnG5p0ngZco8Xx86MIyZjV+hWkjRfG6PNs/2JLArVxwnJNA86wi9bIuHFbGD?= =?us-ascii?Q?8M1xOhFdproMIj9cfR05cYEJF9WxwHZieZ9HsVlW/GiC0uW3V0ZQzEGbJXvI?= =?us-ascii?Q?Ip/tJfQnLYxlRMBx+sRlRmaDXmDDW0a21TKrlsOwq0vBkUF7f7HWog2o3Iqz?= =?us-ascii?Q?7KsWicm9cVLH7oVRrWdKIDjEvCv0X19BFyun6Z7D1TfrFnF64XCQ6gTcTqJF?= =?us-ascii?Q?bdWMUVDeWQQV8h75EOwGa31E7REe62BRaVXhM4RcnJwJx3AD1J0bO9OuFoSB?= =?us-ascii?Q?1QzVePaDzIJlt0EtOITG6MK2ZulzfS0avNX6osbrZc06w/H0rOijRll9ZaqW?= =?us-ascii?Q?vUI7R7pF0XgJqIWLtr+RhLid8wxGVe8pUKYd39y53j/8/BTj/KricFAOspGE?= =?us-ascii?Q?Cf0hEtcyvLJvbdEcIp5uA68Mqn92EL2GOolzJ4kjasXkwHXbPW8Q/IMM80wM?= =?us-ascii?Q?S3hmccHT9SFEEzRwCnevUbE3Im4wPQs2PKhGR5zZePZm71b91VxNTh/1STz5?= =?us-ascii?Q?lGTUx0xkDtPi87HUlUH1HXD2OijwRyXQHVQj8lqdOQS1Qzgug3MD/9Ir0Id4?= =?us-ascii?Q?oyUt08K/1QftPePsyskINr1fgjlEfdyYYMe+D+pNnE7zDef9lqIgQI1GQNqz?= =?us-ascii?Q?ObKJ/dnibrqXo9oxTLS0TreqC4xMHI7lsxUkD/oIQMyVvGAFTevefzE4/UGv?= =?us-ascii?Q?X/wivfabe+WumJIlcsDmqhsm01eXpBv00ND/tF1A3puqNNQ=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; BN3PR0401MB1458; 6:UskuKQYzRewhUqDRA6PkQP15IYDGIUEuJRwBQZPDibvFx3lfyEg1Psar1a9+UCqpl0ofb4l29xNcD3TNx4jNzGgsOsylmx2yWi8zmGmrOxvC6Abpwl0EzKFwhgwXgwynVDsHz0cyrfsF0ggYPjjI8FOzrRADBfLAbNYlENt2iwgG7u9p1oFx/ww2exuSBWZgdoT/3Bq3gwvfEoAa7hFECqkGSufNuXgXyaIfnkmq2fytz0absl20nnC/UBoZMvPOstgtHDf+HXqRHCzvM/s5p90EJt1JN/VRJCGysQVC9LqS7bW682DtRW08mRcbxRWpBd92QEpBAjvLf9QTJitGexj4pWJvtB9rOo6k7P0zFQgWAdP4pM/nPZ8401lvrNV6tshd2YaZJ7bJ4Ma20VQbmmw8ghPJI5GEB+j7lN0SvPUF0WaNPzlzNYWjFgPH9RUhs43avvzh6YHVjqcKhG1JTxCSQd6Gy74KOfyi8Ij7PGZZu0v1q32Dkc7Vsfc46FIH+ZCg3WupoQ139eziavL7LA/U/pO9Yvo1sxwdUPPViJw= X-Microsoft-Exchange-Diagnostics: 1; BN3PR0401MB1458; 5:0xDhixNWZY7if/0yz8pfHM8K5QOB2Sw4W6cQDXmz6ctqE291wKP0NNA1nyvOKpcI81FJrUPcHSVmOXp4aalHC9lUmRpQzfb0MMekA+mxJQgvrvsRJzsgzwrA8JJAjonArFR5raNYcRfMlLAbFKOpO5CZp3YUOfeD2MFr1bUR5RcqP3BOBunAkZi+/qStKxMEpmq64K35uAPWbvITs/5seNEg0p6oCaqAgar67xXckVGYYfhJSp2Iz+3KhW0yHR8jcd50ey/Kwv+sMHF4P12CaR9Q+RZvIdGwZzF+pCKzimfrmwMEBFWp+ia7LmfyBqxhABkEhKF1DPfC/XCRhl7UaYqaSqjQk15KJFzlEIkPM9CEXm/j8NFxGHiVucPG3gym22IglFdC9CQyuiMcDfdiK2IxZSEoxc2TDLNQvNXweXQAOiXCBEv9BgKaY12V80TOTpWIIaqDG8+5MhLH+rL2to1JatWoSBLoWYuoHiAx6So08rVJFU05qAm3UGQwA6NE; 24:1Wbo0sobyNxMdnVt4BFVvbEXId7pSCwkAVIUB0+cXiO2oVYItjWRWG3i0tgowoInvsZpHu3jZASNrM9xziNixrXNiCJLcSIX8jxle3NyuU4= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN3PR0401MB1458; 7:c/bf3SjIt4E7ZLa82aknv6Nl7BdByaZWigRlknYuXJyyoaibfUalGp3dBE3YGa800mp/7i58ww4bjFHHN3QFmGTYGgj2nrF4mMvgfiptOQwOImHEmF3PFpu6OdP0SK76zCmTyRZtUl1SUvgzNOb+PjQmeljJlqxCwMF4GAEpteXcERU5jnYIfGZhVr3p5ghlBUzcX/xsN4c7qcdRA1UraxdFDCulwVzB6Yyx0Q8zYcPSBk/bUaUfd6IV1BvFBS1a5GhtUnOkJBKCz5hdVYiC9aeN3Ss+npUeZi0kOIaFXPRb0LhEVozLcZ+yqbx0+zKdEoBObtWIhTzDlN6lQK4ZBw==; 20:pvFkqvKXnjKObibkM2qNU2PoWsUHyZiv+KnWq1Jq2ydn6d/uSJFSc+6ixCEmEeHYV0dSqZeNjie1611YVFoMY9ynxMcsHWyJH5smro4+pXyBesfGgRsILD/Hv3Sh5pTWrIkf3P8ud+iqAxbAkkJuxX/HapmmW7mGuW6B9YRKBB0= X-OriginatorOrg: sandisk.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2017 17:34:01.9552 (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.21]; Helo=[milsmgep15.sandisk.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0401MB1458 Sender: linux-block-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-block@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Instead of explicitly calling scsi_req_init() after blk_get_request(), call that function from inside blk_get_request(). Add an .initialize_rq_fn() callback function to the block drivers that need it. Merge the IDE .init_rq_fn() function into .initialize_rq_fn() because it is too small to keep it as a separate function. Keep the scsi_req_init() call in ide_prep_sense() because it follows a blk_rq_init() call. References: commit 82ed4db499b8 ("block: split scsi_request out of struct request") Signed-off-by: Bart Van Assche Reviewed-by: Christoph Hellwig Cc: Hannes Reinecke Cc: Omar Sandoval Cc: Nicholas Bellinger --- block/bsg.c | 1 - block/scsi_ioctl.c | 3 --- drivers/block/pktcdvd.c | 1 - drivers/cdrom/cdrom.c | 1 - drivers/ide/ide-atapi.c | 1 - drivers/ide/ide-cd.c | 1 - drivers/ide/ide-cd_ioctl.c | 1 - drivers/ide/ide-devsets.c | 1 - drivers/ide/ide-disk.c | 1 - drivers/ide/ide-ioctls.c | 2 -- drivers/ide/ide-park.c | 2 -- drivers/ide/ide-pm.c | 2 -- drivers/ide/ide-probe.c | 6 +++--- drivers/ide/ide-tape.c | 1 - drivers/ide/ide-taskfile.c | 1 - drivers/scsi/osd/osd_initiator.c | 2 -- drivers/scsi/osst.c | 1 - drivers/scsi/scsi_error.c | 1 - drivers/scsi/scsi_lib.c | 10 +++++++++- drivers/scsi/scsi_transport_sas.c | 6 ++++++ drivers/scsi/sg.c | 2 -- drivers/scsi/st.c | 1 - drivers/target/target_core_pscsi.c | 2 -- fs/nfsd/blocklayout.c | 1 - 24 files changed, 18 insertions(+), 33 deletions(-) diff --git a/block/bsg.c b/block/bsg.c index 40db8ff4c618..84ec1b19d516 100644 --- a/block/bsg.c +++ b/block/bsg.c @@ -236,7 +236,6 @@ bsg_map_hdr(struct bsg_device *bd, struct sg_io_v4 *hdr, fmode_t has_write_perm) rq = blk_get_request(q, op, GFP_KERNEL); if (IS_ERR(rq)) return rq; - scsi_req_init(rq); ret = blk_fill_sgv4_hdr_rq(q, rq, hdr, bd, has_write_perm); if (ret) diff --git a/block/scsi_ioctl.c b/block/scsi_ioctl.c index 4a294a5f7fab..f96c51f5df40 100644 --- a/block/scsi_ioctl.c +++ b/block/scsi_ioctl.c @@ -326,7 +326,6 @@ static int sg_io(struct request_queue *q, struct gendisk *bd_disk, if (IS_ERR(rq)) return PTR_ERR(rq); req = scsi_req(rq); - scsi_req_init(rq); if (hdr->cmd_len > BLK_MAX_CDB) { req->cmd = kzalloc(hdr->cmd_len, GFP_KERNEL); @@ -456,7 +455,6 @@ int sg_scsi_ioctl(struct request_queue *q, struct gendisk *disk, fmode_t mode, goto error_free_buffer; } req = scsi_req(rq); - scsi_req_init(rq); cmdlen = COMMAND_SIZE(opcode); @@ -542,7 +540,6 @@ static int __blk_send_generic(struct request_queue *q, struct gendisk *bd_disk, rq = blk_get_request(q, REQ_OP_SCSI_OUT, __GFP_RECLAIM); if (IS_ERR(rq)) return PTR_ERR(rq); - scsi_req_init(rq); rq->timeout = BLK_DEFAULT_SG_TIMEOUT; scsi_req(rq)->cmd[0] = cmd; scsi_req(rq)->cmd[4] = data; diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c index 42e3c880a8a5..2ea332c9438a 100644 --- a/drivers/block/pktcdvd.c +++ b/drivers/block/pktcdvd.c @@ -707,7 +707,6 @@ static int pkt_generic_packet(struct pktcdvd_device *pd, struct packet_command * REQ_OP_SCSI_OUT : REQ_OP_SCSI_IN, __GFP_RECLAIM); if (IS_ERR(rq)) return PTR_ERR(rq); - scsi_req_init(rq); if (cgc->buflen) { ret = blk_rq_map_kern(q, rq, cgc->buffer, cgc->buflen, diff --git a/drivers/cdrom/cdrom.c b/drivers/cdrom/cdrom.c index ff19cfc587f0..e36d160c458f 100644 --- a/drivers/cdrom/cdrom.c +++ b/drivers/cdrom/cdrom.c @@ -2201,7 +2201,6 @@ static int cdrom_read_cdda_bpc(struct cdrom_device_info *cdi, __u8 __user *ubuf, break; } req = scsi_req(rq); - scsi_req_init(rq); ret = blk_rq_map_user(q, rq, NULL, ubuf, len, GFP_KERNEL); if (ret) { diff --git a/drivers/ide/ide-atapi.c b/drivers/ide/ide-atapi.c index 5901937284e7..98e78b520417 100644 --- a/drivers/ide/ide-atapi.c +++ b/drivers/ide/ide-atapi.c @@ -93,7 +93,6 @@ int ide_queue_pc_tail(ide_drive_t *drive, struct gendisk *disk, int error; rq = blk_get_request(drive->queue, REQ_OP_DRV_IN, __GFP_RECLAIM); - scsi_req_init(rq); ide_req(rq)->type = ATA_PRIV_MISC; rq->special = (char *)pc; diff --git a/drivers/ide/ide-cd.c b/drivers/ide/ide-cd.c index 07e5ff3a64c3..a14ccb34c923 100644 --- a/drivers/ide/ide-cd.c +++ b/drivers/ide/ide-cd.c @@ -438,7 +438,6 @@ int ide_cd_queue_pc(ide_drive_t *drive, const unsigned char *cmd, rq = blk_get_request(drive->queue, write ? REQ_OP_DRV_OUT : REQ_OP_DRV_IN, __GFP_RECLAIM); - scsi_req_init(rq); memcpy(scsi_req(rq)->cmd, cmd, BLK_MAX_CDB); ide_req(rq)->type = ATA_PRIV_PC; rq->rq_flags |= rq_flags; diff --git a/drivers/ide/ide-cd_ioctl.c b/drivers/ide/ide-cd_ioctl.c index 55cd736c39c6..9d26c9737e21 100644 --- a/drivers/ide/ide-cd_ioctl.c +++ b/drivers/ide/ide-cd_ioctl.c @@ -304,7 +304,6 @@ int ide_cdrom_reset(struct cdrom_device_info *cdi) int ret; rq = blk_get_request(drive->queue, REQ_OP_DRV_IN, __GFP_RECLAIM); - scsi_req_init(rq); ide_req(rq)->type = ATA_PRIV_MISC; rq->rq_flags = RQF_QUIET; blk_execute_rq(drive->queue, cd->disk, rq, 0); diff --git a/drivers/ide/ide-devsets.c b/drivers/ide/ide-devsets.c index 9b69c32ee560..ef7c8c43a380 100644 --- a/drivers/ide/ide-devsets.c +++ b/drivers/ide/ide-devsets.c @@ -166,7 +166,6 @@ int ide_devset_execute(ide_drive_t *drive, const struct ide_devset *setting, return setting->set(drive, arg); rq = blk_get_request(q, REQ_OP_DRV_IN, __GFP_RECLAIM); - scsi_req_init(rq); ide_req(rq)->type = ATA_PRIV_MISC; scsi_req(rq)->cmd_len = 5; scsi_req(rq)->cmd[0] = REQ_DEVSET_EXEC; diff --git a/drivers/ide/ide-disk.c b/drivers/ide/ide-disk.c index 7c06237f3479..241983da5fc4 100644 --- a/drivers/ide/ide-disk.c +++ b/drivers/ide/ide-disk.c @@ -478,7 +478,6 @@ static int set_multcount(ide_drive_t *drive, int arg) return -EBUSY; rq = blk_get_request(drive->queue, REQ_OP_DRV_IN, __GFP_RECLAIM); - scsi_req_init(rq); ide_req(rq)->type = ATA_PRIV_TASKFILE; drive->mult_req = arg; diff --git a/drivers/ide/ide-ioctls.c b/drivers/ide/ide-ioctls.c index 8c0d17297a7a..3661abb16a5f 100644 --- a/drivers/ide/ide-ioctls.c +++ b/drivers/ide/ide-ioctls.c @@ -126,7 +126,6 @@ static int ide_cmd_ioctl(ide_drive_t *drive, unsigned long arg) struct request *rq; rq = blk_get_request(drive->queue, REQ_OP_DRV_IN, __GFP_RECLAIM); - scsi_req_init(rq); ide_req(rq)->type = ATA_PRIV_TASKFILE; blk_execute_rq(drive->queue, NULL, rq, 0); err = scsi_req(rq)->result ? -EIO : 0; @@ -224,7 +223,6 @@ static int generic_drive_reset(ide_drive_t *drive) int ret = 0; rq = blk_get_request(drive->queue, REQ_OP_DRV_IN, __GFP_RECLAIM); - scsi_req_init(rq); ide_req(rq)->type = ATA_PRIV_MISC; scsi_req(rq)->cmd_len = 1; scsi_req(rq)->cmd[0] = REQ_DRIVE_RESET; diff --git a/drivers/ide/ide-park.c b/drivers/ide/ide-park.c index 94e3107f59b9..1f264d5d3f3f 100644 --- a/drivers/ide/ide-park.c +++ b/drivers/ide/ide-park.c @@ -32,7 +32,6 @@ static void issue_park_cmd(ide_drive_t *drive, unsigned long timeout) spin_unlock_irq(&hwif->lock); rq = blk_get_request(q, REQ_OP_DRV_IN, __GFP_RECLAIM); - scsi_req_init(rq); scsi_req(rq)->cmd[0] = REQ_PARK_HEADS; scsi_req(rq)->cmd_len = 1; ide_req(rq)->type = ATA_PRIV_MISC; @@ -48,7 +47,6 @@ static void issue_park_cmd(ide_drive_t *drive, unsigned long timeout) * timeout has expired, so power management will be reenabled. */ rq = blk_get_request(q, REQ_OP_DRV_IN, GFP_NOWAIT); - scsi_req_init(rq); if (IS_ERR(rq)) goto out; diff --git a/drivers/ide/ide-pm.c b/drivers/ide/ide-pm.c index 0977fc1f40ce..cfe3c2d7db7f 100644 --- a/drivers/ide/ide-pm.c +++ b/drivers/ide/ide-pm.c @@ -19,7 +19,6 @@ int generic_ide_suspend(struct device *dev, pm_message_t mesg) memset(&rqpm, 0, sizeof(rqpm)); rq = blk_get_request(drive->queue, REQ_OP_DRV_IN, __GFP_RECLAIM); - scsi_req_init(rq); ide_req(rq)->type = ATA_PRIV_PM_SUSPEND; rq->special = &rqpm; rqpm.pm_step = IDE_PM_START_SUSPEND; @@ -91,7 +90,6 @@ int generic_ide_resume(struct device *dev) memset(&rqpm, 0, sizeof(rqpm)); rq = blk_get_request(drive->queue, REQ_OP_DRV_IN, __GFP_RECLAIM); - scsi_req_init(rq); ide_req(rq)->type = ATA_PRIV_PM_RESUME; rq->rq_flags |= RQF_PREEMPT; rq->special = &rqpm; diff --git a/drivers/ide/ide-probe.c b/drivers/ide/ide-probe.c index b3f85250dea9..c60e5ffc9231 100644 --- a/drivers/ide/ide-probe.c +++ b/drivers/ide/ide-probe.c @@ -741,12 +741,12 @@ static void ide_port_tune_devices(ide_hwif_t *hwif) } } -static int ide_init_rq(struct request_queue *q, struct request *rq, gfp_t gfp) +static void ide_initialize_rq(struct request *rq) { struct ide_request *req = blk_mq_rq_to_pdu(rq); + scsi_req_init(rq); req->sreq.sense = req->sense; - return 0; } /* @@ -771,7 +771,7 @@ static int ide_init_queue(ide_drive_t *drive) return 1; q->request_fn = do_ide_request; - q->init_rq_fn = ide_init_rq; + q->initialize_rq_fn = ide_initialize_rq; q->cmd_size = sizeof(struct ide_request); queue_flag_set_unlocked(QUEUE_FLAG_SCSI_PASSTHROUGH, q); if (blk_init_allocated_queue(q) < 0) { diff --git a/drivers/ide/ide-tape.c b/drivers/ide/ide-tape.c index a0651f948b76..370fd39dce94 100644 --- a/drivers/ide/ide-tape.c +++ b/drivers/ide/ide-tape.c @@ -855,7 +855,6 @@ static int idetape_queue_rw_tail(ide_drive_t *drive, int cmd, int size) BUG_ON(size < 0 || size % tape->blk_size); rq = blk_get_request(drive->queue, REQ_OP_DRV_IN, __GFP_RECLAIM); - scsi_req_init(rq); ide_req(rq)->type = ATA_PRIV_MISC; scsi_req(rq)->cmd[13] = cmd; rq->rq_disk = tape->disk; diff --git a/drivers/ide/ide-taskfile.c b/drivers/ide/ide-taskfile.c index d71199d23c9e..d915a8eba557 100644 --- a/drivers/ide/ide-taskfile.c +++ b/drivers/ide/ide-taskfile.c @@ -433,7 +433,6 @@ int ide_raw_taskfile(ide_drive_t *drive, struct ide_cmd *cmd, u8 *buf, rq = blk_get_request(drive->queue, (cmd->tf_flags & IDE_TFLAG_WRITE) ? REQ_OP_DRV_OUT : REQ_OP_DRV_IN, __GFP_RECLAIM); - scsi_req_init(rq); ide_req(rq)->type = ATA_PRIV_TASKFILE; /* diff --git a/drivers/scsi/osd/osd_initiator.c b/drivers/scsi/osd/osd_initiator.c index 8a1b94816419..d974e7f1d2f1 100644 --- a/drivers/scsi/osd/osd_initiator.c +++ b/drivers/scsi/osd/osd_initiator.c @@ -1572,7 +1572,6 @@ static struct request *_make_request(struct request_queue *q, bool has_write, flags); if (IS_ERR(req)) return req; - scsi_req_init(req); for_each_bio(bio) { struct bio *bounce_bio = bio; @@ -1617,7 +1616,6 @@ static int _init_blk_request(struct osd_request *or, ret = PTR_ERR(req); goto out; } - scsi_req_init(req); or->in.req = or->request->next_rq = req; } } else if (has_in) diff --git a/drivers/scsi/osst.c b/drivers/scsi/osst.c index 67cbed92f07d..22080148c6a8 100644 --- a/drivers/scsi/osst.c +++ b/drivers/scsi/osst.c @@ -373,7 +373,6 @@ static int osst_execute(struct osst_request *SRpnt, const unsigned char *cmd, return DRIVER_ERROR << 24; rq = scsi_req(req); - scsi_req_init(req); req->rq_flags |= RQF_QUIET; SRpnt->bio = NULL; diff --git a/drivers/scsi/scsi_error.c b/drivers/scsi/scsi_error.c index ecc07dab893d..b1ff26ac68c1 100644 --- a/drivers/scsi/scsi_error.c +++ b/drivers/scsi/scsi_error.c @@ -1903,7 +1903,6 @@ static void scsi_eh_lock_door(struct scsi_device *sdev) if (IS_ERR(req)) return; rq = scsi_req(req); - scsi_req_init(req); rq->cmd[0] = ALLOW_MEDIUM_REMOVAL; rq->cmd[1] = 0; diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c index 884aaa84c2dd..378cf44a97fc 100644 --- a/drivers/scsi/scsi_lib.c +++ b/drivers/scsi/scsi_lib.c @@ -250,7 +250,6 @@ int scsi_execute(struct scsi_device *sdev, const unsigned char *cmd, if (IS_ERR(req)) return ret; rq = scsi_req(req); - scsi_req_init(req); if (bufflen && blk_rq_map_kern(sdev->request_queue, req, buffer, bufflen, __GFP_RECLAIM)) @@ -1134,6 +1133,13 @@ int scsi_init_io(struct scsi_cmnd *cmd) } EXPORT_SYMBOL(scsi_init_io); +/* Called from inside blk_get_request() */ +static void scsi_initialize_rq(struct request *rq) +{ + scsi_req_init(rq); +} + +/* Called after a request has been started. */ void scsi_init_command(struct scsi_device *dev, struct scsi_cmnd *cmd) { void *buf = cmd->sense_buffer; @@ -2141,6 +2147,7 @@ struct request_queue *scsi_alloc_queue(struct scsi_device *sdev) q->request_fn = scsi_request_fn; q->init_rq_fn = scsi_init_rq; q->exit_rq_fn = scsi_exit_rq; + q->initialize_rq_fn = scsi_initialize_rq; if (blk_init_allocated_queue(q) < 0) { blk_cleanup_queue(q); @@ -2165,6 +2172,7 @@ static const struct blk_mq_ops scsi_mq_ops = { #endif .init_request = scsi_init_request, .exit_request = scsi_exit_request, + .initialize_rq_fn = scsi_initialize_rq, .map_queues = scsi_map_queues, }; diff --git a/drivers/scsi/scsi_transport_sas.c b/drivers/scsi/scsi_transport_sas.c index d16414bfe2ef..f5449da6fcad 100644 --- a/drivers/scsi/scsi_transport_sas.c +++ b/drivers/scsi/scsi_transport_sas.c @@ -213,6 +213,11 @@ static void sas_host_release(struct device *dev) blk_cleanup_queue(q); } +static void sas_initialize_rq(struct request *rq) +{ + scsi_req_init(rq); +} + static int sas_bsg_initialize(struct Scsi_Host *shost, struct sas_rphy *rphy) { struct request_queue *q; @@ -230,6 +235,7 @@ static int sas_bsg_initialize(struct Scsi_Host *shost, struct sas_rphy *rphy) q = blk_alloc_queue(GFP_KERNEL); if (!q) return -ENOMEM; + q->initialize_rq_fn = sas_initialize_rq; q->cmd_size = sizeof(struct scsi_request); if (rphy) { diff --git a/drivers/scsi/sg.c b/drivers/scsi/sg.c index 82c33a6edbea..c3215cec0c82 100644 --- a/drivers/scsi/sg.c +++ b/drivers/scsi/sg.c @@ -1732,8 +1732,6 @@ sg_start_req(Sg_request *srp, unsigned char *cmd) } req = scsi_req(rq); - scsi_req_init(rq); - if (hp->cmd_len > BLK_MAX_CDB) req->cmd = long_cmdp; memcpy(req->cmd, cmd, hp->cmd_len); diff --git a/drivers/scsi/st.c b/drivers/scsi/st.c index 1ea34d6f5437..dc4d2b9e15a0 100644 --- a/drivers/scsi/st.c +++ b/drivers/scsi/st.c @@ -549,7 +549,6 @@ static int st_scsi_execute(struct st_request *SRpnt, const unsigned char *cmd, if (IS_ERR(req)) return DRIVER_ERROR << 24; rq = scsi_req(req); - scsi_req_init(req); req->rq_flags |= RQF_QUIET; mdata->null_mapped = 1; diff --git a/drivers/target/target_core_pscsi.c b/drivers/target/target_core_pscsi.c index 3e4abb13f8ea..d4572639949f 100644 --- a/drivers/target/target_core_pscsi.c +++ b/drivers/target/target_core_pscsi.c @@ -992,8 +992,6 @@ pscsi_execute_cmd(struct se_cmd *cmd) goto fail; } - scsi_req_init(req); - if (sgl) { ret = pscsi_map_sg(cmd, sgl, sgl_nents, req); if (ret) diff --git a/fs/nfsd/blocklayout.c b/fs/nfsd/blocklayout.c index 47ed19c53f2e..c862c2489df0 100644 --- a/fs/nfsd/blocklayout.c +++ b/fs/nfsd/blocklayout.c @@ -232,7 +232,6 @@ static int nfsd4_scsi_identify_device(struct block_device *bdev, goto out_free_buf; } req = scsi_req(rq); - scsi_req_init(rq); error = blk_rq_map_kern(q, rq, buf, bufflen, GFP_KERNEL); if (error)