Re: [xhci] kernel BUG at include/linux/scatterlist.h:115!

From: Dan Williams
Date: Wed Jul 30 2014 - 20:10:56 EST


On Tue, Jul 29, 2014 at 8:57 PM, Fengguang Wu <fengguang.wu@xxxxxxxxx> wrote:
> Greetings,
>
> 0day kernel testing robot got the below dmesg and the first bad commit is
>
> git://git.kernel.org/pub/scm/linux/kernel/git/djbw/usb.git td-fragments-v1
> commit 61d9c2ad31b11b87c319bbc2a963040742bac77c
> Author: Dan Williams <dan.j.williams@xxxxxxxxx>
> AuthorDate: Tue Jul 22 00:08:51 2014 -0700
> Commit: Dan Williams <dan.j.williams@xxxxxxxxx>
> CommitDate: Thu Jul 24 18:12:38 2014 -0700
>
> xhci: unit test ring enqueue/dequeue routines
>
> Given the complexity of satisfying xhci 1.0+ host trb boundary
> constraints, provide a test case that exercises inserting mid-segment
> links into a ring.
>
> The linker --wrap= option is used to not pollute the global identifier
> space and to make it clear which standard xhci driver routines are being
> mocked-up. The --wrap= option does not come into play when both
> xhci-hcd and xhci-test are built-in to the kernel, so namespace
> collisions are prevented by excluding xhci-test from the build when
> xhci-hcd is built-in.
>
> It's unfortunate that this is an in-kernel test rather than userspace
> and that the infrastructure is custom rather than generic. That said,
> it serves its purpose of exercising the corner cases of the scatterlist
> parsing implementation in xhci.
>
> Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>

Looks like I either need specify valid addresses to sg_set_buf(), or
just make the unit test depend on !CONFIG_DEBUG_SG. I'll go with the
latter since this test is not about scatterlist api correctness and
there's nothing to be gained by unwinding virt_addr_valid()
requirements for this.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/