On Tue 13-05-25 17:03:27, Max Kellermann wrote: > Allows killing processes that are waiting for the inode lock. > > Signed-off-by: Max Kellermann <max.kellermann@xxxxxxxxx> Looks good. Feel free to add: Reviewed-by: Jan Kara <jack@xxxxxxx> > v2: split into separate patches > > TODO: review whether all callers can handle EINTR; see I did a quick audit and everything seems OK AFAICT. Honza > https://lore.kernel.org/linux-fsdevel/20250512-unrat-kapital-2122d3777c5d@brauner/ > and > https://lore.kernel.org/linux-fsdevel/hzrj5b7x3rvtxt4qgjxdihhi5vjoc5gw3i35pbyopa7ccucizo@q5c42kjlkly3/ > > Signed-off-by: Max Kellermann <max.kellermann@xxxxxxxxx> > --- > fs/read_write.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/fs/read_write.c b/fs/read_write.c > index bb0ed26a0b3a..0ef70e128c4a 100644 > --- a/fs/read_write.c > +++ b/fs/read_write.c > @@ -332,7 +332,9 @@ loff_t default_llseek(struct file *file, loff_t offset, int whence) > struct inode *inode = file_inode(file); > loff_t retval; > > - inode_lock(inode); > + retval = inode_lock_killable(inode); > + if (retval) > + return retval; > switch (whence) { > case SEEK_END: > offset += i_size_read(inode); > -- > 2.47.2 > -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR