Messages in this thread | | | Date | Mon, 16 Oct 2023 18:55:41 +0100 | From | Matthew Wilcox <> | Subject | Re: [PATCHv2] efi/unaccepted: Fix soft lockups caused by parallel memory acceptance |
| |
On Mon, Oct 16, 2023 at 07:31:22PM +0300, Kirill A. Shutemov wrote: > v2: > - Fix deadlock (Vlastimil); > - Fix comments (Vlastimil); > - s/cond_resched()/cpu_relax()/ -- cond_resched() cannot be called > from atomic context;
Isn't there an implicit cpu_relax() while we're spinning? Does this really accomplish anything?
> +retry: > spin_lock_irqsave(&unaccepted_memory_lock, flags); [...] > + spin_unlock_irqrestore(&unaccepted_memory_lock, flags); > + > + /* > + * The code is reachable from atomic context. > + * cond_resched() cannot be used. > + */ > + cpu_relax(); > + > + goto retry;
| |