Bug 89197 - Mounting of a smbfs will sometimes hang the mount command.
Summary: Mounting of a smbfs will sometimes hang the mount command.
Keywords:
Status: CLOSED DUPLICATE of bug 90036
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: mount
Version: 9
Hardware: i386
OS: Linux
high
high
Target Milestone: ---
Assignee: Elliot Lee
QA Contact: Brian Brock
URL: http://bugzilla.redhat.com/bugzilla/s...
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2003-04-20 11:57 UTC by Jan Houtsma
Modified: 2006-02-21 18:52 UTC (History)
7 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2006-02-21 18:52:44 UTC
Embargoed:


Attachments (Terms of Use)

Description Jan Houtsma 2003-04-20 11:57:03 UTC
First read: http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=82820

Because i could not add additional comments because i get an error message 
about illegally trying to change the component field (which i did not) i have 
to enter a new report for this!!

This is the same problem as:

            http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=8282
------------------------------------------------------------------------------

Kernel: 2.4.20-9 on (P-II-233 Mhz)
Samba : 2.2.7a-8.9.0 (but also reproducable with 2.2.8a-1 and 3.0alpha23)

I have exactly the same problem in 33% of the case mount hangs. two times it 
succeeds and the third time it fails. This is random behaviour because 
sometimes it succeeds more often and sometimes it always hangs. Very annoying 
because i call mount from backup scripts.

B.t.w. The command itself hangs but only at the very very end. When you press 
CTRL-C and return to the prompt you can work with the share as normal. It is 
not mount that hangs. It is the smbmount that hangs. When you issue smbmount 
directly the same problem is reproducable. Here i can reproduce it on two 
machine, both upgraded to RH 9. I didn't have this on RH 8. All upgraded to 
the latest patches. One machine tries to mount a WIN2000 server share. The 
other machine tries to mount a WinXP Pro share. Both hang in more than 33% of 
the cases.

Like it has been said before when you do a ps -Al in another window while it 
hangs you see the following related processes:

0 S     0 26041 25701  0  76   0    -   917 wait4  pts/0    00:00:00 mount
4 S     0 26042 26041  0  83   0    -   682 schedu pts/0    00:00:00 
mount.smbfs
1 S     0 26043 26042  0  83   0    -   650 pause  ?        00:00:00 
mount.smbfs

After i have pressed CTRL-C in the mount window OR when the command was 
succesfull the "schedu" process and the mount process itself are not there any 
longer. When it hangs and i manually kill the "schedu" command it the mount 
command exits as well and i can use the share normally as well. So it seems it 
hangs on that "schedu" process.

I also made straces. Maybe that also provides some information. Even on the 
highest debug level all system commands excute succesfully only when it hangs 
it hangs on the very last wait4 statement where it waits for the child process 
to exit, which it sometimes never does. WHen i use the -f option for even more 
detailed output i see 

[pid 25798] rt_sigaction(SIGUSR1, {0x804b120, [USR1], 
SA_RESTORER|SA_RESTART, 0x420276f8}, NULL, 8) = 0
[pid 25798] pause(

as the very last line of strace. 

Now this triggered me because in the samba syslog (smbd.log) i get the 
following error message at random times:

[2003/04/20 11:28:58, 0] smbd/oplock_linux.c:linux_init_kernel_oplocks(287)
  Failed to setup RT_SIGNAL_LEASE handler

BUT:
1) Only on one of the failed machines. On the other machine where mount also 
hangs the syslog doesn't show this error at all.
2) It doesn't appear when i issue the hanging mount command. It appears at 
random times in the syslog. Like in the middle of the night when there is no 
activity at all.

Also when i add the -f flag to strace the mount -always- hangs in 100% of the 
cases. So is it a kernel timing related problem? When i remove the strace -f 
the mount sometimes succeeds again.

For completeness i add the complete straces below. Hope this helps in the 
debugging problem. If you want you can get a login on my machine to debug it 
further. Let me know if you need that.

Thanks,
Jan

======================================================
Output of strace where mount returns normally:
======================================================
umask(022)                              = 022
open("/dev/null", O_RDWR|O_LARGEFILE)   = 3
close(3)                                = 0
getuid32()                              = 0
geteuid32()                             = 0
lstat64("/etc/mtab", {st_mode=S_IFREG|0644, st_size=326, ...}) = 0
stat64("/sbin/mount.smbfs", {st_mode=S_IFREG|0755, st_size=574846, ...}) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|0x11, 
<ignored>, <ignored>, 0x400212c8) = 25739
wait4(-1, [WIFEXITED(s) && WEXITSTATUS(s) == 0], 0, NULL) = 25739
exit_group(0)  

======================================================
Output of strace where mount hangs at the end:
======================================================
umask(022)                              = 022
open("/dev/null", O_RDWR|O_LARGEFILE)   = 3
close(3)                                = 0
getuid32()                              = 0
geteuid32()                             = 0
lstat64("/etc/mtab", {st_mode=S_IFREG|0644, st_size=326, ...}) = 0
stat64("/sbin/mount.smbfs", {st_mode=S_IFREG|0755, st_size=574846, ...}) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|0x11, 
<ignored>, <ignored>, 0x400212c8) = 25746
wait4(-1, 

======================================================
Like you can see the wait4 line isn't finished even in
this output:
If i dig further with the strace -f option:
======================================================
[pid 25798] wait4(-1,  <unfinished ...>
[pid 25799] --- SIGSTOP (Stopped (signal)) @ 0 (0) ---
[pid 25799] --- SIGSTOP (Stopped (signal)) @ 0 (0) ---
[pid 25799] stat64("/usr/bin/smbmnt", {st_mode=S_IFREG|0755, 
st_size=561294, ...}) = 0
[pid 25799] execve("/usr/bin/smbmnt", ["smbmnt", "/mnt/backup", "-
s", "//Cdserver/Leerling", "-o", ""], [/* 34 vars */]) = 0
[pid 25799] uname({sys="Linux", node="pandora.augustinusschool.nl", ...}) = 0
........ <snip> .............
[pid 25798] open("/var/log/samba/smbmount.log", 
O_WRONLY|O_APPEND|O_CREAT|O_LARGEFILE, 0666) = 0
[pid 25798] fstat64(0, {st_mode=S_IFREG|0644, st_size=35818, ...}) = 0
[pid 25798] mmap2(NULL, 4096, PROT_READ|PROT_WRITE, 
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40017000
[pid 25798] fstat64(0, {st_mode=S_IFREG|0644, st_size=35818, ...}) = 0
[pid 25798] _llseek(0, 35818, [35818], SEEK_SET) = 0
[pid 25798] munmap(0x40017000, 4096)    = 0
[pid 25798] umask(022)                  = 022
[pid 25798] time(NULL)                  = 1050740324
[pid 25798] geteuid32()                 = 0
[pid 25798] write(0, "[2003/04/19 10:18:44, 0] client/"..., 63) = 63
[pid 25798] getpid()                    = 25798
[pid 25798] geteuid32()                 = 0
[pid 25798] write(0, "  mount.smbfs: entering daemon m"..., 79) = 79
[pid 25798] rt_sigaction(SIGUSR1, {0x804b120, [USR1], SA_RESTORER|SA_RESTART, 
0x420276f8}, NULL, 8) = 0
[pid 25798] pause(

======================================================
And again the mount command hangs at the end (pause line 
unfinished in the strace output).

Comment 1 Jan Houtsma 2003-04-20 12:04:49 UTC
Sorry. Posted an annoying incorrect reference URL in the description 
(http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=8282) which of course 
should have been http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=82820.

Comment 2 Jan Houtsma 2003-04-21 09:30:15 UTC
Ok i said that the log message
[2003/04/20 11:28:58, 0] smbd/oplock_linux.c:linux_init_kernel_oplocks(287)
  Failed to setup RT_SIGNAL_LEASE handler
was only on one of the systems. Not true. I now also see it on the other 
system however less frequently. Maybe to do with the fact that in that 
workgroup there are not so many shares as in the other. Don't know.

Comment 3 Mike Saavedra 2003-04-22 04:10:58 UTC
I have this same problem, and also the problem with not being able to add a
comment to bug 82820 . I compiled a new kernel from the official 2.4.20 source
(Marcelo's source tree, that is). It works fine.

I would guess that the Redhat kernel has a problem independent of the official
kernel. I suppose the problem could simply be somewhere in an option that I did
not compile into the new kernel, but I've scoured google and haven't seen this
bug reported anywhere except with Redhat 9 and its preview versions. I'm
guessing, therefore, that it is a Redhat-specific problem.

By the way, this is on Athlon single CPU systems, with rtl8139-based ethernet
cards. I'm connecting to samba running on a Redhat 7.2 file server, not a
Windows machine like the others reporting this bug.

Comment 4 Justin Georgeson 2003-04-28 15:21:21 UTC
i have it too, RH 9, fully up2date, Win 2K Pro SP2

Comment 5 Jay Fenlason 2003-05-01 15:26:20 UTC
We've traced this down to a bug in glibc.  At the request of one of the glibc
maintainers, I've opened a new bug against glibc for it.  I'm going to mark all
these smbmount bugs as duplicates of the new bug.

*** This bug has been marked as a duplicate of 90036 ***

Comment 6 Red Hat Bugzilla 2006-02-21 18:52:44 UTC
Changed to 'CLOSED' state since 'RESOLVED' has been deprecated.


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