Re: [PATCH v4 2/2] s390/vfio-ap: control access to PQAP(AQIC) interception handler

From: Jason J. Herne
Date: Tue May 25 2021 - 10:08:08 EST


On 5/25/21 9:26 AM, Jason Gunthorpe wrote:
On Tue, May 25, 2021 at 09:24:59AM -0400, Jason J. Herne wrote:
change the function pointer to point to vfio_ap_ops:handle_pqap(). When we
unload the module we change the function pointer back to the stub. The
updates should be atomic operations so no lock needed, right?

No

Jason


Okay... Would you be willing to elaborate, please? A counter argument, or a simple explanation would be appreciated. A simple "no" does not really do much to advance the discussion :).

I'm fairly sure that a 64-bit pointer would be updated atomically. A reader of this value is either going to see value A or value B, not the high half of A and the low half of B. Maybe we also need a memory barrier to prevent stale values from being seen on another core?

--
-- Jason J. Herne (jjherne@xxxxxxxxxxxxx)