Re: [PATCH v3 02/16] scsi: don't use fc_bsg_job::request and fc_bsg_job::reply directly
From: Johannes Thumshirn <hidden>
Date: 2016-11-15 14:48:36
Also in:
linux-scsi, linuxppc-dev
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:quoted
On Tue, Oct 25, 2016 at 09:43:14AM +0200, Johannes Thumshirn wrote:quoted
On Fri, Oct 14, 2016 at 09:38:21AM +0200, Johannes Thumshirn wrote:quoted
On Thu, Oct 13, 2016 at 05:55:11PM +0200, Steffen Maier wrote:quoted
Hm, still behaves for me like I reported for v2: http://marc.info/?l=linux-scsi&m=147637177902937&w=2[...]quoted
quoted
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-v4So 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.Assuming you run the latest package version on s390x: Do steps 2 and 3 of the procedure in http://www.ibm.com/support/knowledgecenter/linuxonibm/com.ibm.linux.z.lhdd/lhdd_t_fcp_api_runappl.html help?
No, I do have a correct /etc/hba.conf: $ grep libzfcphbaapi /etc/hba.conf com.ibm.libzfcphbaapi /usr/lib64/libzfcphbaapi.so.0 and bumping the log level via export LIB_ZFCP_HBAAPI_LOG_LEVEL=1 just adds '(vlib.c:105)_initvlib: libzfcphbaapi.so loaded at Nov 15 15:43:23' to the 1st line of zfcp_ping output. Here's the full output: $ zfcp_ping -v -a 0.0.fc00 -d 0x50050763051b473a (vlib.c:105)_initvlib: libzfcphbaapi.so loaded at Nov 15 15:45:33 Sending PNG from BUS_ID=0.0.fc00 WWPN=0xc05076e0f3002344 ID=0x760c1c dev=/dev/bsg/fc_host1 speed=8 GBit/s
--- REQUEST cmd = 0x0401 ---03 00 00 00 fa 01 00 00 04 01 00 01 00 00 00 00 00 00 00 01 00 02 00 08 50 05 07 63 05 1b 47 3a 00 00 00 00
--- RESPONSE rc = 0x1 ---00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
--- REQUEST cmd = 0x0401 ---03 00 00 00 fa 01 00 00 04 01 00 01 00 00 00 00 00 00 00 01 00 02 00 08 50 05 07 63 05 1b 47 3a 00 00 00 00
--- RESPONSE rc = 0x1 ---00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
--- REQUEST cmd = 0x0401 ---03 00 00 00 fa 01 00 00 04 01 00 01 00 00 00 00 00 00 00 01 00 02 00 08 50 05 07 63 05 1b 47 3a 00 00 00 00
--- RESPONSE rc = 0x1 ---00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Error received for FPNG request, aborting. ---------- ping statistics ----------- min/avg/max = 0.000/0.000/0.000 ms -------------------------------------- I agree this looks a bit suspicious and I'll add some debugs in the kernel to see what's going on.
The only other thing I can think of from the top of my head is that BSG ioctls are sensitive regarding ABI and I once had the kernel ioctl return EINVAL due to unmatching kernel-headers and libzfcphbaapi maps this EINVAL to HBA_STATUS_ERROR because there is no more specifically suitable HBA constant [old SUSE bugs 834498 and 834500].quoted
And btw, I renamed the branch to fc-bsg-rewrite-v4 in case you want to clone from it (it has patch 2/16 changed to the v3 submission). Can you please have a look with your setup?I'm going to re-test hopefully within the next few days.
That'll be great, thanks. Byte, 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