[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <f8d92685-27dd-e7ef-ce0d-100a285aec4b@intel.com>
Date: Tue, 5 Apr 2022 10:25:15 -0700
From: Dave Hansen <dave.hansen@...el.com>
To: Reinette Chatre <reinette.chatre@...el.com>,
Jarkko Sakkinen <jarkko@...nel.org>
Cc: dave.hansen@...ux.intel.com, tglx@...utronix.de, bp@...en8.de,
luto@...nel.org, mingo@...hat.com, linux-sgx@...r.kernel.org,
x86@...nel.org, seanjc@...gle.com, kai.huang@...el.com,
cathy.zhang@...el.com, cedric.xing@...el.com,
haitao.huang@...el.com, mark.shanahan@...el.com, hpa@...or.com,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH V3 19/30] x86/sgx: Free up EPC pages directly to support
large page ranges
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)
{
...
Powered by blists - more mailing lists