[CentOS-devel] kernel panic with cachefilesd and sendmail

Wed Nov 7 05:06:14 UTC 2007
DAICON <daicon at daicoon.org>

Hi.

Kernel panic occurs because of the 
combination of cachefilesd and sendmail. 

#
# This issue was reported to Linux filesystem caching discussion list <linux-cachefs at redhat.com>
#

Confirmed environment:
 1, On i386 platform
  OS : CentOS 5 i386
  CPU : Pentium M
  Mem : 2G
  Kernel : 2.6.18-8.1.15.el5 #1 SMP Mon Oct 22 08:32:04 EDT 2007 i686 i686 i386 GNU/Linux 
           (Installed by RPM)

 2, On X86-64 platform
  OS : CentOS 5 X86-64
  CPU : Opteron (Dual Core)
  Mem : 16G
  Kernel : 2.6.18-8.1.15.el5 #1 SMP Mon Oct 22 08:32:28 EDT 2007 x86_64 x86_64 x86_64 GNU/Linux 
          (Installed by RPM)

How To reproduce:
  1, Stor OS image to NFS Server.
     I used CentOS 5.

       # mkdir /mnt/nfs
       # mount -t nfs -o fsc 192.168.1.1:/your/export/dir /mnt/nfs
       # mkdir /mnt/nfs/centos5
       # rsync -axv / /mnt/nfs/centos5

  2, Launch sendmail.

       # /etc/init.d/sendmail stop <- if running
       # /etc/init.d/cachefilesd start <- if not running
       # cd /mnt/nfs/centos5
       # chroot .
       # /etc/init.d/sendmail start
       # exit  <- exit from chroot

  3, Connect to sendmail, and occur kernel panic.
     # telnet localhost smtp
     
     Kernel dumps thi message, and perfectly freeze.
     (This kernel message is x86-64 platform.)

 ----------- [cut here ] --------- [please bite here ] ---------
Kernel BUG at fs/nfs/fscache.h:267
invalid opcode: 0000 [1] SMP
last sysfs file: /class/net/sit0/address
CPU 0
Modules linked in: ipv6 nfs lockd nfs_acl sunrpc cachefiles fscache dm_mirror dm_mod video sbs i2c_ec i2c_core button battery asus_acpi acpi_memhotplug ac parport_pc lp parport ide_cd shpchp k8_edac tg3 serio_d
Pid: 2402, comm: sendmail Not tainted 2.6.18-8.el5 #1
RIP: 0010:[<ffffffff882eabc8>]  [<ffffffff882eabc8>] :nfs:nfs_fscache_release_page+0x1e/0x5e
RSP: 0018:ffff81023362bc98  EFLAGS: 00010246
RAX: ffff81023476e308 RBX: ffff810008b4da78 RCX: 0000000000000001
RDX: 0000000000000000 RSI: ffff81023362bc68 RDI: ffff810008b4da78
RBP: ffff81023476e1f8 R08: 0000000000000001 R09: 0000000000000000
R10: ffff810233a51298 R11: ffffffff882eac08 R12: ffff81023476e308
R13: 0000000000000000 R14: 0000000000000001 R15: ffffffffffffffff
FS:  00002aaaada80a80(0000) GS:ffffffff8038a000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
CR2: 000055556fb72d98 CR3: 0000000235244000 CR4: 00000000000006e0
Process sendmail (pid: 2402, threadinfo ffff81023362a000, task ffff81023fbc90c0)
Stack:  0000000000000000 ffff810008b4da78 0000000000000000 ffffffff882eac45
 0000000000000000 ffff810008b4da78 0000000000000000 ffffffff800bcd28
 000000003362bd18 0000000000000000 0000000000000003 0000000000000000
Call Trace:
 [<ffffffff882eac45>] :nfs:nfs_release_page+0x3d/0x4d
 [<ffffffff800bcd28>] invalidate_inode_pages2_range+0x122/0x21a
 [<ffffffff882f435c>] :nfs:nfs_sync_inode_wait+0x116/0x1db
 [<ffffffff882ed337>] :nfs:nfs_revalidate_mapping+0xac/0x1b4
 [<ffffffff882eb2ee>] :nfs:nfs_file_read+0x45/0x97
 [<ffffffff8000c8f8>] do_sync_read+0xc7/0x104
 [<ffffffff800645d8>] do_page_fault+0x4eb/0x81d
 [<ffffffff8009b666>] autoremove_wake_function+0x0/0x2e
 [<ffffffff8000b212>] vfs_read+0xcb/0x171
 [<ffffffff80012dbe>] sys_pread64+0x50/0x70
 [<ffffffff8005be1d>] error_exit+0x0/0x84
 [<ffffffff8005b14e>] system_call+0x7e/0x83


Code: 0f 0b 68 4a c2 30 88 c2 0b 01 8b 03 f6 c4 01 74 0d be 08 00
RIP  [<ffffffff882eabc8>] :nfs:nfs_fscache_release_page+0x1e/0x5e
 RSP <ffff81023362bc98>
 <0>Kernel panic - not syncing: Fatal exception
 Nov  1 12:07:17


-- 
DAICON <daicon at daicoon.org>