On Mon, Dec 21, 2020 at 07:07:18PM +0800, Muchun Song wrote: > > The above implies that update_and_free_page() is __always__ called from a > > non-task context, but that is not always the case? > > IIUC, here is always the case. I might be missing something obvious, so bear with me. I guess you are refering to the call __free_huge_page()->update_and_free_page(). AFAICS, free_huge_page might call __free_huge_page right away when in task context, and so, we would be calling update_and_free in a task context as well. Or are you referring to the other callers? -- Oscar Salvador SUSE L3