bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: exit status issue


From: Dallas Clement
Subject: Re: exit status issue
Date: Fri, 18 Nov 2011 13:49:38 -0600

On Fri, Nov 18, 2011 at 6:16 AM, Geir Hauge <geir.hauge@gmail.com> wrote:
> Add ''set -x'' at the start of the function and examine the output to see if
> it actually runs touch from PATH.

The strace output is showing that the correct 'touch' is being executed.

[pid  6747] execve("/bin/touch", ["touch", "/mnt/array1/.accesstest"],
[/* 14 vars */]) = 0
Process 6748 attached
Process 13686 suspended
[pid  6748] execve("/usr/bin/logger", ["logger", "-s", "-t",
"diskmon", "-p", "local0.info", "*** fsaccesstest test
/mnt/array"...], [/* 14 vars */]) = 0
Process 13686 resumed
Process 6747 detached
[pid 13686] --- SIGCHLD (Child exited) @ 0 (0) ---
Process 13686 suspended
diskmon: *** fsaccesstest test /mnt/array1 failed: status=1. retrying... (1) ***
Process 13686 resumed
Process 6748 detached
--- SIGCHLD (Child exited) @ 0 (0) ---

Notice that the child process pid=6747 exits with status 0, but $?=1
after returning from executing touch.  This triggers the failure.

I just upgrade my bash from version 3.21 to 4.2 and I'm still seeing
this problem.

I am seeing this failure whether I execute the 'touch' command or the
'stat' command.  Both of these are incidentally busybox
implementations.

 ls -al /bin/touch
lrwxrwxrwx    1 root     root            7 Nov 15 08:07 /bin/touch -> busybox

ls -al /bin/stat
lrwxrwxrwx    1 root     root            7 Nov 15 08:07 /bin/stat -> busybox

Are there any bash debugging tools available that I can use to halt on
a data breakpoint and examine state?

Thanks,
Dallas



reply via email to

[Prev in Thread] Current Thread [Next in Thread]