On Tue, 2022-04-05 at 10:25 -0700, Dave Hansen wrote: > On 4/5/22 10:13, Reinette Chatre wrote: > > > > +void sgx_direct_reclaim(void) > > > > +{ > > > > + if (sgx_should_reclaim(SGX_NR_LOW_PAGES)) > > > > + sgx_reclaim_pages(); > > > > +} > > > Please, instead open code this to both locations - not enough redundancy > > > to be worth of new function. Causes only unnecessary cross-referencing > > > when maintaining. Otherwise, I agree with the idea. > > > > > hmmm, that means the heart of the reclaimer (sgx_reclaim_pages()) would be > > made available for direct use from everywhere in the driver. I will look into this. > > I like the change. It's not about reducing code redundancy, it's about > *describing* what the code does. Each location could have: > > /* Enter direct SGX reclaim: */ > if (sgx_should_reclaim(SGX_NR_LOW_PAGES)) > sgx_reclaim_pages(); > > Or, it could just be: > > sgx_direct_reclaim(); > > Which also provides a logical choke point to add comments, like: > > /* > * sgx_direct_reclaim() should be called in locations where SGX > * memory resources might be low and might be needed in order > * to make forward progress. > */ > void sgx_direct_reclaim(void) > { > ... Maybe cutting hairs but could it be "sgx_reclaim_direct"? Rationale is easier grepping of reclaimer functions, e.g. when tracing. BR, Jarkko