Bug 27416 - strace update for kernel 5.9
Summary: strace update for kernel 5.9
Status: RESOLVED FIXED
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 7
Hardware: All Linux
Priority: Normal normal
Target Milestone: ---
Assignee: QA Team
QA Contact:
URL:
Whiteboard: MGA7-64-OK
Keywords: advisory, validated_update
Depends on:
Blocks:
 
Reported: 2020-10-14 23:01 CEST by David Walser
Modified: 2020-10-16 17:46 CEST (History)
3 users (show)

See Also:
Source RPM: strace-5.8-1.mga7.src.rpm
CVE:
Status comment:


Attachments

Description David Walser 2020-10-14 23:01:27 CEST
Advisory:
----------------------------------------

The strace package has been updated to version 5.9 to support the
newest features in the 5.9 kernel.

References:
https://lists.strace.io/pipermail/strace-devel/2020-September/010250.html
----------------------------------------

Updated packages in core/updates_testing:
----------------------------------------
strace-5.9-1.mga7

from strace-5.9-1.mga7.src.rpm
Comment 1 Len Lawrence 2020-10-15 02:15:17 CEST
mga7, x86_64

$ sudo strace -o trace.eth0 ethtool -d enp3s0
RealTek RTL8168evl/8111evl registers:
--------------------------------------------------------
0x00: MAC Address                      d8:cb:8a:52:52:b4
0x08: Multicast Address Filter     0x00420042 0x00800080
0x10: Dump Tally Counter Command   0xf14d6000 0x00000007
....
0xF4: Func Event Mask                         0x00000000
0xF8: Func Preset State                       0x0003f0ff
0xFC: Func Force Event                        0x00000000

$ cat trace.eth0
 cat trace.eth0
execve("/sbin/ethtool", ["ethtool", "-d", "enp3s0"], 0x7ffc982d1380 /* 34 vars */) = 0
brk(NULL)                               = 0xbc0000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
....
write(1, "0xFC: Func Force Event          "..., 57) = 57
exit_group(0)                           = ?
+++ exited with 0 +++

This is suggested in the man page:
$ strace -o wakeup sleep 555
^C

$ cat wakeup
execve("/usr/bin/sleep", ["sleep", "555"], 0x7ffd47647458 /* 91 vars */) = 0
brk(NULL)                               = 0x17ab000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
[...]
nanosleep({tv_sec=555, tv_nsec=0}, NULL) = ? ERESTART_RESTARTBLOCK (Interrupted by signal)
--- SIGINT {si_signo=SIGINT, si_code=SI_KERNEL} ---
+++ killed by SIGINT +++

$ strace ls -l /dev/null
execve("/usr/bin/ls", ["ls", "-l", "/dev/null"], 0x7ffea43ec4b0 /* 91 vars */) = 0
brk(NULL)                               = 0x1a09000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
[...]
lstat("/dev/null", {st_mode=S_IFCHR|0666, st_rdev=makedev(0x1, 0x3), ...}) = 0
getxattr("/dev/null", "system.posix_acl_access", NULL, 0) = -1 ENODATA (No data available)
socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3
....

$ strace -o trace.ls ls -l /etc/passwd
$ grep root trace.ls
read(3, "root:x:0:0:root:/root:/bin/bash\n"..., 4096) = 2801
read(3, "root:x:0:\nbin:x:1:\ndaemon:x:2:\ns"..., 4096) = 1141

These snippets echo what the man pages say, more or less.

Experimented with the ' -e signals=.....,.... ' option but could not figure out what it was supposed to do or how to phrase it.

Ran a private ruby script.

$ strace -o trace.wv wv 900
--2020-10-15 01:04:16--  ftp://tgftp.nws.noaa.gov/data/observations/metar/decoded/EGPH.TXT
           => ‘EGPH.TXT’
Resolving tgftp.nws.noaa.gov (tgftp.nws.noaa.gov)... 140.90.101.79
Connecting to tgftp.nws.noaa.gov (tgftp.nws.noaa.gov)|140.90.101.79|:21... connected.
Logging in as anonymous ... Logged in!
==> SYST ... done.    ==> PWD ... done.
==> TYPE I ... done.  ==> CWD (1) /data/observations/metar/decoded ... done.
==> SIZE EGPH.TXT ... 429
==> PASV ... done.    ==> RETR EGPH.TXT ... done.
Length: 429 (unauthoritative)

EGPH.TXT            100%[===================>]     429  --.-KB/s    in 0s      

2020-10-15 01:04:18 (11.6 MB/s) - ‘EGPH.TXT’ saved [429]

<Killed the process
$ kill -9 13686>

Killed
$ head trace.wv
execve("/home/lcl/bin/wv", ["wv", "900"], 0x7ffd42fc2d38 /* 90 vars */) = 0
brk(NULL)                               = 0x9ac000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=188332, ...}) = 0
mmap(NULL, 188332, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f042d5cb000
close(3)                                = 0
openat(AT_FDCWD, "/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 l\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=2139264, ...}) = 0

$ tail trace.wv
getpid()                                = 13686
write(6, "!", 1)                        = 1
futex(0xdb0a30, FUTEX_WAKE_PRIVATE, 1)  = 0
futex(0xdb0a88, FUTEX_WAIT_PRIVATE, 0, NULL) = 0
futex(0xdb0ac0, FUTEX_WAKE_PRIVATE, 1)  = 1
futex(0xdb0a30, FUTEX_WAKE_PRIVATE, 1)  = 1
futex(0xdb0a8c, FUTEX_WAKE_PRIVATE, 1)  = 1
futex(0xdb0a30, FUTEX_WAKE_PRIVATE, 1)  = 1
futex(0xdb0fdc, FUTEX_WAIT_PRIVATE, 0, NULL) = ?
+++ killed by SIGKILL +++

These are fairly superficial tests.  Good enough probably.

Whiteboard: (none) => MGA7-64-OK
CC: (none) => tarazed25

Comment 2 Aurelien Oudelet 2020-10-15 15:52:39 CEST
Validated update and Advisory done.

CC: (none) => ouaurelien, sysadmin-bugs
Keywords: (none) => advisory, validated_update

Comment 3 Mageia Robot 2020-10-16 17:46:19 CEST
An update for this issue has been pushed to the Mageia Updates repository.

https://advisories.mageia.org/MGAA-2020-0212.html

Status: NEW => RESOLVED
Resolution: (none) => FIXED


Note You need to log in before you can comment on or make changes to this bug.