mailing list of musl libc
 help / color / mirror / code / Atom feed
From: "罗勇刚(Yonggang Luo)" <luoyonggang@gmail.com>
To: musl@lists.openwall.com, Rich Felker <dalias@libc.org>
Cc: Jens Gustedt <jens.gustedt@inria.fr>,
	Jason Ekstrand <jason@jlekstrand.net>
Subject: Re: [musl] C23 implications for C libraries
Date: Sun, 20 Nov 2022 12:25:21 +0800	[thread overview]
Message-ID: <CAE2XoE_WmDRPnZ6kBrcgrwZnX3QY7Ngx9-ZuEYg-AdDx=XHt+g@mail.gmail.com> (raw)
In-Reply-To: <20221119183145.GO29905@brightrain.aerifal.cx>

[-- Attachment #1: Type: text/plain, Size: 1844 bytes --]

On Sun, Nov 20, 2022 at 2:32 AM Rich Felker <dalias@libc.org> wrote:
>
> On Sat, Nov 19, 2022 at 04:46:22AM +0800, 罗勇刚(Yonggang Luo) wrote:
> > There is a concept called CLOCK_MONOTONIC_RAW  (since Linux 2.6.28;
> > Linux-specific),
> > May C2x provide TIME_MONOTONIC_RAW in future or can we just implement
> >  TIME_MONOTONIC with
> > CLOCK_MONOTONIC_RAW  on Linux? When implement mesa vulkan driver, it's
ask
> > for CLOCK_MONOTONIC_RAW   at
> >
> >
https://gitlab.freedesktop.org/mesa/mesa/-/blob/c6c5949ff70a47c47795fe9161a7514173b5be24/src/vulkan/runtime/vk_device.c#L557
> >
> > May intention is using C2x timespec_get to replace function
> > vk_clock_gettime but it's lack of  TIME_MONOTONIC_RAW, so I don't know
> > what's the best way
>
> The code there is already doing exactly what it should do in the case
> where CLOCK_MONOTONIC_RAW is not defined so I'm not sure what you're
> trying to achieve.
>
> On a system where CLOCK_MONOTONIC_RAW is defined, the caller may have
> (for likely-nonsensical reasons) chosen to pass CLOCK_MONOTONIC_RAW,
> and they're handling the case where the kernel is too old to have that
> extension clock by substituting CLOCK_MONOTONIC instead.

That's the issue, when you access `CLOCK_MONOTONIC_RAW`, it's have to be
defined, suppose we have
standardized TIME_MONOTONIC_RAW, then we have no need get the time with,
```
#ifndef CLOCK_MONOTONIC_RAW
 // The code
#endif
```
but with
```
if (timespec_get(ts, TIME_MONOTONIC_RAW) != 0) {
}
```




>
> If CLOCK_MONOTONIC_RAW is not defined, then most certainly the caller
> did not pass it (since there's no such thing) and thus there is no
> need for any fallback code.
>
> No action is needed at all here.
>
> Rich



--
         此致
礼
罗勇刚
Yours
    sincerely,
Yonggang Luo

[-- Attachment #2: Type: text/html, Size: 2485 bytes --]

  reply	other threads:[~2022-11-20  4:25 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-23 14:25 Jₑₙₛ Gustedt
2022-09-23 14:58 ` Rich Felker
2022-09-23 15:11   ` Alexander Monakov
2022-09-23 15:35   ` Jₑₙₛ Gustedt
2022-09-23 15:28 ` enh
2022-09-23 15:40   ` Jₑₙₛ Gustedt
2022-09-23 23:52     ` enh
2022-09-24  7:31       ` Jₑₙₛ Gustedt
2022-09-26  3:18         ` Damian McGuckin
2022-09-26  3:33         ` Rich Felker
2022-09-26 10:49         ` Florian Weimer
2022-09-26 12:52           ` Jₑₙₛ Gustedt
2022-09-26 20:13         ` enh
2022-11-18 20:46 ` 罗勇刚(Yonggang Luo)
2022-11-19 14:33   ` Jₑₙₛ Gustedt
2022-11-19 17:19     ` 罗勇刚(Yonggang Luo)
2022-11-20  8:23       ` Jₑₙₛ Gustedt
2022-11-19 18:28     ` Rich Felker
2022-11-20  8:42       ` Jₑₙₛ Gustedt
2023-05-03 22:58     ` enh
2023-05-04  6:19       ` Jₑₙₛ Gustedt
2023-05-04 16:03         ` Rich Felker
2023-05-04 16:07           ` enh
2023-05-04 23:16             ` Gabriel Ravier
2023-05-05  0:37               ` JeanHeyd Meneide
2023-05-05  6:56                 ` Jₑₙₛ Gustedt
2023-05-05 12:40                   ` Rich Felker
2023-05-05  6:40             ` Jₑₙₛ Gustedt
2023-05-04 16:03         ` enh
2023-05-04 23:11           ` Gabriel Ravier
2022-11-19 18:31   ` Rich Felker
2022-11-20  4:25     ` 罗勇刚(Yonggang Luo) [this message]
2022-11-20  5:34       ` Markus Wichmann
2022-11-21 11:46 ` Reini Urban
2022-11-21 21:06   ` Jₑₙₛ Gustedt
2022-11-23  4:31     ` 罗勇刚(Yonggang Luo)
2022-11-23  8:11       ` Jₑₙₛ Gustedt
2022-11-23  8:20         ` 罗勇刚(Yonggang Luo)
2022-11-23  8:33           ` Jₑₙₛ Gustedt
2022-11-23  8:41             ` 罗勇刚(Yonggang Luo)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAE2XoE_WmDRPnZ6kBrcgrwZnX3QY7Ngx9-ZuEYg-AdDx=XHt+g@mail.gmail.com' \
    --to=luoyonggang@gmail.com \
    --cc=dalias@libc.org \
    --cc=jason@jlekstrand.net \
    --cc=jens.gustedt@inria.fr \
    --cc=musl@lists.openwall.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).