On 02/23/2010 03:48 AM, Leonardo Chiquitto wrote:
> Hello,
> 
> We have a user reporting periodic crashes in automount. The daemon gets
> killed by SIGBUS when returning from spawn_mount():
> 
> Core was generated by `/usr/sbin/automount -p /var/run/automount.pid'.
> Program terminated with signal 7, Bus error.
> #0  0x0000555555566bd0 in spawn_mount (logopt=Cannot access memory at
> address 0x80004062242c
> ) at spawn.c:412
> 412   }
> 
> 0x0000555555566bcd <spawn_mount+829>: mov    %r12d,%eax
> 0x0000555555566bd0 <spawn_mount+832>: pop    %rbx
> 0x0000555555566bd1 <spawn_mount+833>: pop    %r12
> 0x0000555555566bd3 <spawn_mount+835>: pop    %r13
> 0x0000555555566bd5 <spawn_mount+837>: pop    %r14
> 0x0000555555566bd7 <spawn_mount+839>: pop    %r15
> 0x0000555555566bd9 <spawn_mount+841>: leaveq 
> 0x0000555555566bda <spawn_mount+842>: retq   
> 
> Is it possible that we're exceeding stack usage at this point, mostly
> due to the call to alloca()? Do you think we should replace alloca() with
> regular malloc() in spawn.c (patch below)?

There were some changes to reduce the usage of alloca() contributed by
Val Henson some time ago but they didn't get all of them by any means.
Val pointed out the use of alloca() was bad so replacing them with
malloc() is a good idea whether this is a stack overflow or not. I'll
have a look at the patch and merge it.

Not sure if the source used here even has those patches since we don't
know what source it is.

Ian

_______________________________________________
autofs mailing list
[email protected]
http://linux.kernel.org/mailman/listinfo/autofs

Reply via email to