Re: [PATCH] mm: filemap: tighten dropbehind completion context check
Matthew Wilcox <[email protected]>
| Newsgroups | org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-kernel,org.kvack.linux-mm |
|---|---|
| Message-ID | <[email protected]> |
On Thu, Aug 20, 2026 at 10:29:56PM +0800, Wenjie Qi wrote: > folio_end_dropbehind() uses in_task() to keep folio invalidation out of > interrupt context. Task context alone is not sufficient: preemption can > still be disabled, or the task can be in a preemptible RCU read-side > critical section, while filemap_end_dropbehind() may reach > folio_unmap_invalidate() and sleep. > > Use the established conservative three-part atomic-context test: reject > preemptible RCU read-side sections, reject configurations without > PREEMPT_COUNT, and otherwise require a preemptible context. Unsafe > completions retain the existing best-effort behavior and skip invalidation. Have you seen this happen in practice, or is this based on code examination?