Page MenuHomeFreeBSD

atomic_common.h: Fix the volatile qualifier placement in atomic_load_ptr
ClosedPublic

Authored by jrtc27 on Sep 20 2020, 10:31 PM.
Tags
None
Referenced Files
F174504951: D26500.diff
Sat, Oct 3, 6:53 PM
Unknown Object (File)
Fri, Sep 25, 12:28 AM
Unknown Object (File)
Fri, Sep 25, 12:03 AM
Unknown Object (File)
Thu, Sep 24, 11:51 PM
Unknown Object (File)
Fri, Sep 11, 2:18 PM
Unknown Object (File)
Fri, Sep 11, 11:13 AM
Unknown Object (File)
Fri, Sep 11, 10:57 AM
Unknown Object (File)
Fri, Sep 11, 10:52 AM
Subscribers

Details

Summary

This was broken in r357940 which introduced the __typeof use. We need
the volatile qualifier to be on the pointee not the pointer otherwise it
does nothing. This was found by mhorne in D26498, noticing there was a
problem (a spin loop condition was hoisted for RISC-V boot code) but not
the root cause of it.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable