From patchwork Wed May 31 22:52:37 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: 9758469 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 DC4E660360 for ; Wed, 31 May 2017 22:53:04 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CC1F82766D for ; Wed, 31 May 2017 22:53:04 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id C0934284D5; Wed, 31 May 2017 22:53:04 +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 8F5D72766D for ; Wed, 31 May 2017 22:53:03 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751164AbdEaWxC (ORCPT ); Wed, 31 May 2017 18:53:02 -0400 Received: from esa6.hgst.iphmx.com ([216.71.154.45]:42535 "EHLO esa6.hgst.iphmx.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750977AbdEaWw7 (ORCPT ); Wed, 31 May 2017 18:52:59 -0400 X-IronPort-AV: E=Sophos;i="5.39,276,1493654400"; d="scan'208";a="23094102" Received: from mail-co1nam03lp0023.outbound.protection.outlook.com (HELO NAM03-CO1-obe.outbound.protection.outlook.com) ([216.32.181.23]) by ob1.hgst.iphmx.com with ESMTP; 01 Jun 2017 06:52:58 +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=5zNxBOONfOeQMgvrDQ33Ra5KAwgxYCpFKcAF0IPicRQ=; b=S2S1rTA7nYxxm7zqnH/13NAThnsTxbmxw/6D4ExIE7+h9EOKH6T+8W/QP1D6BfZE+wnte978dTt0BFlXS25XI3ga8usQCgU9Q5rdAsliP5/EBcNCUug8Q7RnX6dOkBuKfXqEcSq4MocUEsOW9l0fTxSNPD96EAQljyhwvJcuOtg= Received: from BLUPR0401CA0023.namprd04.prod.outlook.com (10.162.114.161) by BY2PR0401MB0918.namprd04.prod.outlook.com (10.160.64.141) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1124.9; Wed, 31 May 2017 22:52:56 +0000 Received: from CO1NAM04FT031.eop-NAM04.prod.protection.outlook.com (2a01:111:f400:7e4d::205) by BLUPR0401CA0023.outlook.office365.com (2a01:111:e400:525a::33) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1124.9 via Frontend Transport; Wed, 31 May 2017 22:52:54 +0000 Authentication-Results: spf=pass (sender IP is 63.163.107.225) smtp.mailfrom=sandisk.com; lst.de; dkim=none (message not signed) header.d=none;lst.de; 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 CO1NAM04FT031.mail.protection.outlook.com (10.152.90.125) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.1101.12 via Frontend Transport; Wed, 31 May 2017 22:52:53 +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 EE.DC.38445.4494F295; Wed, 31 May 2017 15:52:53 -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; Wed, 31 May 2017 15:52:49 -0700 X-AuditID: 0ac94371-422569800000962d-2f-592f4944f673 Received: from exp-402881.sdcorp.global.sandisk.com ( [10.177.8.100]) by (Symantec Messaging Gateway) with SMTP id 9C.1F.18148.1494F295; Wed, 31 May 2017 15:52:49 -0700 (PDT) From: Bart Van Assche To: Jens Axboe CC: , Christoph Hellwig , "Bart Van Assche" , Hannes Reinecke , "Omar Sandoval" , Nicholas Bellinger Subject: [PATCH v2 03/12] block: Make most scsi_req_init() calls implicit Date: Wed, 31 May 2017 15:52:37 -0700 Message-ID: <20170531225246.26261-4-bart.vanassche@sandisk.com> X-Mailer: git-send-email 2.12.2 In-Reply-To: <20170531225246.26261-1-bart.vanassche@sandisk.com> References: <20170531225246.26261-1-bart.vanassche@sandisk.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrJLMWRmVeSWpSXmKPExsXCddJ5ka6rp36kQctuHovVd/vZLBa82ctm sXL1USaLvbe0LdpWn2G0OHzvKosDm8fE5nfsHpfPlnrc336EyWP3zQY2j/VbrrJ4fN4kF8AW xWWTkpqTWZZapG+XwJXR+f8CW0FXZcWu3gcsDYz/krsYOTkkBEwkurrvsXYxcnEICSxlkph5 5QkbhLODUaJx/i1mmKoNO3uZIBKbGSVmfZ/NBpJgEzCS+PZ+JguILSKgINHzeyVYN7PAPUaJ cw8eM4EkhAU8JY717mDvYuTgYBFQlTgwOxskzCtgL3Hq/RVWiAXyEme37ARbxingILF6+wl2 EFsIqGbTkcdgMyUEFrFKHO6/zw7RLChxcuYTsMXMAhISB1+8YIZoUJc4uWQ+0wRGoVlIymYh KVvAyLSKUSw3M6c4Nz21wNBErzgxLyWzOFsvOT93EyMkAgp3ML6+7X2IUYCDUYmHV+CiXqQQ a2JZcWXuIUYJDmYlEV5fNf1IId6UxMqq1KL8+KLSnNTiQ4zSHCxK4rxZslMjhATSE0tSs1NT C1KLYLJMHJxSDYyCK2JUXb7OTXhsE7rmjq3kkruRu48xud+OiLsx7ybTk5D4HK4Gr/fbQg5l tL49G7C943TezvVLF7uFCkbNz564oC7dp/iVbeuVi5k3uVLqVvJN/yt1/PX0X+kMgStZdQSM EmRf5j9gMPTcIcCxNmNjy5nn3+dy91x6/mX/ttQTAtyP1kyZt7BOiaU4I9FQi7moOBEA8zHp 5XwCAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrBJMWRmVeSWpSXmKPExsXCtZEjRdfRUz/S4N9mYYvVd/vZLA7+bGO0 WPBmL5vFytVHmSz23tK2aFt9htHi8L2rLA7sHhOb37F7XD5b6nF/+xEmj903G9g8pq05z+Sx fstVFo/Pm+QC2KO4bFJSczLLUov07RK4Mjr/X2Ar6Kqs2NX7gKWB8V9yFyMnh4SAicSGnb1M XYxcHEICGxklXs9ZxA6SYBMwkvj2fiYLiC0ioCDR83slG0gRs8AjRomTa/eCFQkLeEoc690B ZHNwsAioShyYnQ0S5hWwlzjwcSU7xAJ5ibNbdjKD2JwCDhKrt58AiwsB1Ww68phtAiP3AkaG VYxiuZk5xbnpmQWGRnrFiXkpmcXZesn5uZsYwWHDGbWD8fpE80OMTBycUg2M9X6mEysebL1y 1OiW26N9b4wvtJenGN3wdJqj+iFaePezO1x+s709Nq+T8Hijf3hTmuiUQ+sfXXPsCHPp5zNy U5sxb+pfmTPpObP2KrVOLVRn2biF7W+hM7dt5vwbEmf+b92rKLBqR+8RvtJHP1avUlbwNQ66 67CsW5JTTYFtoY9LvsfG28GqSizFGYmGWsxFxYkAZ8xb/csBAAA= 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)(39410400002)(39450400003)(39850400002)(39860400002)(39840400002)(39400400002)(2980300002)(438002)(9170700003)(305945005)(48376002)(54906002)(106466001)(8936002)(36756003)(77096006)(50466002)(110136004)(50226002)(2906002)(81166006)(76176999)(38730400002)(47776003)(189998001)(50986999)(53936002)(6916009)(72206003)(1076002)(5003940100001)(8676002)(2950100002)(5660300001)(6666003)(575784001)(478600001)(356003)(33646002)(86362001)(4326008); DIR:OUT; SFP:1102; SCL:1; SRVR:BY2PR0401MB0918; H:milsmgep14.sandisk.com; FPR:; SPF:Pass; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; CO1NAM04FT031; 1:aNAM7pl3SdtcGlrtpOzQRhJOuAsjn9zMtLPFT+NaoGPhJ+F1uu+auZa74XmjuOtvKCIztZNN60dkxcudeuRKJ0bVqPpXFv7lXrPgi1XLVE06O0/Na9lMSNpiL5ZoJS8rimS6JfdL3wJyOBWdfL7P8+FQTHf1RsWqETtH3mpooLjllxHZTf+hmCtQ9gSwvgO/Kx5iDT/obpp8k9jdjfAvGeSqjhfKMlithVKgjQvuanuf7Y74qgVsP1bfy60vlBalmbf/PAdDG/MxY29J79PrUU3+3BrCzPIwNtr53bPqey3Wf8sfaouSpskAvrOb2vklLqo+beY0KuTM0Qenb9Qx62LA+otju8oDPAJsG3SnuzWXwwQnqiglZupN76FKr94BRVwHOWVH/Nk/LM44lQHOvQ2/Ejv1KsPuu39AOKdZY8oIR3BhgJaiQzzQyvehHk4iJCFcjlks98EyZKr6v6FNL6T/uypOZ8gSTg/MFdXQyCif1VGyffv4Li0vCKVDeFwYyA6K1w/HzabaHM/MUgyC1wFBPnorkLHdG3WFePqK33zhnh+3mLuvOUkPpwxnY8Le X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BY2PR0401MB0918: X-MS-Office365-Filtering-Correlation-Id: 06867ea9-1ef1-4f72-0d86-08d4a877c614 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(8251501002)(2017030254075)(201703131423075)(201703031133081)(201702281549075); SRVR:BY2PR0401MB0918; X-Microsoft-Exchange-Diagnostics: 1; BY2PR0401MB0918; 3:1e9exQ36mPwrc5wOZVqacx1KzSbYDwAb9XdyTghrGlGk5Vvbgb5hHt0PNrg8j+mGXO3N25ljHqtkkxcyHDp64x2U/JzscK12TTb1hBQz9QxadN/8tjAmWXQE9JzdO3/9dX9tpi6+mOpHtvk3CDVB9XhAs83UxfL3v5ZV4EVT7dke8NMsx48mHmrgGGMJTxx1agYHUPQmiS56txHK0w9uMceFTxL512XX2Tctyz/RRSBvnz2ZATixlRQgmegtKp3od4/1Q0lTRSbaogNKjRPrQ9JEYzeO5IuIAI0hAjujEcFka4p+sb56gwYJ2+4YjkQ7XUuILWQJT7ajSli09tcw/SgLJO8d0xX3k5jf1yQoDreYMIStcUSm2j8jRdrCugImVGA0wiQPZ+OdBHbcxDfKHcgji4rmxPd/1ZvVCgo+EAT6s07bV0v7y2pV7Xtdy0gbMXYlRj3B0a4/cQP2AyMlu1X+HuV2pnZDwA/wW6CqyHD8MaNQnly9+NQ6E75V36UE8VmQwb7DNB5ehYcrQLdy9Q== X-Microsoft-Exchange-Diagnostics: 1; BY2PR0401MB0918; 25:WagxtN5uJdKqIdz3qkA/kYrlqwX/LmZfM7/bp5CeE8KecNHStwDzaOniqCbfUWXli5TRtAPVf4F5kheowzD+mQ2H3tXRrEyCqrnaERrBiM9MG98KG6VtN/1qaBPLDXrL4Kl2CMPBx6sqQ2ujJdiCUI6bN528EwJHnRH8dCNXKNEB6Q4yfi61FhT393+QHBeNIA0/wlZc1hEj0Cpn2OkmFjp+AQ6x3cS09PHgzg+fQqE19uaZRsEAQcfvpnuQ8jOM+wOSxyqBQf3+NoUN2QX8ezUOyCeDxw2ewqwvwA+VDbP7Rcnr+2EmVVgqTLGRsrQSJenotz7BemaZkWQkvE2+fSjnksfnYxdrfeUzy+sZxSWLOqnaZpA/rFgpnF70x1Kw+TZM/ylgjLtwv9LmQvDHThDELD87zzayhsnfMKowhdcSH06RPz/7+s2Du1yJRCJiMYIWBI0pxTYcjDyc8yANR8PDgj96ONjSoH5AQug8dUU=; 31:Zby1c7KBekjLLCdrqFn/DNTL0zLcMzB5SIdRKeMF8ylDHHtfXjYkat0lKrptHK4eeOteSPC+L47TcOTyENRPMF4ryq9AO0Gq72VbfJJNukU/XJ2oYf+dgBWg3m0EtyetrJaMe2KbCY18jvG0+WJ322jtRvQo/MqoMARjhA1o+3ie/8hTwk8D1r9rQkLc67VJODhRV8y1C7fR+Btv0gkD58CGUUViRcPwtgitif8ZEh2YpA2+Vmb1taQQngEYz1ZIkXVr1VAVZyphBvWAtrNGvQ== WDCIPOUTBOUND: EOP-TRUE X-Microsoft-Exchange-Diagnostics: 1; BY2PR0401MB0918; 20:ALUNqE9Q4T0DQUxjXMGMEsZWnJ2zyyGE+Gyv4kPLPMtdLFIJKtbPY86OOTRLWvmxgBfL4Us7ZpGVtR2SX02WXV5zCeLj5tElTDsddOt7uDfTlS7Xd+udjUDKzr1Brx6u472SZSuGzcusxbao8qgRfc6CJSSROSFc+RSN7rqXmqlnq3xjnotB0JwpBSBAXn1S3ejRPpKQ9gNZ+KdqWYrAN0Xu7eg+kJHOOCWSqSkZC3dVchnKaVejDwlstc5mXlDODg8rgTSUFJndsBvEmVRNSnrVmCg8MLlMHQfJc9pFXLaGpnI4WnEetkCc+s1uJnFH2fEv7EjYdgeWCFB25ae9cZTgQMAc9A1373091dtUuAaKzYMZFY2MFVyzey5b5FtZwFDw9rVcivSajl0q0x1RY8qGUhq1Wt2iLLqy94bwAl4GzYkGH3FRqXhphg4m4ydjFUAAlOJW7OrDIsZ+KRxHy+OcaGLM/EO0fD6OVRA40ktq+TSlymoDaf3pkWV9N/By X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(67672495146484)(42932892334569)(17755550239193); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700073)(100105000095)(100000701073)(100105300095)(100000702073)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(13018025)(13016025)(10201501046)(100000703073)(100105400095)(93006095)(93004095)(3002001)(6055026)(6041248)(20161123558100)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123564025)(20161123562025)(20161123560025)(6072148)(100000704073)(100105200095)(100000705073)(100105500095); SRVR:BY2PR0401MB0918; BCL:0; PCL:0; RULEID:(100000800073)(100110000095)(100000801073)(100110300095)(100000802073)(100110100095)(100000803073)(100110400095)(100000804073)(100110200095)(100000805073)(100110500095); SRVR:BY2PR0401MB0918; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY2PR0401MB0918; 4:spTjgrBb0TshGHg2IIIWcgVqcOzcMX0qWvOEvv7s?= =?us-ascii?Q?YgUSZcnDhq40IFAo4I+EtR5RIslNR/ofiJNCkVLo/VKdMqvOJ/ozZKI2slr0?= =?us-ascii?Q?Kc9tovFtuCec4ylIPcPiXejZsDTnCxnBZZ+2dMYDbjZq6coUO8jjoozDi/Gf?= =?us-ascii?Q?tWw8WH+ppHfftJLYKHvU7vg+9KWwPdwad84NbfQv1npkLVaTJs0c8JGZB+Sy?= =?us-ascii?Q?45dRUs+k8a7pPx0+MV9YcJtvgmniyJwvfbXAV2aLW3lZNn+JrscZpRB0WJME?= =?us-ascii?Q?qQdXjqY4J0tLBhljqGnq9NQkdMy5+xfoJYZUJxAh+fVhUz56WZUFtZXdAx+d?= =?us-ascii?Q?niwIT52Y/Fd9P5wMmq5k09J5AqFHc5YjS/JM/xpdRmMrZ6anPuolxkBhFvt7?= =?us-ascii?Q?LWhcZojEvyg7eU/5rRHHbFktL+QI8eNwNfAbsMB1+AyT8T7oNhIEYLMZ+50e?= =?us-ascii?Q?uVS/U5aqzSQ+Ni6u/yEqd4epW1URhGMTJPn8cFGpmcWp5VM6UstAXpVSnY3t?= =?us-ascii?Q?ehVPpWH20kJXPxxJWMmaV29zK+C464i9qKvVdXz2Nz2Nvbt3WhCdprGvZ5Ih?= =?us-ascii?Q?HS9KF2w8OkQ30ANp0q3qAVssdCOw6x/MMGVt/nGdWX0WHeDIU8M4eGvVX0qN?= =?us-ascii?Q?tJRjj9dldkovQzvvP4FL4qIMOJQOnpywPY57fuqKYrpbPma1erOOmAyPGov7?= =?us-ascii?Q?Rr+8RsU+UAz7T3BruvyMKieZTFvRzC4RFpnU+rvc7I/GXdfotR/cKzYKOYHj?= =?us-ascii?Q?fvyC7GcrcX6sN09+zI7GXHGFCKv068e00YkRozqASrc96U2eCKWVjuDUR4lJ?= =?us-ascii?Q?rj8FjL6otvFl3T1RQXIc1PzEgCzs6c/h2etIW48VAA3mu/DXF/bqyFv9X1fa?= =?us-ascii?Q?8rXTdUYFZ0vNyJ/z15yG8hX2XT1L5m6btT4qVGj7m64+EteoiFjF0UrN+hYv?= =?us-ascii?Q?1GeafOOMFKYG/YzTLNUp+qN4SCDhK+xOVAG1YEV2dFRFkF60laV8rSJcuhOp?= =?us-ascii?Q?efa0d9wi26WiqX94wuY/2klBIFkr6cabMeD7F2IcUEcmobMpX2zNgblxX1p+?= =?us-ascii?Q?9MJ5Nh8TPdh+LAiPFd5rNFkalty71uOZ5/umEgP5cVksTTYVHKUUXIZ5ZmEK?= =?us-ascii?Q?8kq3evqYcn0Wwg29a4/BoC2QaUJAcfl008cx6vpMPeXWFOASSwR6Ir1x2aRl?= =?us-ascii?Q?CkjyItPT+ByZBPj65D1oAnjRisBjvofP1XzHJvZCeXvf0pyIpp/H4/20g4eN?= =?us-ascii?Q?QeUmLGJNZUCjGvLqAHeESprQXwHDX/ZaySMkOSY7y0kIkL8sv7kEWSLewygM?= =?us-ascii?Q?Y6n540AyvP89GbUAmnGM24E=3D?= X-Forefront-PRVS: 0324C2C0E2 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY2PR0401MB0918; 23:iusYVFdqSzZn5mTDn+1YWXpEAi/92Ooz6WjSzq5?= =?us-ascii?Q?KE6QWvq+N5cKgecQ31wR8DaSCpuFWtQs4vPDTqcZg1/nGkereYIwwGAsS+v7?= =?us-ascii?Q?ir9tkFBmRSL1xja6UGppTrDWlfl8YpTBOrHoIqN7fpURxEwDHeDp4weCQG/9?= =?us-ascii?Q?xoB6ucGA41VQ4VdKe0oa7yTHF5RxE3v867pi55CoiXdaMh1e6V8m3e7tZ578?= =?us-ascii?Q?myDsi+R4+XDzoRzjBiEMzjHnZwmSfmD8yAUftfIMsxrSuC59epYmy6B2FZ2L?= =?us-ascii?Q?ECLHNz0f5Fco12XXrWEKwALjZIWMNafQ3gvY9XHLtIdlIB2PHmG6mSnNSLhr?= =?us-ascii?Q?1igFRgxADjB9Hjfbgj6Hv5pXE9QHT5jiiRLaSGt1yWfg/unBXwWRkp1Fz9BI?= =?us-ascii?Q?A5X+pcVWmPaHBsY1ZoUWII28pPhygfkScOXbE26BEzur+jJMquVVYWNcjPGh?= =?us-ascii?Q?tkJhux5HsRCK0u3eOnx0hngJG/p3hURmz2jYqCDfg3C9r8sa/P8+xJ5Xg7nt?= =?us-ascii?Q?xE3jP0UCmNdbMUhAm4Q67V66Wxp5FQaIkctagXNXJxboGVf4dgEEmZ9S8Ayh?= =?us-ascii?Q?o9Ya0ztzi8s23wZxJd56Ub8o8WsrVwYPxjas/qc6UzvxDv+IPuzFpDyYIGni?= =?us-ascii?Q?GYRxccCig0rUmOKA+SMALrhuJ8P65ae9ig971fGlQWiOQ9lyopnr4SVdog3I?= =?us-ascii?Q?SBoKeHNygm8zyryLk0hiMfDvGmPLlaR1vyAVWs5GSsQusyagjwYtKkG5pSzQ?= =?us-ascii?Q?oIDm/4j0xz4Y7VwJuVU0w5ivEe8mcHjdd5en+Q4emo2U2/PwMiZO/SHpOmoa?= =?us-ascii?Q?9p11W3xnS7HpLkNQh7sKcVpNROWEVSrCEIiVgZCxhQUmSabxQ3e6PS8o57dH?= =?us-ascii?Q?5+xe7o61ptzA1zLVUjhFjt/899mcBDQ7ODUrtL/WNqFxczcBzzjmpoVzl/q0?= =?us-ascii?Q?3GIYX6BZezn48G0saIU25U7SkXFqlUwlGpVJgJKPLGtDlFEO4UlFoyoz9jbQ?= =?us-ascii?Q?To1sdG7+zdzt/xX30mpDUiSXhaFk4aWqXqZLxntNH1WO7jT8Jt4nve9woreR?= =?us-ascii?Q?ejw0LVE911g6fm+3IQnb8ZDaus6DJ?= X-Microsoft-Exchange-Diagnostics: 1; BY2PR0401MB0918; 6:MPqusv87u6F4PMbLpBFY6gUws+6Y1mqdgg1ibfyFQEtBpoJ+73BJY7I8pj38xA5K5AXdA5kA0RG4pDpcrH3cjCpS18pWMeHSplV929u2f4MymOsu6Z5B1ElzkyzO+7d5+XC4+kjweWLAHCTzROYxHFNJTVsp9E1JCANqF23XGsYUC4Rq+cey9rROEK/hrneDiNyQv+T4BAUpdWZ/MN5vWuQtTdHOpfp3jdcU0S5rWSTYagg8tBdeZZmBmoehvrIG00arExC+PqgCQRegRTHjACu2Bnhrmi1SEHgXw66KsQRYTzPIgV6uT8knKhMv54gCnxJEXEGe9s7CRi0mxZlZZP3yZ24oLWSW58LGREqskuzOorG7O85sRJB4r6q00sZ/g76Xv8w0L/rIANdaj46jPzxauQNLedCKm5kvwS0fFRbOzFHCebxSF1akUibqvnN+q9n5OotrJ9oIvVbqSrHyh9z4pZkWVLjvzd52X7UkMOm8BpTrL7nQZNKDzaaKHqwlF6l9HNDfTeaIpdHPgKXKWINmDP0HK0H66WTMiOSKb4M= X-Microsoft-Exchange-Diagnostics: 1; BY2PR0401MB0918; 5:jch5+4e7PbeS09bBTFwUQqD/lAxO+Qp3uzaJmEBjK786/KKvcZ/yNzeT1URSwh8xOa9yOWQEgO96uWiEictW7VTY6K7q0p+cOW/wfezgYgYKunVrOYv/gkLw96idFloadguBStrNJye2JlJSkZO6cLy1R0TR2PBYithxxIUXlNssUv2vlcf7S8z9kV7c9Rb+TkCoqVde+p4sDSZM0ot4o/budwuHvQoAflP0sUj9A/HEEZEp+JqIyCp1m1drevfeAmeQLzYyaYR/hfUpoLMz68ghw69KodXhaxsDjDIKrxYKw8xtKNFIKnJR2xvyKLe82n00tF0vqbmdY4xyRuADWQGbnndMOjx6b1YEsQfC0k7Ahj0hMx3qeGEqV+S5903ExX8guj3WhffxE7E85QvDk1EDyGMe9gucQ3aVwhGGjOkWOzbeJcThsRhzN2uxndVBGkNHbLSXvm8sy7QWuMC+gb5hvMSlGkbZNY9fBFlbrVdbj42M9ano86LiHSaiJiGC; 24:QcRHK/BvyVAu8bd8apWoyahJGNnb/qxRJwC9fdKqvqYp2ykOHtjtIOeF3y/TIqM7phWxrebAugWROQYDTuYsNua53ZimRHtA55+h3/Gdvns= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BY2PR0401MB0918; 7:KbN13qoHctAwRvPRn0qnTKfQjn2gISZcSDabX0QqIp8Ok/WUUgVy3PWpUWBj8P2XYHcNcVboU46ih5l4sXrl80EuFYlQC8T1AxCxZoUl6Ycveq3kx+Lnefhkkt6oIDJU/BAt07T3bDBsW4t7GJJcuyclTlUiC6JWUMttkkaa9IYxTw1zv6umMUfhdVkVloluyXwBEoixxfrhyNCePAhJME3PDglavr1geYwZHK4cE1LoQVm2nwIOvf7pRbSsGg3ihYgbF4OhXtCPO0sz8JYWkdQsvVZcBa5lwDQ8wXt19yO/BpwFqpVOHFZMTZMAXbMa37HB0Z6QgXlyeSq/dDEnHg==; 20:NQ5MEHs5sJQGPNyoj33QL56j2YQOu79qGIYj/Y1rCOmLADKBUYm74wket5m3pCTaHSeVcbZmpaQTsSANiGIayV/+jEKDSnXTeUMDltaFlqO2RmSNzLIWJ+bVWrLyuT3rTJvlOGxqRlOckqrsMtMIprCps+bslF90LYIIqGT7Za0= X-OriginatorOrg: sandisk.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 31 May 2017 22:52:53.9641 (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: BY2PR0401MB0918 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 Cc: Hannes Reinecke Cc: Christoph Hellwig Cc: Omar Sandoval Cc: Nicholas Bellinger Reviewed-by: Christoph Hellwig --- 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..e96ffd187558 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; @@ -2089,6 +2095,8 @@ void __scsi_init_queue(struct Scsi_Host *shost, struct request_queue *q) * blk_queue_update_dma_alignment() later. */ blk_queue_dma_alignment(q, 0x03); + + q->initialize_rq_fn = scsi_initialize_rq; } EXPORT_SYMBOL_GPL(__scsi_init_queue); 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)