I don't see where my_wait_event_info is read (there is no getter method in the patch).
In that case, it is fine omitting volatile in the declaration.
Cheers
On Fri, Apr 2, 2021 at 1:10 PM Andres Freund <andres@anarazel.de> wrote:
Hi,
On 2021-04-02 13:06:35 -0700, Zhihong Yu wrote: > +extern PGDLLIMPORT uint32 *my_wait_event_info; > > It seems volatile should be added to the above declaration. Since later: > > + *(volatile uint32 *) my_wait_event_info = wait_event_info;
Why? We really just want to make the store volatile, nothing else. I think it's much better to annotate that we want individual stores to happen regardless of compiler optimizations, rather than all interactions with a variable.