Regression: strace >=4.8 does not show filenames when tracing `man`

Andrew Guertin lists at dolphinling.net
Mon Mar 30 14:06:48 UTC 2015


On 03/30/2015 06:02 AM, Dmitry V. Levin wrote:
> On Sun, Mar 29, 2015 at 10:37:33PM -0400, Andrew Guertin wrote:
>> When running the command
>>     `strace -e trace=file man`
>> I don't get filenames in the output. For all other executables I've
>> tried, strace works fine. Only man has problems.
>
> I suppose /usr/bin/man is installed as a privileged executable in your
> system, and process_vm_readv syscall fails.

Looks like that's true:

-r-xr-s--x   1 root man         53152 Oct 25 01:42 man

In the changelog for 3af224c (the commit that implemented use of 
process_vm_readv) I see

>     This change uses it in umoven() and umovestr() functions if possible,
>     with fallback to old method if process_vm_readv() fails.
>     If it returns ENOSYS, we don't try to use it anymore, eliminating
>     overhead of trying it on older kernels.

...so it looks like that fallback broke in 9700592.




More information about the Strace-devel mailing list