On 8/26/22 16:20, Emanuele Giuseppe Esposito wrote:
With "intact" we mean that all job.h functions implicitly take the lock. Therefore API callers are unmodified.This means that: - many static functions that will be always called with job lock held become _locked, and call _locked functions - all public functions take the lock internally if needed, and call _locked functions - all public functions called internally by other functions in job.c will have a _locked counterpart (sometimes public), to avoid deadlocks (job lock already taken). These functions are not used for now. - some public functions called only from exernal files (not job.c) do not have _locked() counterpart and take the lock inside. Others won't need the lock at all because use fields only set at initialization and never modified. job_{lock/unlock} is independent from real_job_{lock/unlock}. Note: at this stage, job_{lock/unlock} and job lock guard macros are*nop* Signed-off-by: Emanuele Giuseppe Esposito<[email protected]> Reviewed-by: Kevin Wolf<[email protected]> Reviewed-by: Stefan Hajnoczi<[email protected]>
Reviewed-by: Vladimir Sementsov-Ogievskiy <[email protected]> -- Best regards, Vladimir
