Messages in this thread | | | Subject | Re: [PATCH v6 5/5] x86/tdx: Add Quote generation support | From | Kai Huang <> | Date | Tue, 17 May 2022 14:58:38 +1200 |
| |
On Fri, 2022-05-13 at 12:29 -0700, Sathyanarayanan Kuppuswamy wrote: > > > > > > > + > > > + /* Wait for attestation completion */ > > > + ret = wait_for_completion_interruptible(&entry->compl); > > > + if (ret < 0) { > > > + /* > > > + * For premature termination, since VMM still owns the > > > + * shared buffer, mark the request invalid to let > > > + * quote_callback_handler() handle the memory cleanup > > > + * function. > > > + */ > > > + invalidate_quote_request(entry); > > > > Interrupt can arrive after signal interrupt. So invalidate_quote_request() > > should check if the request is already processed, and return 0 or -EINTR. > > Probably check the state always and del_list under single lock/unlock pair. > > Agree. But I think we should return -EINTR for the interrupted case > irrespective of the processed status (so no return 0). > > I will hold the lock and handle the cleanup for the processed > status.
Even if we check the buffer status in invalidate_quote_request(), there's no guarantee the VMM won't change the buffer status _after_ we do the check, so looks such check isn't necessary.
-- Thanks, -Kai
| |