On Mon, Jun 14, 2021 at 01:04:21PM -0700, Kees Cook wrote: > static ssize_t psblk_generic_blk_write(const char *buf, size_t bytes, > loff_t pos) > { > /* Console/Ftrace backend may handle buffer until flush dirty zones */ > if (in_interrupt() || irqs_disabled()) > return -EBUSY; > + return kernel_write(psblk_file, buf, bytes, &pos); In which locking environments could that be called? The checks above look like that thing could be called from just about any context; could that happen when the caller is holding a page locked? IOW, what are those checks really trying to do?