From patchwork Sun Apr 8 16:02:54 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wakko Warner X-Patchwork-Id: 10328359 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 1A2366037F for ; Sun, 8 Apr 2018 16:03:01 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 07F631FF1E for ; Sun, 8 Apr 2018 16:03:01 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id F0AA128402; Sun, 8 Apr 2018 16:03:00 +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=-7.9 required=2.0 tests=BAYES_00, MAILING_LIST_MULTI, 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 2986E1FF1E for ; Sun, 8 Apr 2018 16:03:00 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752077AbeDHQC5 (ORCPT ); Sun, 8 Apr 2018 12:02:57 -0400 Received: from tn-76-7-174-50.sta.embarqhsd.net ([76.7.174.50]:56931 "EHLO animx.eu.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751998AbeDHQC5 (ORCPT ); Sun, 8 Apr 2018 12:02:57 -0400 Received: from wakko by animx.eu.org with local (Exim 4.87 #3 (Debian Bug? What bug /\oo/\)) id 1f5CmM-0006R6-7o; Sun, 08 Apr 2018 12:02:54 -0400 Date: Sun, 8 Apr 2018 12:02:54 -0400 From: Wakko Warner To: Bart Van Assche Cc: "linux-scsi@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "richard.weinberger@gmail.com" , "linux-block@vger.kernel.org" Subject: Re: 4.15.14 crash with iscsi target and dvd Message-ID: <20180408160254.GA22869@animx.eu.org> References: <20180401113721.GA8471@animx.eu.org> <20180401163604.GB25011@animx.eu.org> <20180401182723.GA31755@animx.eu.org> <595a10cfb387e6b2ab4d2053b84fed9b3da9e079.camel@wdc.com> <20180406014644.GA16112@animx.eu.org> <20180406020651.GB16112@animx.eu.org> <20180407165335.GA2515@animx.eu.org> <1ff8d234cc565ba9701ce31899fca5faa597e050.camel@wdc.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <1ff8d234cc565ba9701ce31899fca5faa597e050.camel@wdc.com> User-Agent: Mutt/1.5.21 (2010-09-15) 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 Bart Van Assche wrote: > On Sat, 2018-04-07 at 12:53 -0400, Wakko Warner wrote: > > Bart Van Assche wrote: > > > On Thu, 2018-04-05 at 22:06 -0400, Wakko Warner wrote: > > > > I know now why scsi_print_command isn't doing anything. cmd->cmnd is null. > > > > I added a dev_printk in scsi_print_command where the 2 if statements return. > > > > Logs: > > > > [ 29.866415] sr 3:0:0:0: cmd->cmnd is NULL > > > > > > That's something that should never happen. As one can see in > > > scsi_setup_scsi_cmnd() and scsi_setup_fs_cmnd() both functions initialize > > > that pointer. Since I have not yet been able to reproduce myself what you > > > reported, would it be possible for you to bisect this issue? You will need > > > to follow something like the following procedure (see also > > > https://git-scm.com/docs/git-bisect): > > > > After doing 3 successful compiles with good/bad, I got this error and was > > not able to compile any more kernels: > > CC scripts/mod/devicetable-offsets.s > > scripts/mod/empty.c:1:0: error: code model kernel does not support PIC mode > > /* empty file to figure out endianness / word size */ > > > > scripts/mod/devicetable-offsets.c:1:0: error: code model kernel does not support PIC mode > > #include > > > > scripts/Makefile.build:153: recipe for target 'scripts/mod/devicetable-offsets.s' failed > > > > I don't think it found the bad commit. > > Have you tried to modify the kernel Makefile as indicated in the following > e-mail? This should make the kernel build: > > https://lists.ubuntu.com/archives/kernel-team/2016-May/077178.html Thanks. That helped. I finished with git bisect. Here's the output: 84c8590646d5b35804bac60eb58b145839b5893e is the first bad commit commit 84c8590646d5b35804bac60eb58b145839b5893e Author: Ming Lei Date: Fri Nov 11 20:05:32 2016 +0800 target: avoid accessing .bi_vcnt directly When the bio is full, bio_add_pc_page() will return zero, so use this information tell when the bio is full. Also replace access to .bi_vcnt for pr_debug() with bio_segments(). Reviewed-by: Christoph Hellwig Signed-off-by: Ming Lei Reviewed-by: Sagi Grimberg Signed-off-by: Jens Axboe :040000 040000 a3ebbb71c52ee4eb8c3be4d033b81179211bf704 de39a328dbd1b18519946b3ad46d9302886e0dd0 M drivers I did a diff between HEAD^ and HEAD and manually patched the file from 4.15.14. It's not an exact revert. I'm running it now and it's working. I'll do a better test later on. Here's the patch: I really appreciate your time and assistance with this. --- a/drivers/target/target_core_pscsi.c 2018-02-04 14:31:31.077316617 -0500 +++ b/drivers/target/target_core_pscsi.c 2018-04-08 11:43:49.588641374 -0400 @@ -915,7 +915,9 @@ bio, page, bytes, off); pr_debug("PSCSI: bio->bi_vcnt: %d nr_vecs: %d\n", bio_segments(bio), nr_vecs); - if (rc != bytes) { + if (rc != bytes) + goto fail; + if (bio->bi_vcnt > nr_vecs) { pr_debug("PSCSI: Reached bio->bi_vcnt max:" " %d i: %d bio: %p, allocating another" " bio\n", bio->bi_vcnt, i, bio);