Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752433AbcKPLfg (ORCPT ); Wed, 16 Nov 2016 06:35:36 -0500 Received: from mx2.suse.de ([195.135.220.15]:50575 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751100AbcKPLfc (ORCPT ); Wed, 16 Nov 2016 06:35:32 -0500 Date: Wed, 16 Nov 2016 12:35:13 +0100 From: Johannes Thumshirn To: Steffen Maier Cc: "Martin K . Petersen" , Christoph Hellwig , Hannes Reinecke , Linux Kernel Mailinglist , Linux SCSI Mailinglist , Martin Schwidefsky , Heiko Carstens , Anil Gurumurthy , Sudarsana Kalluru , "James E.J. Bottomley" , Tyrel Datwyler , Benjamin Herrenschmidt , Paul Mackerras , Michael Ellerman , Johannes Thumshirn , James Smart , Dick Kennedy , "supporter:QLOGIC QLA2XXX FC-SCSI DRIVER" , "open list:S390 ZFCP DRIVER" , "open list:LINUX FOR POWERPC (32-BIT AND 64-BIT)" , "open list:FCOE SUBSYSTEM (libfc, libfcoe, fcoe)" Subject: Re: [PATCH v3 02/16] scsi: don't use fc_bsg_job::request and fc_bsg_job::reply directly Message-ID: <20161116113459.clrumsyjj3n7iqrd@linux-x5ow.site> References: <20161014073821.qvkpjtwraqnwzzs3@linux-x5ow.site> <20161025074313.4ma4czgdj46imaei@linux-x5ow.site> <20161115115622.j4ker3atejcodqrc@linux-x5ow.site> <8647eacd-a029-dff0-4f78-dafef89a5ad9@linux.vnet.ibm.com> <20161115153933.ktho6pui7awuvfyx@linux-x5ow.site> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20161115153933.ktho6pui7awuvfyx@linux-x5ow.site> User-Agent: Mutt/1.6.2 (2016-07-01) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3057 Lines: 68 On Tue, Nov 15, 2016 at 04:39:33PM +0100, Johannes Thumshirn wrote: > On Tue, Nov 15, 2016 at 03:31:27PM +0100, Steffen Maier wrote: > > Hi Johannes, > > > > On 11/15/2016 12:56 PM, Johannes Thumshirn wrote: > > > On Tue, Oct 25, 2016 at 09:43:14AM +0200, Johannes Thumshirn wrote: > > > > On Fri, Oct 14, 2016 at 09:38:21AM +0200, Johannes Thumshirn wrote: > > > > > On Thu, Oct 13, 2016 at 05:55:11PM +0200, Steffen Maier wrote: > > > > > > Hm, still behaves for me like I reported for v2: > > > > > > http://marc.info/?l=linux-scsi&m=147637177902937&w=2 > > > > > > [...] > > > > > > > > > > > > > The rational behind this is, in fc_req_to_bsgjob() we're assigning > > > > > job->request as req->cmd and job->request_len = req->cmd_len. But without > > > > > checkinf job->request_len we don't know whether we're save to touch > > > > > job->request (a.k.a. bsg_request). > > > > > > > > Hi Steffen, > > > > Did you have any chance testing this? I hacked fcping to work with non-FCoE > > > > and rports as well and tested with FCoE and lpfc. No problems seen from my > > > > side. I've also pused the series (With this change folded in) to my git > > > > tree at [1] if this helps you in any way. > > > > > > > > [1] https://git.kernel.org/cgit/linux/kernel/git/jth/linux.git/log/?h=scsi-bsg-rewrite-v4 > > > > > > > > > > So I finally have a test system up and running. I have good and bad news. The > > > good news is, I can't get the system crashing with my patches, the bad news is > > > I can't get zfcp_ping and zfcp_show to output something but HBA_STATUS_ERROR > > > with my patches and without. > > Please ignore my last mails, apparently it's a wise idea to check which user > id one has before running zfcp_ping... > > The good news for this is, I can now recreate the crashes you have and thus > have a chance to fix them :-) So JFTR, I was able to fix the 1 problem introduced by this patch, it's the follwoing hunk: @@ -3726,9 +3729,9 @@ fc_req_to_bsgjob(struct Scsi_Host *shost, struct fc_rport *rport, if (i->f->dd_bsg_size) job->dd_data = (void *)&job[1]; spin_lock_init(&job->job_lock); - job->request = (struct fc_bsg_request *)req->cmd; + bsg_request = (struct fc_bsg_request *)req->cmd; job->request_len = req->cmd_len; - job->reply = req->sense; + bsg_reply = req->sense; job->reply_len = SCSI_SENSE_BUFFERSIZE; /* Size of sense buffer * allocated */ if (req->bio) { But as fc_req_to_bsgjob() get's deleted in Patch 15/16 the problem is re-introduced. Unfortunately the fix isn't as trivial as for 2/16 so I'm still trying to nail it down. Thanks, Johannes -- Johannes Thumshirn Storage jthumshirn@suse.de +49 911 74053 689 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 N?rnberg GF: Felix Imend?rffer, Jane Smithard, Graham Norton HRB 21284 (AG N?rnberg) Key fingerprint = EC38 9CAB C2C4 F25D 8600 D0D0 0393 969D 2D76 0850