[linux-cifs-client] Bug when unmounting share (shrink_dcache_for_umount)

Jeff Layton jlayton at samba.org
Mon May 3 08:07:55 MDT 2010


On Mon, 03 May 2010 08:11:18 +0200
Eike Hein <sho at eikehein.com> wrote:

> 
> Hi,
> 
> since about 2.6.31 or so I have a problem with unmounting a CIFS
> share that prevents my system from shutting down successfully.
> 
> The problem also occurs when unmounting a share while the sys-
> tem is up. In both cases, the share must have been used before
> trying to unmount it, e.g. using mplayer to play a video file
> found on the share, then quitting mplayer and then trying to
> unmount the share.
> 
> The shutdown failure means that the system stops during shut-
> down with a trace like the one below on screen and then won't
> power down.
> 
> If the share has not been used prior to unmounting/shuttind down,
> there is no problem.
> 
> Here is a dmesg snippet from unmounting the share during normal
> system operation:
> 
> BUG: Dentry ffff88001d8f95c8{i=2,n=/} still in use (2) [unmount of cifs
> cifs]
> ------------[ cut here ]------------
> kernel BUG at fs/dcache.c:670!
> invalid opcode: 0000 [#1] SMP
> last sysfs file: /sys/devices/virtual/dmi/id/bios_vendor
> CPU 0
> Pid: 2338, comm: umount Tainted: P           2.6.33.2-57.fc13.x86_64 #1
> P5B-Deluxe/System Product Name
> RIP: 0010:[<ffffffff81130f9c>]  [<ffffffff81130f9c>]
> shrink_dcache_for_umount_subtree+0x205/0x2eb
> RSP: 0018:ffff88001b699e08  EFLAGS: 00010292
> RAX: 0000000000000054 RBX: ffff88001d8f95c8 RCX: 0000000000000000
> RDX: 0000000000000000 RSI: 0000000000000001 RDI: 0000000000000246
> RBP: ffff88001b699e38 R08: 000000000000ac81 R09: ffffffff8107ca78
> R10: ffffffff81a56ef8 R11: 0000000000000000 R12: ffff88001d8f95c8
> R13: 0000000000000174 R14: ffff88001d86d668 R15: ffff88001b699f18
> FS:  00007f68a7908740(0000) GS:ffff880004a00000(0000) knlGS:0000000000000000
> CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> CR2: 00007f2e775f4000 CR3: 000000001b672000 CR4: 00000000000006f0
> DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> Process umount (pid: 2338, threadinfo ffff88001b698000, task
> ffff880015828000)
> Stack:
>  ffff880079e8ae38 0000000000000246 ffff880079e8a968 ffffffffa0dcf690
> <0> ffff880079e8a968 ffffffff81ba3ce0 ffff88001b699e58 ffffffff811310be
> <0> ffff880079e8aa30 ffff880079e8a968 ffff88001b699e78 ffffffff81121f0d
> Call Trace:
>  [<ffffffff811310be>] shrink_dcache_for_umount+0x3c/0x4c
>  [<ffffffff81121f0d>] generic_shutdown_super+0x1f/0xce
>  [<ffffffff81122011>] kill_anon_super+0x16/0x55
>  [<ffffffff811223dd>] deactivate_super+0x6d/0x82
>  [<ffffffff81136cbf>] mntput_no_expire+0xbd/0xfa
>  [<ffffffff811372a6>] sys_umount+0x2c0/0x2ef
>  [<ffffffff81009c72>] system_call_fastpath+0x16/0x1b
> Code: 50 30 4c 8b 0a 31 d2 48 85 f6 74 04 48 8b 56 40 48 05 d0 04 00 00
> 48 89 de 48 c7 c7 34 d4 78 81 48 89 04 24 31 c0 e8 af 6a 34 00 <0f> 0b
> eb fe 4c 8b 63 68 4c 39 e3 75 05 45 31 e4 eb 05 f0 41 ff
> RIP  [<ffffffff81130f9c>] shrink_dcache_for_umount_subtree+0x205/0x2eb
>  RSP <ffff88001b699e08>
> ---[ end trace 15c19ec0d5874bcd ]---
> 
> My client system is a x64_64 Fedora 13 system running a kernel
> identifying itself as 2.6.33.2-57.fc13.x86_64. The cifs-utils
> package that contains the mount helper is version 4.3-2.fc13.
> 
> The server is a i686 Fedora 13 system - 2.6.33.2-57.fc13.i686.
> The Samba server is version 3.5.2-59.fc13.
> 
> The fstab entry for the CIFS share in question is:
> //ehs1/ehs1 /mnt/ehs1 cifs
> file_mode=0644,dir_mode=0755,uid=500,gid=500,username=<username>,password=<password>
> 0 0
> 
> The smb.conf snippet is:
> [ehs1]
> comment = Main Share
> path = /ehs1
> writable = yes
> valid users = sho
> hide unreadable = yes
> 
> The Samba config doesn't seem to be doing anything interesting
> otherwise.
> 
> Any ideas?
> 
> 

Do you ever see messages like this in dmesg?

                cERROR(1, "Autodisabling the use of server inode numbers on "
                           "%s. This server doesn't seem to support them "
                           "properly. Hardlinks will not be recognized on this "
                           "mount. Consider mounting with the \"noserverino\" "
                           "option to silence this message.",
                           cifs_sb_master_tcon(cifs_sb)->treeName);

If so, does the problem go away if you mount your shares with '-o
noserverino' ?

-- 
Jeff Layton <jlayton at samba.org>


More information about the linux-cifs-client mailing list