on 8/21/2023 6:32 PM, Mel Gorman wrote: > On Thu, Aug 17, 2023 at 11:05:22PM -0700, Chris Li wrote: >> In this patch series I want to safeguard >> the free_pcppage_bulk against change in the >> pcp->count outside of this function. e.g. >> by BPF program inject on the function tracepoint. >> >> I break up the patches into two seperate patches >> for the safeguard and clean up. >> >> Hopefully that is easier to review. >> >> Signed-off-by: Chris Li <chrisl@xxxxxxxxxx> > > This sounds like a maintenance nightmare if internal state can be arbitrary > modified by a BPF program and still expected to work properly in all cases. > Every review would have to take into account "what if a BPF script modifies > state behind our back?" > Agreed. We assume pcp->count is protected by pcp->lock. Instead of make code work in case pcp->count could be changed without lock held, it's more reasonble to modify pcp->count with pcp->lock held in BPF program.