Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 125069 - sys-fs/unionfs-1.1.3: kernel oops
Summary: sys-fs/unionfs-1.1.3: kernel oops
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Christian Andreetta (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-03-05 04:31 UTC by Toralf Förster
Modified: 2006-03-21 05:33 UTC (History)
1 user (show)

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 Toralf Förster gentoo-dev 2006-03-05 04:31:41 UTC
Got the following Oops:

Mar  5 13:24:37 n22 unionfs_read_super: error while parsing options (err = -22)
Mar  5 13:25:09 n22 unionfs_read_super: error while parsing options (err = -22)
Mar  5 13:25:22 n22 Unable to handle kernel NULL pointer dereference at virtual address 00000014
Mar  5 13:25:22 n22 printing eip:
Mar  5 13:25:22 n22 c0130a1a
Mar  5 13:25:22 n22 *pde = 00000000
Mar  5 13:25:22 n22 Oops: 0002 [#1]
Mar  5 13:25:22 n22 Modules linked in: unionfs radeon drm cpufreq_ondemand ipt_MASQUERADE ipt_multiport ipt_REJECT ip_conntrack_irc
ip_conntrack_ftp ipt_state ipt_limit ipt_LOG iptable_nat ip_nat ip_conntrack iptable_filter ip_tables af_packet snd_pcm_oss snd_mixe
r_oss snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device 8250_pnp psmouse 8250_pci 8250 serial_core usbhid snd_intel8x0 snd_ac97_
codec snd_ac97_bus snd_pcm snd_page_alloc ehci_hcd uhci_hcd intel_agp agpgart usbcore nls_iso8859_15 nls_cp437 vfat fat nls_base nvr
am snd_rtctimer snd_timer snd soundcore rtc e1000 ibm_acpi speedstep_centrino freq_table video thermal processor fan button battery
ac
Mar  5 13:25:22 n22 CPU:    0
Mar  5 13:25:22 n22 EIP:    0060:[<c0130a1a>]    Not tainted VLI
Mar  5 13:25:22 n22 EFLAGS: 00010082   (2.6.15-gentoo-r1)
Mar  5 13:25:22 n22 EIP is at free_block+0x48/0xca
Mar  5 13:25:22 n22 eax: 00000010   ebx: f6881840   ecx: 00000000   edx: 00000000
Mar  5 13:25:22 n22 esi: c18dd4c0   edi: c18df8c0   ebp: 00000001   esp: c1923f0c
Mar  5 13:25:22 n22 ds: 007b   es: 007b   ss: 0068
Mar  5 13:25:22 n22 Process events/0 (pid: 3, threadinfo=c1922000 task=c190c030)
Mar  5 13:25:22 n22 Stack: f5b32000 f7b47580 00000002 c18dc150 c18dc150 00000002 c18dc140 00000000
Mar  5 13:25:22 n22 c0130f8b 00000000 c18df8c0 c18dd4c0 c18df8c0 c18df90c 00000002 c0130ffd
Mar  5 13:25:22 n22 00000000 00000000 c02f42a4 00000297 00000000 c18e3500 c011e6b8 c0130fab
Mar  5 13:25:22 n22 Call Trace:
Mar  5 13:25:22 n22 [<c0130f8b>] drain_array_locked+0x62/0x82
Mar  5 13:25:22 n22 [<c0130ffd>] cache_reap+0x52/0x118
Mar  5 13:25:22 n22 [<c011e6b8>] worker_thread+0x155/0x1b4
Mar  5 13:25:22 n22 [<c0130fab>] cache_reap+0x0/0x118
Mar  5 13:25:22 n22 [<c01106b2>] default_wake_function+0x0/0xc
Mar  5 13:25:22 n22 [<c01106f0>] __wake_up_common+0x32/0x4d
Mar  5 13:25:22 n22 [<c01106b2>] default_wake_function+0x0/0xc
Mar  5 13:25:22 n22 [<c011e563>] worker_thread+0x0/0x1b4
Mar  5 13:25:22 n22 [<c012141d>] kthread+0x75/0x9d
Mar  5 13:25:22 n22 [<c01213a8>] kthread+0x0/0x9d
Mar  5 13:25:22 n22 [<c0101295>] kernel_thread_helper+0x5/0xb
Mar  5 13:25:22 n22 Code: 24 0c 8b 54 24 24 8b 04 a8 89 04 24 05 00 00 00 40 8b 74 97 14 c1 e8 0c 31 d2 c1 e0 05 03 05 f0 97 2f c0 8
b 58 1c 8b 4b 04 8b 03 <89> 48 04 89 01 8b 43 0c c7 03 00 01 10 00 c7 43 04 00 02 20 00
n22 /usr/share/doc/unionfs-1.1.3 # emerge info
Portage 2.0.54 (default-linux/x86/2006.0, gcc-3.4.5, glibc-2.3.5-r2, 

2.6.15-gentoo-r1 i686)
=================================================================
System uname: 2.6.15-gentoo-r1 i686 Intel(R) Pentium(R) M processor 1700MHz
Gentoo Base System version 1.6.14
ccache version 2.3 [enabled]
dev-lang/python:     2.4.2
sys-apps/sandbox:    1.2.12
sys-devel/autoconf:  2.13, 2.59-r6
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium-m -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=pentium-m -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks sandbox sfperms strict"
GENTOO_MIRRORS="ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://gentoo.inode.at/ http://ftp.club-internet.fr/pub/mirrors/gentoo"
LINGUAS="de en"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="x86 X acpi alsa apache2 arts audiofile avi berkdb bitmap-fonts bzip2 cdr crypt cups curl dri dvd emboss encode exif expat fam ffmpeg font-server foomaticdb fortran gd gdbm gif glut gpm gstreamer gtk gtk2 idn imagemagick imlib ipv6 jai java javascript jimi joystick jpeg junit kde lcms libg++ libwww live logrotate mad mbox mhash mikmod mmx mmxext mng motif mp3 mpeg mysql ncurses nls nptl nsplugin ogg opengl oss pam pcre pdflib perl php png python qt quicktime readline real recode rtc samba sdl slp snmp spell sse sse2 ssl subversion swat tcltk tcpd tiff truetype truetype-fonts type1-fonts udev usb userlocales vorbis win32codecs xine xml xml2 xv xvid zlib linguas_de linguas_en userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, PORTDIR_OVERLAY

:-(
Comment 1 Christian Andreetta (RETIRED) gentoo-dev 2006-03-06 01:14:55 UTC
there is a similar discussion in the upstream developer list: the cause seems to be an invalid mount sequence.
What is the directory layout and the command(s) to unionfs mount?
Comment 2 Toralf Förster gentoo-dev 2006-03-06 02:13:52 UTC
n22 ~ # ls -ld /usr/src/linux-2.6.15-gentoo-r1 ./union*
drwxr-xr-x   2 root root 4096 Mar  5 12:42 ./union
drwxr-xr-x   2 root root 4096 Mar  5 13:23 ./union_overlay
drwxr-xr-x  20 root root 4096 Mar  6 10:19 /usr/src/linux-2.6.15-gentoo-r1

n22 ~ # mount -t unionfs -o dirs=/usr/src/linux-2.6.15-gentoo-r1=ro:/root/union_overlay=rw unionfs /root/union
mount: wrong fs type, bad option, bad superblock on unionfs,
       missing codepage or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

n22 ~ # lsmod | grep union
unionfs                62108  0
/dev/hda9 on / type ext3 (rw,noatime)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
udev on /dev type tmpfs (rw,nosuid)
devpts on /dev/pts type devpts (rw)
shm on /dev/shm type tmpfs (rw,noexec,nosuid,nodev)
/dev/hda6 on /mnt/F type vfat (rw,noexec,nosuid,nodev,uid=1000,gid=100,umask=0027)
usbfs on /proc/bus/usb type usbfs (rw,devmode=0664,devgid=85)
//ehngsa.ibm.com/ on /mnt/GSA type cifs (rw,mand,noexec,nosuid,nodev)


Than 1-5 min later the kernel oopsed - note that the fs wasn't mounted.
Comment 3 Christian Andreetta (RETIRED) gentoo-dev 2006-03-10 06:30:18 UTC
looks like it is being discussed upstream in these days.
kernel<=2.6.15 or unionfs<=1.1.2 don't seem to have issues.
Comment 4 Valentin Zagura 2006-03-17 04:34:42 UTC
I had the same problem a few days ago. Same error, same oops after a few minutes. After looking into unionfs sources, it seems that the first directory after -dirs needs to be rw. 
So "mount -t unionfs -o
dirs=/usr/src/linux-2.6.15-gentoo-r1=ro:/root/union_overlay=rw unionfs
/root/union" should be:
"mount -t unionfs -o
dirs=/root/union_overlay=rw:/usr/src/linux-2.6.15-gentoo-r1=ro unionfs
/root/union"
If I gived the right parameters to unionfs I did nou experienced any more opps.
Comment 5 Christian Andreetta (RETIRED) gentoo-dev 2006-03-21 05:33:32 UTC
You're almost right :-) : the sequence is left-most priority based, but the kernel should not block this way.
"Almost" because, at the very worst, it should not give you write permission over a file in the left (so, r/o) branch. I'm quite sure it could be done in the past, for example to permit overwrites only to selected files.
Maybe it has something to do with the new mutex VFS lock method in kernel sources. (bug #127073).
Closing as UPSTREAM for now. reopen if needed