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
signature.asc
Description: Digital signature

