Re: Review of patch that uses "volatile sig_atomic_t"

2023-08-02 Thread Konstantin Belousov
On Tue, Aug 01, 2023 at 04:33:16PM -0700, Rick Macklem wrote: > On Mon, Jul 31, 2023 at 11:33 PM David Chisnall wrote: > > > > Hi, > > > > This bit of the C spec is a bit of a mess. There was, I believe, a desire > > to return volatile to its original use and make any use of volatile other > > t

Re: Review of patch that uses "volatile sig_atomic_t"

2023-08-02 Thread Rick Macklem
On Wed, Aug 2, 2023 at 6:14 PM Konstantin Belousov wrote: > > On Tue, Aug 01, 2023 at 04:33:16PM -0700, Rick Macklem wrote: > > On Mon, Jul 31, 2023 at 11:33 PM David Chisnall > > wrote: > > > > > > Hi, > > > > > > This bit of the C spec is a bit of a mess. There was, I believe, a desire > > >

Re: Review of patch that uses "volatile sig_atomic_t"

2023-08-02 Thread Peter Eriksson
Interesting discussion regarding sig_atomic_t, volatile & stuff. It seems I opened a can of worms. Sorry :-) Anyway here are the references I had read when suggesting this change: C89: - http://port70.net/~nsz/c/c99/n1256.html#7.14p2 CERT C Coding Standard: - https://wiki.sei.cmu.edu/confluen

Re: Review of patch that uses "volatile sig_atomic_t"

2023-08-02 Thread Rick Macklem
On Mon, Jul 31, 2023 at 11:33 PM David Chisnall wrote: > > Hi, > > This bit of the C spec is a bit of a mess. There was, I believe, a desire to > return volatile to its original use and make any use of volatile other than > MMIO discouraged. This broke too much legacy code and so now it’s a conf

Re: Review of patch that uses "volatile sig_atomic_t"

2023-08-02 Thread David Chisnall
On 2 Aug 2023, at 00:33, Rick Macklem wrote: > > Just trying to understand what you are suggesting... > 1 - Declare the variable _Atomic(int) OR atomic_int (is there a preference) > and > not volatile. Either is fine (the latter is a typedef for the former). I am not a huge fan of the typ

Re: Review of patch that uses "volatile sig_atomic_t"

2023-07-31 Thread David Chisnall
Hi, This bit of the C spec is a bit of a mess. There was, I believe, a desire to return volatile to its original use and make any use of volatile other than MMIO discouraged. This broke too much legacy code and so now it’s a confusing state. The requirements for volatile are that the compiler

Review of patch that uses "volatile sig_atomic_t"

2023-07-31 Thread Rick Macklem
Hi, I just put D41265 up on phabricator. It is a trivial change to mountd.c that defines the variable set by got_sighup() (the SIGHUP handler) as static volatile sig_atomic_t instead of static int I did list a couple of reviewers, but if you are familiar with this C requirement, please tak