Hi Michael,

> No idea.  If I were knew, I'd attach a patch for this issue.
> The code is quite.. funny and fragile, I tried to understand
> it right before submitting a bugreport but that wasn't quite
> successful.
>
> I ran it under strace - pure automountd, without any startu
> scripts but with the same args.  It never ever tried to mkdir
> or rename.  It created two random dirs in /tmp, mounted a
> tmpfs over one of them (running mount(8)), bind-mounted it
> on second dir, next did stat("/misc") (which returned ENOENT)
> and immediately gave up returning it can't mount /misc.

this is the strace log on my system after the spawned umount
process has terminated:

] 30451 --- SIGCHLD (Child exited) @ 0 (0) ---
] 30451 rmdir("/tmp/autoa1Aqlv")          = 0
] 30451 rmdir("/tmp/autohY6Rkm")          = 0
] 30451 rt_sigaction(SIGTERM, {0xb801dd70, [HUP USR1 USR2 ALRM TERM], 
SA_RESTART}, NULL, 8) = 0
] 30451 rt_sigaction(<<< several more >>>)
] 30451 open("/etc/mtab", O_RDONLY)       = 8
] 30451 fstat64(8, {st_mode=S_IFREG|0644, st_size=701, ...}) = 0
] 30451 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 
0) = 0xb7fe7000
] 30451 read(8, "/dev/sda2 / ext3 rw,errors=remou"..., 4096) = 701
] 30451 read(8, "", 4096)                 = 0
] 30451 close(8)                          = 0
] 30451 munmap(0xb7fe7000, 4096)          = 0
] 30451 stat64("/misc", 0xbfbca894)       = -1 ENOENT (No such file or 
directory)
] 30451 open("/etc/mtab", O_RDONLY)       = 8
] 30451 fstat64(8, {st_mode=S_IFREG|0644, st_size=701, ...}) = 0
] 30451 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 
0) = 0xb7fe7000
] 30451 read(8, "/dev/sda2 / ext3 rw,errors=remou"..., 4096) = 701
] 30451 read(8, "", 4096)                 = 0
] 30451 close(8)                          = 0
] 30451 munmap(0xb7fe7000, 4096)          = 0
] 30451 statfs("/", {f_type="EXT2_SUPER_MAGIC", f_bsize=4096, f_blocks=9612195, 
f_bfree=5459645, f_bavail=4971364, f_files=2444624, f_ffree=2142
] 30451 mkdir("/misc", 0555)              = 0
] 30451 pipe([8, 11])                     = 0
] 30451 pipe([12, 13])                    = 0
] 30451 rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1], [], 8) = 0
] 30451 pipe([14, 15])                    = 0
] 30451 clone(child_stack=0, 
flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7e7fb48) 
= 30454
] [...] <<<which calls:>>>
] 30454 execve("/bin/mount", ["/bin/mount", "-t", "autofs", "-o", 
"fd=11,pgrp=30451,minproto=2,maxp"..., "automount(pid30451)", "/misc"], [/* 44 
vars */]) = 0

Maybe you can spot the difference that's causing your automountd to
give up - but I'd suggest switching to v5 anyway because upstream
development on v4 has ceased, and I'd like to drop v4 before Squeeze
is released.


Regards,

Jan

Attachment: signature.asc
Description: Digital signature

Reply via email to