Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 93000 - Kernel fails to read partition table and locks up iPod
Summary: Kernel fails to read partition table and locks up iPod
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: PPC Linux
: High major (vote)
Assignee: Gentoo Kernel Bug Wranglers and Kernel Maintainers
URL: http://forums.gentoo.org/viewtopic-t-...
Whiteboard: linux-2.6.12
Keywords:
Depends on:
Blocks:
 
Reported: 2005-05-17 16:42 UTC by Billy
Modified: 2005-06-26 02:36 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Billy 2005-05-17 16:42:17 UTC
I have gentoo-sources kernel, 2.6.11-r8.  I built it initially by gentoolkit (or
whatever that damned program is called), and when I noticed this problem and
looked it up, I attempted a manual build (with the same .config, as copied from
/proc/config.gz when running under the auto-built version).

Any attempt at accessing /dev/sda locks up the underlying usb device (in my
case, an iPod Photo 30GB).  I looked up the problem, and found several others
(atleast in other linux distros) have the same problem.  Most pages seem to
resolve the problem by commenting out, or otherwise de-selecting
CONFIG_EFI_PARTITION.  When I saw this wasn't in /proc/config.gz, I was
confused, but attempted to manually build my kernel anyway.  So, here I am, with
2.6.11-r8, CONFIG_EFI_PARTITION is off, and still get this error.  I assume one
of the gentoo-specific patches affects EFI partitioning (or atleast has the same
effect).

dmesg shows the iPod, and attempts at reading a very late sector on the iPod's hd.  
{abbreviated}...
scsi0 : SCSI emulation for USB Mass Storage devices
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
usb-storage: device found at 3
usb-storage: waiting for device to settle before scanning
PHY ID: 1410cc2, addr: 0
  Vendor: Apple     Model: iPod              Rev: 1.62
  Type:   Direct-Access                      ANSI SCSI revision: 00
SCSI device sda: 58605120 512-byte hdwr sectors (30006 MB)
sda: Write Protect is off
sda: Mode Sense: 64 00 00 08
sda: assuming drive cache: write through
SCSI device sda: 58605120 512-byte hdwr sectors (30006 MB)
sda: Write Protect is off
sda: Mode Sense: 64 00 00 08
sda: assuming drive cache: write through
 sda: [mac] sda1 sda2 sda3
Attached scsi removable disk sda at scsi0, channel 0, id 0, lun 0
Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0,  type 0
...
end_request: I/O error, dev sda, sector 58605112
Buffer I/O error on device sda, logical block 7325639
end_request: I/O error, dev sda, sector 0
Buffer I/O error on device sda, logical block 0
end_request: I/O error, dev sda, sector 1024
Buffer I/O error on device sda, logical block 128
Buffer I/O error on device sda, logical block 129
Buffer I/O error on device sda, logical block 130
Buffer I/O error on device sda, logical block 131
...

It goes on to attempt many logical blocks, and sectors.  Google searches brought
up that the issue is in part the iPod's fault.  It claims to have more sectors
than it really does.  EFI, from my understanding, attempts to use one of those
late sectors (one that the iPod claims to have, but doesn't really have), and in
its absence locks up all future calls ont he 'Pod.

I consider this a major bug, since iPods are very common, my hardware is pretty
much stock, and have made very few modifications to the system (infact, I
ignored the problem despite noticing it after a clean installation).

Reproducible: Always
Steps to Reproduce:
1. ACCEPT_KEYWORDS=~ppc emerge gentoo-sources
2. Plug in iPod
3. mac-fdisk -l /dev/sda

Actual Results:  
"mac-fdisk: Can't read block 0 from file (Input/output error)"
Also, similar "end_request..." and "Buffer I/O error..." messages as mentioend
in the details section.

Expected Results:  
mac-fdisk should list the partitions on stdout and exit.

Gentoo Base System version 1.4.16
Portage 2.0.51.19 (default-linux/ppc/2005.0, gcc-3.4.3-20050110,
glibc-2.3.4.20041102-r0, 2.6.10-gentoo-r8 ppc)
=================================================================
System uname: 2.6.10-gentoo-r8 ppc 7447A, altivec supported
Python:              dev-lang/python-2.3.5 [2.3.5 (#1, May 15 2005, 01:38:41)]
distcc 2.18.3 powerpc-unknown-linux-gnu (protocols 1 and 2) (default port 3632)
[enabled]
ccache version 2.4 [enabled]
dev-lang/python:     2.3.5
sys-apps/sandbox:    [Not Present]
sys-devel/autoconf:  2.59-r6, 2.13
sys-devel/automake:  1.7.9-r1, 1.8.5-r3, 1.5, 1.4_p6, 1.6.3, 1.9.4
sys-devel/binutils:  2.15.90.0.3-r3
sys-devel/libtool:   1.5.16
virtual/os-headers:  2.6.8.1-r4
ACCEPT_KEYWORDS="ppc ~ppc"
AUTOCLEAN="yes"
CFLAGS="-O2 -mcpu=7400 -mtune=powerpc -maltivec -fno-strict-aliasing -pipe"
CHOST="powerpc-unknown-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config
/var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-O2 -mcpu=7400 -mtune=powerpc -maltivec -fno-strict-aliasing -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig ccache distcc distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="ppc X alsa altivec berkdb bitmap-fonts bzip2 cdda cdparanoia cdr crypt cups
curl divx doc dvd dvdr emboss esd fam ffmpeg fortran gcj gd gif gnome gnustep
gpm gtk gtk2 gzip imlib ipv6 java javascript jpeg kde ldap libwww mad motif
mozilla moznomail mp3 mpeg ncurses neXt nls objc offensive ogg oggvorbis opengl
pam pcmcia pdflib perl png python qt quicktime readline samba sdl slang spell
ssl symlink tcltk tcpd tetex tiff truetype truetype-fonts type1-fonts unicode
usb vcd vorbis xine xml2 xmms xprint xv xvid zlib userland_GNU kernel_linux
elibc_glibc"
Unset:  ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY
Comment 1 Billy 2005-05-17 22:53:34 UTC
i incorrectly wrote in my kernel vers as 2.6.11-r8.  seems i've had
2.6.10-gentoo-r8 this whole time.  i assume the problem still exists in 2.6.11,
and I'm about to emerge those sources to test.

-tF
Comment 2 Daniel Drake (RETIRED) gentoo-dev 2005-05-18 16:31:52 UTC
If it is still broken in 2.6.11, it would be worthwhile testing 2.6.12-rc4 also.
Let us know how you get on.
Comment 3 Billy 2005-05-18 21:59:22 UTC
(In reply to comment #2)
> If it is still broken in 2.6.11, it would be worthwhile testing 2.6.12-rc4 also.
> Let us know how you get on.

didn't even occur to me to try a vanilla-sources version.  i'll skip over
gentoo-sources and try 2.6.12-rc4 from vanilla-sources.  currently a little
backed up, cuz i have gcc 3.4 and apparently it causes some trouble on linking
the kernel (somethign about truncated memory or something.  i looked it up and
apparently gcc<3.4 works, so i'll try emerging gcc3.2 or so, then redoing the
kernel).
Comment 4 Daniel Drake (RETIRED) gentoo-dev 2005-05-19 04:01:36 UTC
You can install and use both gcc 3.3 and 3.4 alongside each other, play around
with gcc-config
Comment 5 Billy 2005-05-19 06:10:14 UTC
(In reply to comment #4)
> You can install and use both gcc 3.3 and 3.4 alongside each other, play around
> with gcc-config

turns out my gcc problem was fixed with an update to binutils.  i had tried 3.2
(apparently there werent any versions of 3.3 for ppc/~ppc?  whatever doesn't
really matter).

i installed vanilla-sources 2.6.12-rc4.  Same basic config from all my other
versions, only diff is whatever make oldconfig gives me different for .12 as
opposed to .11's.

It Works!  this is so cool, I've never had an ipod work in linux before.  :)

So, for now I'll be contented with a vanilla kernel.  I'll try out the latest
gentoo patched version in a few days.
Comment 6 Daniel Drake (RETIRED) gentoo-dev 2005-05-31 16:18:11 UTC
OK. Marking as solved in linux 2.6.12. If you could test the latest
gentoo-sources-2.6.11 it would be appreciated, then we could make more progress
earlier (i.e. finding out why 2.6.11 is not keyworded on ppc...)
Comment 7 Daniel Drake (RETIRED) gentoo-dev 2005-06-26 02:36:18 UTC
2.6.12 marked ~ppc