On 6/3/24 11:42, Haitao Huang wrote: >> Second, convince me that this _needs_ a new bit. Why can't we just have >> a bit that effectively means "return EBUSY if you see this bit when >> handling a fault". > > IIUC, reclaimer_writing_to_pcmd() also uses > SGX_ENCL_PAGE_BEING_RECLAIMED to check if a page is about being > reclaimed in order to prevent its VA slot fro being freed. So I think we > do need separate bit for EREMOVE which does not write to VA slot? I think the bits should be centered around what action the code needs to take and not what is being done to the page. Right now, SGX_ENCL_PAGE_BEING_RECLAIMED has two logical meanings: 1. Don't load the page 2. The page is in the backing store But now folks are suggesting that a new bit is added which means "do #1, but not #2". Let's take a step back and look at what logical outcomes we want in the code and then create the bits based on _that_.