From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: Matthias Kaehlcke <mkaehlcke@e2s.net>
Cc: linux-scsi@vger.kernel.org, kernel@wantstofly.org
Subject: Re: [ep93xx] Oops when inserting USB storage in 2.6.27
Date: Mon, 27 Oct 2008 09:19:16 -0500 [thread overview]
Message-ID: <1225117156.5146.1.camel@localhost.localdomain> (raw)
In-Reply-To: <4905A794.7000806@e2s.net>
On Mon, 2008-10-27 at 12:35 +0100, Matthias Kaehlcke wrote:
> hi,
>
> James Bottomley wrote:
> > On Fri, 2008-10-24 at 09:05 +0200, Matthias Kaehlcke wrote:
> >> hi,
> >>
> >> inserting a Verbatim 4GB USB stick in a ep9307 based device running
> >> kernel 2.6.27 results in the following Oops:
> >>
> >> [42949395.050000] usb 1-3: new full speed USB device using ep93xx-ohci
> >> and address 2
> >> [42949395.250000] usb 1-3: configuration #1 chosen from 1 choice
> >> [42949395.260000] scsi0 : SCSI emulation for USB Mass Storage devices
> >> [42949395.270000] usb 1-3: New USB device found, idVendor=13fe,
> >> idProduct=1f23
> >> [42949395.280000] usb 1-3: New USB device strings: Mfr=1, Product=2,
> >> SerialNumber=3
> >> [42949395.280000] usb 1-3: Product: STORE N GO
> >> [42949395.300000] usb 1-3: Manufacturer: Verbatim
> >> [42949395.310000] usb 1-3: SerialNumber: 078813D90478
> >> [42949400.280000] Unable to handle kernel NULL pointer dereference at
> >> virtual address 00000003
> >> [42949400.280000] pgd = c0648000
> >> [42949400.300000] [00000003] *pgd=c0647031, *pte=00000000, *ppte=00000000
> >> [42949400.300000] Internal error: Oops: 13 [#1] PREEMPT
> >> [42949400.300000] Modules linked in:
> >> [42949400.300000] CPU: 0 Not tainted (2.6.27 #3)
> >> [42949400.300000] PC is at scsi_calculate_bounce_limit+0x3c/0x44
> >
> > Best guess is this line:
> >
> > if (host_dev && host_dev->dma_mask)
> > bounce_limit = *host_dev->dma_mask;
> >
> > I'd guess host_dev->dma_mask contains 0x3 ... could this be some sort of
> > ARM setup problem?
>
> thanks for having a look!
>
> i could figure out the difference between 2.6.26.3 and 2.6.27 that
> triggers the Oops:
>
> diff -u linux-2.6.26.3/include/asm-arm/pci.h
> linux-2.6.27/arch/arm/include/asm/pci.h
>
> ...
> @@ -30,7 +30,7 @@
> * The networking and block device layers use this boolean for bounce
> * buffer decisions.
> */
> -#define PCI_DMA_BUS_IS_PHYS (0)
> +#define PCI_DMA_BUS_IS_PHYS (1)
>
> /*
> * Whether pci_unmap_{single,page} is a nop depends upon the
> ...
>
> this change affects the following piece of code in
> scsi_calculate_bounce_limit():
>
> if (!PCI_DMA_BUS_IS_PHYS)
> return BLK_BOUNCE_ANY;
>
> host_dev = scsi_get_device(shost);
> if (host_dev && host_dev->dma_mask)
> bounce_limit = *host_dev->dma_mask;
>
>
> host_dev->dma_mask is 0xffffffff and we try to dereference the pointer
So the host_dev is some type of arm platform device? If so, it's got
it's dma_mask set up wrongly. it's a pointer in struct device and is
supposed to point to the real u64 quantity located within the actual
enclosing device.
James
next prev parent reply other threads:[~2008-10-27 14:19 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-10-24 7:05 [ep93xx] Oops when inserting USB storage in 2.6.27 Matthias Kaehlcke
2008-10-24 22:30 ` James Bottomley
2008-10-27 11:35 ` Matthias Kaehlcke
2008-10-27 14:19 ` James Bottomley [this message]
2008-10-27 16:22 ` Matthias Kaehlcke
2008-10-27 17:05 ` FUJITA Tomonori
2008-10-28 7:56 ` Matthias Kaehlcke
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1225117156.5146.1.camel@localhost.localdomain \
--to=james.bottomley@hansenpartnership.com \
--cc=kernel@wantstofly.org \
--cc=linux-scsi@vger.kernel.org \
--cc=mkaehlcke@e2s.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.