Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Mon, 1 Aug 2022 13:55:33 -0400
From: Rich Felker <dalias@...c.org>
To: Eugene Yudin <e.yudin@...systems.com>
Cc: musl@...ts.openwall.com
Subject: Re: [PATCH] make clock_getcpuclockid return ESRCH rather than
 EINVAL

On Tue, Jun 14, 2022 at 01:15:36PM +0300, Eugene Yudin wrote:
> Hi,
> 
> According to man clock_getcpuclockid() should return ESRCH if there is no
> process with the ID pid.
> 
> diff --git a/src/time/clock_getcpuclockid.c b/src/time/clock_getcpuclockid.c
> --- a/src/time/clock_getcpuclockid.c
> +++ b/src/time/clock_getcpuclockid.c
> @@ -8,6 +8,7 @@ int clock_getcpuclockid(pid_t pid, clockid_t *clk)
>         struct timespec ts;
>         clockid_t id = (-pid-1)*8U + 2;
>         int ret = __syscall(SYS_clock_getres, id, &ts);
> +       if (ret == -EINVAL) ret = -ESRCH;
>         if (ret) return -ret;
>         *clk = id;
>         return 0
> 
> The same behaviour is used in glibc:
> https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/clock_getcpuclockid.c;h=5534127ed703a3931f22af48da02e2b8f2dc39a5;hb=HEAD#l49

Thanks, applying.

Rich

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.