Follow-up Comment #4, bug #64442 (project findutils):

Here is a diff between a normal xargs execution and one interrupted with
SIGUSR1.
Normal execution is just running xargs and entering ^D.

--- strace-normal.txt   2023-07-19 14:31:18.639157032 +0300
+++ strace-usr1.txt     2023-07-19 14:21:40.390915386 +0300
 newfstatat(0, "", {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x9), ...},
AT_EMPTY_PATH) = 0
-read(0, "", 1024)                       = 0
+read(0, 0x565271e47710, 1024)           = ? ERESTARTSYS (To be restarted if
SA_RESTART is set)
+--- SIGUSR1 {si_signo=SIGUSR1, si_code=SI_USER, si_pid=946742, si_uid=1000}
---
+rt_sigreturn({mask=[]})                 = -1 EINTR (Interrupted system call)
 pipe2([3, 4], 0)                        = 0
 fcntl(4, F_SETFD, FD_CLOEXEC)           = 0
-clone(child_stack=NULL,
flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
child_tidptr=0x7f9e4a386a10) = 947550
+clone(child_stack=NULL,
flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD,
child_tidptr=0x7fdbe000fa10) = 946743
 close(4)                                = 0
 read(3, "", 4)                          = 0
 close(3)                                = 0
---- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=947550,
si_uid=1000, si_status=0, si_utime=0, si_stime=0} ---
-getpid()                                = 947549
-wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 947550
+getpid()                                = 946735
+wait4(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0, NULL) = 946743
+--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=946743,
si_uid=1000, si_status=0, si_utime=0, si_stime=0} ---
 lseek(0, 0, SEEK_CUR)                   = -1 ESPIPE (Illegal seek)
 close(0)                                = 0
+openat(AT_FDCWD, "/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 0
+newfstatat(0, "", {st_mode=S_IFREG|0644, st_size=2998, ...}, AT_EMPTY_PATH) =
0
+read(0, "# Locale name alias data base.\n#"..., 4096) = 2998
+read(0, "", 4096)                       = 0
+close(0)                                = 0
+openat(AT_FDCWD, "/usr/share/locale/en_US.UTF-8/LC_MESSAGES/findutils.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
+openat(AT_FDCWD, "/usr/share/locale/en_US.utf8/LC_MESSAGES/findutils.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
+openat(AT_FDCWD, "/usr/share/locale/en_US/LC_MESSAGES/findutils.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
+openat(AT_FDCWD, "/usr/share/locale/en.UTF-8/LC_MESSAGES/findutils.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
+openat(AT_FDCWD, "/usr/share/locale/en.utf8/LC_MESSAGES/findutils.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
+openat(AT_FDCWD, "/usr/share/locale/en/LC_MESSAGES/findutils.mo", O_RDONLY) =
-1 ENOENT (No such file or directory)
+write(2, "xargs: ", 7)                  = 7
+write(2, "error closing file", 18)      = 18
+write(2, "\n", 1)                       = 1
 close(1)                                = 0
 close(2)                                = 0
-exit_group(0)                           = ?
-+++ exited with 0 +++
+exit_group(1)                           = ?
++++ exited with 1 +++

*I removed lines that are the same but with different adresses due to ASLR

(file #54941, file #54942)

    _______________________________________________________

Additional Item Attachment:

File name: strace-normal.txt              Size:5 KB
    <https://file.savannah.gnu.org/file/strace-normal.txt?file_id=54941>

File name: strace-usr1.txt                Size:6 KB
    <https://file.savannah.gnu.org/file/strace-usr1.txt?file_id=54942>



    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?64442>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/


Reply via email to