From patchwork Thu Feb 4 22:45:51 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: 8228511 Return-Path: X-Original-To: patchwork-linux-rdma@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 17A5BBEEE5 for ; Thu, 4 Feb 2016 22:47:35 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id E4A8D2038E for ; Thu, 4 Feb 2016 22:47:33 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id C8063202BE for ; Thu, 4 Feb 2016 22:47:32 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934359AbcBDWra (ORCPT ); Thu, 4 Feb 2016 17:47:30 -0500 Received: from mail-bl2on0067.outbound.protection.outlook.com ([65.55.169.67]:10656 "EHLO na01-bl2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S965682AbcBDWqL (ORCPT ); Thu, 4 Feb 2016 17:46:11 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sandiskcorp.onmicrosoft.com; s=selector1-sandisk-com; h=From:To:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=493mRQ/XVb7gLmlGRhpA+25ZsKxavCQBIW3IjtEbYQQ=; b=mGVRqzY3hmXy6vnx4HQHshjNLPmF61M86AQQbQhFrPVUlPpD+xmjvOJKD40pmrDmHrmPljzGkGu+bzlwUcDXdfab8YKZmYLH7XBc7wrd7FZgnTv0UnomiPcMp1OPX+hL+hfchx4RMFJQt1oExg0KRHdCQQSrD6+5EX0O8sfawUs= Received: from BY2PR02CA0020.namprd02.prod.outlook.com (10.242.32.20) by CY1PR0201MB0827.namprd02.prod.outlook.com (10.160.141.28) with Microsoft SMTP Server (TLS) id 15.1.396.15; Thu, 4 Feb 2016 22:46:08 +0000 Received: from BL2FFO11FD035.protection.gbl (2a01:111:f400:7c09::154) by BY2PR02CA0020.outlook.office365.com (2a01:111:e400:2c2a::20) with Microsoft SMTP Server (TLS) id 15.1.403.16 via Frontend Transport; Thu, 4 Feb 2016 22:46:08 +0000 Authentication-Results: spf=pass (sender IP is 63.163.107.172) smtp.mailfrom=sandisk.com; mellanox.com; dkim=none (message not signed) header.d=none;mellanox.com; dmarc=bestguesspass action=none header.from=sandisk.com; Received-SPF: Pass (protection.outlook.com: domain of sandisk.com designates 63.163.107.172 as permitted sender) receiver=protection.outlook.com; client-ip=63.163.107.172; helo=milsmgep11.sandisk.com; Received: from milsmgep11.sandisk.com (63.163.107.172) by BL2FFO11FD035.mail.protection.outlook.com (10.173.161.131) with Microsoft SMTP Server id 15.1.409.7 via Frontend Transport; Thu, 4 Feb 2016 22:46:07 +0000 Received: from MILHUBIP04.sdcorp.global.sandisk.com ( [172.22.12.162]) by (Symantec Messaging Gateway) with SMTP id BD.2E.02415.DA4D3B65; Thu, 4 Feb 2016 14:46:05 -0800 (PST) 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.248.2; Thu, 4 Feb 2016 14:45:51 -0800 X-AuditID: ac160a68-afc369800000096f-2d-56b3d4ad58d2 Received: from [10.60.52.49] ( [10.177.8.100]) by (Symantec Messaging Gateway) with SMTP id 97.1E.03361.F94D3B65; Thu, 4 Feb 2016 14:45:51 -0800 (PST) Subject: [PATCH v3 01/21] IB/srpt: Simplify srpt_handle_tsk_mgmt() To: Doug Ledford References: <56B3D453.7030409@sandisk.com> CC: Christoph Hellwig , Sagi Grimberg , "Alex Estrin" , "linux-rdma@vger.kernel.org" , "Nicholas A. Bellinger" From: Bart Van Assche Message-ID: <56B3D49F.20304@sandisk.com> Date: Thu, 4 Feb 2016 14:45:51 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 MIME-Version: 1.0 In-Reply-To: <56B3D453.7030409@sandisk.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFmpkkeLIzCtJLcpLzFFi42JZI8azSHftlc1hBn1TdCwuPP3OZPHy/AdW i5WrjzJZPDvUy2LRtvoMo8WNtgdsDmwei/e8ZPK4v/0Ik8fumw1sHs+mH2byeL/vKpvH501y AWxRXDYpqTmZZalF+nYJXBmnXn5jL9grV3G0ja+BcZpkFyMnh4SAicSdH00sXYxcHEICmxgl TnR+Z4NwtjNKbDo4lwWmat/ql+wQiTmMEheOfWUFSQgLOEn0PzoIZosIqElserWIHcQWEtCS mLpuJlgDs8BNRomdfw8xgSTYBIwkvr2fCTaVV0BD4syqk4wgNouAisSkr0fABokKREgc7uxi h6gRlDg58wlYPaeAtsTKW4uAbA6goZoS63fpg4SZBeQltr+dwwyyS0LgJKvEij0P2CCOUJc4 uWQ+0wRG4VlIRs1CaJ+FpH0BI/MqRrHczJzi3PTUAkNDveLEvJTM4my95PzcTYzgiOHK2MG4 dZL5IUYBDkYlHt4DazeHCbEmlhVX5h5ilOBgVhLh7bgAFOJNSaysSi3Kjy8qzUktPsQozcGi JM5r3aIWJiSQnliSmp2aWpBaBJNl4uCUamDcdHeX50Sx2lpNi+hXXL6P7EwDCxf9W2Y6+dTB Dw0V+v/8GXWmHlfnfi/18fp6f8XL1+IlZq5er/tl8nuByCnucXe3eaVqlD3VcJvFf37JNe8/ 9RPjnPgeMd/qqs6R7N1huj3urpX49bPq/p03PzYVt2ee5qh+JcVf9SJY8rXH/vNTDnRIJCsr sRRnJBpqMRcVJwIAdk4+zJQCAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrBJMWRmVeSWpSXmKPExsXCtZEjRXf+lc1hBlOvC1pcePqdyeLl+Q+s FitXH2WyeHaol8WibfUZRosbbQ/YHNg8Fu95yeRxf/sRJo/dNxvYPJ5NP8zk8X7fVTaPz5vk AtiiuGxSUnMyy1KL9O0SuDJOvfzGXrBXruJoG18D4zTJLkZODgkBE4l9q1+ydzFycQgJzGKU 6F31jhEkISzgJNH/6CAriC0ioCax6dUidhBbSEBLYuq6mWANzAK3GSVuf/zIDJJgEzCS+PZ+ JguIzSugIXFm1UmwQSwCKhKTvh4BGyQqECFxuLOLHaJGUOLkzCdg9ZwC2hIrby0Cs5kF1CX+ zLvEDGHLS2x/O4d5AiPfLCQts5CUzUJStoCReRWjWG5mTnFuemaBoZFecWJeSmZxtl5yfu4m RnDYckbtYLw+0fwQIxMHp1QDo7XHqplVq9NuNfXyzUyTLXM5cJ3R4ZKjoK7VMQut/z0L7dYv NHOTP3VFe8duTZWmKE4vc823F7yO/wqaMbHmcdh5taIvQdvWiiSdmqBnUpSX9N76oO0b4abu OboHHjVX8/j8C76Vkup4L4grQeFWKHfpptgXTq1qDQs1Lvb9SvD/9FsssfieEktxRqKhFnNR cSIAfjT3VgsCAAA= X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1; BL2FFO11FD035; 1:ZtTcmoME8ot08uvw+lRvZ7kpC8t8Tbnlo2tosWuvX41Cg+Qa3jOSTvSm3xVaujVsSLXtjiavXbPC4krfmdB1FqHdJOTLYeTyFk8RuvHy51HZMMZWAfCSI2Wqw7VX5Rtl5lREHvRB8jrU5ZIb9GDnXs18a+oHNt8b8Wdsp59zW7dTVS9oiTqJ0Eud1kUL/jAoXs8N1FTDiiewdsLT93y2TuL5T+T34BryRFeL4FTSKmQkuHAzXtctELB+0eGB8iQv7TEobngbh+S7t2Ec+jOXNh2sI0CAWWDzaOFownyKGCk9MxubOr28JbXkv+q/j7uEJ1zx6s5Mqv87NTSc45WfNY4rQh+8p6GPAar8M4RS4wyEvaa1HUJxAvvlLaO66akdOGOntMyguuJPFTXUq7t5/LT+f6LG3yuFqhsHSvB3RCPQNQh8xNft9C1FQmbZmo2X X-Forefront-Antispam-Report: CIP:63.163.107.172; CTRY:US; IPV:NLI; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(2980300002)(438002)(189002)(199003)(92566002)(54356999)(11100500001)(50466002)(5008740100001)(19580405001)(64126003)(19580395003)(47776003)(229853001)(4001350100001)(86362001)(4326007)(33656002)(87936001)(2906002)(83506001)(65816999)(106466001)(189998001)(77096005)(50986999)(23676002)(110136002)(36756003)(586003)(230700001)(2950100001)(65806001)(5001960100002)(1220700001)(76176999)(1096002); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR0201MB0827; H:milsmgep11.sandisk.com; FPR:; SPF:Pass; MLV:sfv; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; CY1PR0201MB0827; 2:sCH4wCRzA/cCM7YeEIvNIQgWxoVJ9X00Q/ra4CRJH38j6ib2B87a5JjGT0a+EQIt9G33BfjWPLBW6LsyYR03smt62UfUFwJhNpqxE1yBAcCzNCWdwG87HfBaYwQSQ1C/6eGRkLusvEBUOhujDpkv9A==; 3:oZcHL7jbRhKnD5uBDXoy8wRgV6fd4rNiRr+iCPqApn5JanrqaSslorlqC7mAGw/VY1/zMUYs26pRJbuCsI4kIZBH1XlLZUrf3kaMiwQeEuYvurRZLqRcEQa5K58/e5Haz+jCcdYgJCb3Jwj/QybzvJ6VkHJl8PlM/bN23sNqhiv+jwVO1OTA2e3/MjQqLjLma6ZDK5cA0DWFsfUHQf+Y2TsDqvQePVlSfCHbfFabEGuttCfir2a1lBp85HbspnyVyCOdBPS7X6SbKsJWwAa7YA==; 25:JIgrXGhzPXviATquHvbY0R8+3wKBnOwC9vDlxz7+7zHRqHXdankCn3k5dNedpw02Qq2ALBKMPfHGDj/lz++QIQAYNLG0ieK3CmwiuvLWRpjR0de2Jf8uQKAIqUaBwkVq7E0aMtWn58Qv2++JcLmqWOo4PsaBKnBfjWj4qrkBE7YQGMLAmEtIOOgfWSl32gp58OZK3i+5ck0W6QQOkBZmdrAhcDFnRQgIxe8aQ9TaxACGy6uqzhjm/sx6x/W7x4o2dYlnu3PjF0SV1qcoHyrOUX+xHI0kbRwj93KdsjCy7f7wVSxX6G3mb5NVnVhMHcGO X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(8251501001); SRVR:CY1PR0201MB0827; X-MS-Office365-Filtering-Correlation-Id: ab9dc67a-2697-4050-81a0-08d32db4f8cf X-Microsoft-Exchange-Diagnostics: 1; CY1PR0201MB0827; 20:rDlhNsylod/gLsYwJrXrCtWCRmr5eqEzC/LagCGo171ISM3AempdoJBraZ9HUD7m8SPaG/byPHlrt8+thzjLckwwjeqdNrONGYftdu1wJcIwZvNnQ3z15/QpiRFqbIj9jKgfKnq2y/59XGTXdumO6zS+Rgx8WpBKe7oHrmDDZPchkRCCMKMiC9122YPvHfZ4FHz5xuF3GRiO1w9v0KHNH37vf0qFEezAyX4C/0+e+oGvwx4rxXB7rzSTvCvPvlVqqFlBhfAC1hFjeYdaDXwsN+TA6PyhpzTELYQZXnegoxFu8tToTURUCJPTGfbIzhiTD89ozLPUiJgRTj631uFg22zbHQBAj+e/wQt/ru44npBoTUCuIph5irCT91XIo/ny/ZZ1JshIMq+1skzZThiFOBAZbsKdKtIdHfugpL3juI9e0AZFxUpr8lKgVAVQF8qENLI1mM39JKJqntL+2T992P1urAdBKXv4pvqrfUSERf23rfrpTFdCl/4HR6UavzkL X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(34787635062028)(42932892334569); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(13023025)(13015025)(5005006)(13017025)(13024025)(13018025)(8121501046)(3002001)(10201501046); SRVR:CY1PR0201MB0827; BCL:0; PCL:0; RULEID:; SRVR:CY1PR0201MB0827; X-Microsoft-Exchange-Diagnostics: 1; CY1PR0201MB0827; 4:mAYnwAIn6H56xEVKHkMkZAPdIjk5hnvdD/84TshppbQIYmhMn8RbxoihnmrvIJwIzd+Rxo8lMEwm+k6LWpRjHBuEtxKlSKkwoBvAMkGdnly0GpEK3QkvB7NjnmTXmcLCdjoXv5640aDbeCAKIEhW0ClKvbs8JoFWjYkkO8fIfYRmgS6Db1YvdXu2XzOWrVoT/8YJ0bjD7UeJm2zi/qVxDXM4V/CgiXvhPQgVrIoVfFf0k51GOvHVAYpGV1/UYQsqh9mIBNzaELPInZSFPtwgsr61pOw7JECYBi8aRM4+xr76B8PNiy0i36ZD7uwLjozkJ1mbDsyvXJgj6wzdz0EgY5qR5qXuD1AORt4C0tpk6ODmmNrXId46efVyAW7x7BJ1RD404g+ulGg6WsWf6eqUqpQ1xDiZi0O/ooGB0jJ4To79Bcmd9cBlxpeyxQYl/MUDM0eQy6QnghTDdrnLKlyACaIyr3OmMTri7QBIQb7xoTdjRV9n5RlLxB9QtcOdj6xhyeWki+eBoVsHQG4/fakbOxo+CQhaw6PaTfma1S/GwUU= X-Forefront-PRVS: 084285FC5C X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtDWTFQUjAyMDFNQjA4Mjc7MjM6TU52STA1R3YxaS9oMjFWckhQY2tKYXB3?= =?utf-8?B?Z0ViMy95L1c5RG92UkNmcytPeFBrNXJYLzhpMFJLSk5wWHR3WDBUYUZ5Sk9v?= =?utf-8?B?S0hVMXFud1c1a0RtQjhoYUg3cGQ2VEpkV2RxUWFMWGVjc0pjZ1dTSS9CUURG?= =?utf-8?B?Q0xGa1lXNkt4ZzlmUnJYSndDTHZEYUpuUis4anhsa1NXQ0VxYXVRSHl2UlFj?= =?utf-8?B?WHd5YjlUNjhLOVpkZlJ5ODArSUx3b05RMFpLSDVMM2pXcHNSUXR0cUtFd1k4?= =?utf-8?B?QkdMYVkvWk5sQXpZdEk4bVA4TXVnVXgzRDROMHBwaldBUUlaNDJVTmZCK0R1?= =?utf-8?B?ekxVMkRMbGxXcURMOTVvcjNTdWR0dzhDc0Z4bDVwN2dqeU0yT1ZJT0Q4QW1R?= =?utf-8?B?TmdFeGJaQkRhaXRXZ09TckNUK1lLYVVFc2h5c1Zaa1BzNFM1YlJBdzI5UUlu?= =?utf-8?B?UmU5aHdLcFFybTV2czFrdWhtZDY3OUpIeFB5V1EyNmE4ZVZtZ09NTG1tOXdB?= =?utf-8?B?emZZWXFNZk1nZVgzOXp3bWN0QmdnZ2ZTLzU3VzJORUZXdzFFc0RQYWE2bVMz?= =?utf-8?B?VTh2RzkrZFdoZHMzMUJ0cHcyMkZaVG5Oa3RoSnlSTGt0amx3dlJlVTdicXdE?= =?utf-8?B?VEdRTisxZC9SN1hGVjhGSkVQZVkxSVE3ZzlhUnh2S2hQMjV2bzVrKzlYM0pT?= =?utf-8?B?eldhd0tUS2tXM3VIMUx6dDNNdTRKOVByNXhHSEFnU0xHZkFsbVpuVDl3NmZl?= =?utf-8?B?bXA3YUxrTTZHam52dDd1RGpVekJVanI3NGlJd0x2enZ0OTZWVWJESGptY1Rz?= =?utf-8?B?Vk5CaVRST01Mek1JZ3ZlOFNKUWpzQk8wYmdWdlJXbUtZTk9FaFY0R2lsR1cw?= =?utf-8?B?RFNMRUhhbndTbHFJbjdzc3lwQlNBWVRpdXBzZkY0ODA1NnF0N004anBacnVP?= =?utf-8?B?cUQ2dTE1SHQyWHBLWk5vWi9QT1NrMkFLOTJNR0FMTGprdm02TUhiNXdHY25I?= =?utf-8?B?d2o0WEJGejc2R214azNnejBLcDZiN0dHZmlrSnRONWMzT0tZRHRJNUt1Z0g0?= =?utf-8?B?S21KRDdjeXY1aCtjb3JkRTJMTmxCVDQwVS9TZ3l2YzhGNVoyUW40REl1S3F2?= =?utf-8?B?TkRmMklNRGZDM0hFc1RaTnJBQ1pTYjVDVW81dlZZSVJTc0hMRTZuUHJUNWJH?= =?utf-8?B?a0VoMzR3N040dVpzc0lsYXdWMk5XcHhtUVZ2QU5oTHFvcVgxWW5JWXgrMy95?= =?utf-8?B?MlpEUWxLNmZ6ald4TlJqR2gwSXNvbkpEK0s1MVNqTFNBMjV2ZXBURlpKcktO?= =?utf-8?B?ODNkWEs3YWMydnVoQkY3Vy9XcEZzaVUvVkVkM014R1VESGVpb09OSmVjQ0t0?= =?utf-8?Q?C/Isc4Tvcj?= X-Microsoft-Exchange-Diagnostics: 1; CY1PR0201MB0827; 5:p8petLX9IZizHF7KwNPd5aYmkZgTQxksNKAT6ybq5RaHqo5dmU8nQog71d7aWAWPgwCnq/aYUAjHsEE/89QajlRmawfOWL0LFGKuRNPTwabR3TNXfSN8Ok8toL/J64BKoP6oCKvWnXmekmKIWhQZug==; 24:WfbXnp3bM6i08+ogiDV8LarRz/F3kzsfa5ODELFFgOG5XK9rheefvm4YJ0UwE7jzoFQtrnByNcvf2Tj7CI+XfS6T9dOyomhPc3qiR/c3hlU=; 20:nv41UvZDis2+q+H99Zvr3EbTHdkSNu4iivOkU3WFWpIenxthtVH7VZrZW52eidh1PWvm5FPrfPp5QgaTdtOum4kwm36FCMA6yuepEv2ShCZ0XKBAvGxuTRaLZFXt/OXzC4WMfvwGbvAyR80fY1CadCMnqqCimV590qxT682otIKhdMIvixb2fesq6OTepLFaF4HjxoYWdbmyctzqfdCySwYL6glJwnwws0fpc8sW/w/bnKHgsyMFxVZYymDA9p2N SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: sandisk.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Feb 2016 22:46:07.4843 (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.172]; Helo=[milsmgep11.sandisk.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0201MB0827 Sender: linux-rdma-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-rdma@vger.kernel.org X-Spam-Status: No, score=-7.2 required=5.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,RP_MATCHES_RCVD,T_DKIM_INVALID,UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Let the target core check task existence instead of the SRP target driver. Additionally, let the target core check the validity of the task management request instead of the ib_srpt driver. This patch fixes the following kernel crash: BUG: unable to handle kernel NULL pointer dereference at 0000000000000001 IP: [] srpt_handle_new_iu+0x6d7/0x790 [ib_srpt] Oops: 0002 [#1] SMP Call Trace: [] srpt_process_completion+0xde/0x570 [ib_srpt] [] srpt_compl_thread+0x13f/0x160 [ib_srpt] [] kthread+0xcf/0xe0 [] ret_from_fork+0x7c/0xb0 Signed-off-by: Bart Van Assche Fixes: 3e4f574857ee ("ib_srpt: Convert TMR path to target_submit_tmr") Tested-by: Alex Estrin Reviewed-by: Christoph Hellwig Cc: Nicholas Bellinger Cc: Sagi Grimberg Cc: stable --- drivers/infiniband/ulp/srpt/ib_srpt.c | 59 +---------------------------------- 1 file changed, 1 insertion(+), 58 deletions(-) diff --git a/drivers/infiniband/ulp/srpt/ib_srpt.c b/drivers/infiniband/ulp/srpt/ib_srpt.c index 0c37fee..4328679 100644 --- a/drivers/infiniband/ulp/srpt/ib_srpt.c +++ b/drivers/infiniband/ulp/srpt/ib_srpt.c @@ -1670,47 +1670,6 @@ send_sense: return -1; } -/** - * srpt_rx_mgmt_fn_tag() - Process a task management function by tag. - * @ch: RDMA channel of the task management request. - * @fn: Task management function to perform. - * @req_tag: Tag of the SRP task management request. - * @mgmt_ioctx: I/O context of the task management request. - * - * Returns zero if the target core will process the task management - * request asynchronously. - * - * Note: It is assumed that the initiator serializes tag-based task management - * requests. - */ -static int srpt_rx_mgmt_fn_tag(struct srpt_send_ioctx *ioctx, u64 tag) -{ - struct srpt_device *sdev; - struct srpt_rdma_ch *ch; - struct srpt_send_ioctx *target; - int ret, i; - - ret = -EINVAL; - ch = ioctx->ch; - BUG_ON(!ch); - BUG_ON(!ch->sport); - sdev = ch->sport->sdev; - BUG_ON(!sdev); - spin_lock_irq(&sdev->spinlock); - for (i = 0; i < ch->rq_size; ++i) { - target = ch->ioctx_ring[i]; - if (target->cmd.se_lun == ioctx->cmd.se_lun && - target->cmd.tag == tag && - srpt_get_cmd_state(target) != SRPT_STATE_DONE) { - ret = 0; - /* now let the target core abort &target->cmd; */ - break; - } - } - spin_unlock_irq(&sdev->spinlock); - return ret; -} - static int srp_tmr_to_tcm(int fn) { switch (fn) { @@ -1745,7 +1704,6 @@ static void srpt_handle_tsk_mgmt(struct srpt_rdma_ch *ch, struct se_cmd *cmd; struct se_session *sess = ch->sess; uint64_t unpacked_lun; - uint32_t tag = 0; int tcm_tmr; int rc; @@ -1761,25 +1719,10 @@ static void srpt_handle_tsk_mgmt(struct srpt_rdma_ch *ch, srpt_set_cmd_state(send_ioctx, SRPT_STATE_MGMT); send_ioctx->cmd.tag = srp_tsk->tag; tcm_tmr = srp_tmr_to_tcm(srp_tsk->tsk_mgmt_func); - if (tcm_tmr < 0) { - send_ioctx->cmd.se_tmr_req->response = - TMR_TASK_MGMT_FUNCTION_NOT_SUPPORTED; - goto fail; - } unpacked_lun = srpt_unpack_lun((uint8_t *)&srp_tsk->lun, sizeof(srp_tsk->lun)); - - if (srp_tsk->tsk_mgmt_func == SRP_TSK_ABORT_TASK) { - rc = srpt_rx_mgmt_fn_tag(send_ioctx, srp_tsk->task_tag); - if (rc < 0) { - send_ioctx->cmd.se_tmr_req->response = - TMR_TASK_DOES_NOT_EXIST; - goto fail; - } - tag = srp_tsk->task_tag; - } rc = target_submit_tmr(&send_ioctx->cmd, sess, NULL, unpacked_lun, - srp_tsk, tcm_tmr, GFP_KERNEL, tag, + srp_tsk, tcm_tmr, GFP_KERNEL, srp_tsk->task_tag, TARGET_SCF_ACK_KREF); if (rc != 0) { send_ioctx->cmd.se_tmr_req->response = TMR_FUNCTION_REJECTED;