Bug 11589 - Mass-storage USB Device does not show up when CONFIG_SCSI_MULTI_LUN is set
Summary: Mass-storage USB Device does not show up when CONFIG_SCSI_MULTI_LUN is set
Status: CLOSED OBSOLETE
Alias: None
Product: SCSI Drivers
Classification: Unclassified
Component: Other (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: scsi_drivers-other
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-09-18 18:22 UTC by nico
Modified: 2012-05-22 14:09 UTC (History)
1 user (show)

See Also:
Kernel Version: 2.6.26.5
Subsystem:
Regression: No
Bisected commit-id:


Attachments
dmesg output when CONFIG_SCSI_MULTI_LUN is DISABLED (9.21 KB, text/plain)
2008-09-18 18:23 UTC, nico
Details
dmesg output when CONFIG_SCSI_MULTI_LUN is ENABLED (1.26 KB, text/plain)
2008-09-18 18:24 UTC, nico
Details

Description nico 2008-09-18 18:22:23 UTC
Latest working kernel version: I *guess* all before 2.6.26
Earliest failing kernel version: Not sure. See above
Distribution: Gentoo Linux
Hardware Environment: Mobo: Abit IC7-G
Software Environment:
Problem Description:

The problem is about my mobile phone (Sony Ericsson K810i) which normally shows up as two devices (phones internal memory and the memory card in it) when plugging it to USB. Just like any USB Memory stick.

The phones internal memory is fine, it shows up as /dev/sdc1 with multi_lun enabled or disabled and it does not show any warnings, thats how the memory card in the phone used to work too. I don't know with what kernel version this started, but let me explain it:

When CONFIG_SCSI_MULTI_LUN is set, the memory card does not show up as it should, I only see /dev/sdd but not /dev/sdd1 - it's unable to mount it that way.
When CONFIG_SCSI_MULTI_LUN is not set, it does show up as /dev/sdd1 but gives me loads of warnings like "attempt to access beyond end of device", see dmesg for that. This way it is mountable and works fine except the warnings.

Steps to reproduce: Plug Sony Ericsson K810i to USB and set it to file transfer mode.
Comment 1 nico 2008-09-18 18:23:56 UTC
Created attachment 17872 [details]
dmesg output when CONFIG_SCSI_MULTI_LUN is DISABLED
Comment 2 nico 2008-09-18 18:24:54 UTC
Created attachment 17873 [details]
dmesg output when CONFIG_SCSI_MULTI_LUN is ENABLED
Comment 3 Anonymous Emailer 2008-09-18 19:12:42 UTC
Reply-To: akpm@linux-foundation.org

On Thu, 18 Sep 2008 18:22:23 -0700 (PDT) bugme-daemon@bugzilla.kernel.org wrote:

> http://bugzilla.kernel.org/show_bug.cgi?id=11589
> 
>            Summary: Mass-storage USB Device does not show up when
>                     CONFIG_SCSI_MULTI_LUN is set
>            Product: SCSI Drivers
>            Version: 2.5
>      KernelVersion: 2.6.26.5
>           Platform: All
>         OS/Version: Linux
>               Tree: Mainline
>             Status: NEW
>           Severity: normal
>           Priority: P1
>          Component: Other
>         AssignedTo: scsi_drivers-other@kernel-bugs.osdl.org
>         ReportedBy: nico@lifeisabug.com
> 
> 
> Latest working kernel version: I *guess* all before 2.6.26
> Earliest failing kernel version: Not sure. See above
> Distribution: Gentoo Linux
> Hardware Environment: Mobo: Abit IC7-G
> Software Environment:
> Problem Description:
> 
> The problem is about my mobile phone (Sony Ericsson K810i) which normally
> shows
> up as two devices (phones internal memory and the memory card in it) when
> plugging it to USB. Just like any USB Memory stick.
> 
> The phones internal memory is fine, it shows up as /dev/sdc1 with multi_lun
> enabled or disabled and it does not show any warnings, thats how the memory
> card in the phone used to work too. I don't know with what kernel version
> this
> started, but let me explain it:
> 
> When CONFIG_SCSI_MULTI_LUN is set, the memory card does not show up as it
> should, I only see /dev/sdd but not /dev/sdd1 - it's unable to mount it that
> way.
> When CONFIG_SCSI_MULTI_LUN is not set, it does show up as /dev/sdd1 but gives
> me loads of warnings like "attempt to access beyond end of device", see dmesg
> for that. This way it is mountable and works fine except the warnings.
> 
> Steps to reproduce: Plug Sony Ericsson K810i to USB and set it to file
> transfer
> mode.
> 

Another of those might-be-usb, might-be-scsi bugs.  Apparently a
regression, too.
Comment 4 Anonymous Emailer 2008-09-18 19:40:59 UTC
Reply-To: mdharm-scsi@one-eyed-alien.net

On Thu, Sep 18, 2008 at 07:12:31PM -0700, Andrew Morton wrote:
> On Thu, 18 Sep 2008 18:22:23 -0700 (PDT) bugme-daemon@bugzilla.kernel.org
> wrote:
> 
> > When CONFIG_SCSI_MULTI_LUN is set, the memory card does not show up as it
> > should, I only see /dev/sdd but not /dev/sdd1 - it's unable to mount it
> that
> > way.
> > When CONFIG_SCSI_MULTI_LUN is not set, it does show up as /dev/sdd1 but
> gives
> > me loads of warnings like "attempt to access beyond end of device", see
> dmesg
> > for that. This way it is mountable and works fine except the warnings.

If /dev/sdd shows up but not /dev/sdd1, then this is probably actually the
partition parsing code.  There was a change to reject badly formed
partitions; I believe someone is trying to revert that change.

Matt

Note You need to log in before you can comment on or make changes to this bug.