diff mbox series

[6/6] vfio: do not set FMODE_LSEEK flag

Message ID 20220624165631.2124632-7-Jason@zx2c4.com (mailing list archive)
State New, archived
Headers show
Series cleanup llseek and splice | expand

Commit Message

Jason A. Donenfeld June 24, 2022, 4:56 p.m. UTC
This file does not support llseek, so don't set the flag advertising it.

Cc: Alex Williamson <alex.williamson@redhat.com>
Cc: Cornelia Huck <cohuck@redhat.com>
Cc: kvm@vger.kernel.org
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
---
 drivers/vfio/vfio.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Al Viro June 24, 2022, 9:53 p.m. UTC | #1
On Fri, Jun 24, 2022 at 06:56:31PM +0200, Jason A. Donenfeld wrote:
> This file does not support llseek, so don't set the flag advertising it.

... or it could grow a working llseek - doesn't look like it would be
hard to do...
Jason A. Donenfeld June 25, 2022, 10:52 a.m. UTC | #2
On Fri, Jun 24, 2022 at 10:53:19PM +0100, Al Viro wrote:
> On Fri, Jun 24, 2022 at 06:56:31PM +0200, Jason A. Donenfeld wrote:
> > This file does not support llseek, so don't set the flag advertising it.
> 
> ... or it could grow a working llseek - doesn't look like it would be
> hard to do...

I started doing this, but it looks somewhat involved and a bit out of
scope here. vfio_device_ops would need to grow a new member, and then
the various types of vfio devices would need to start using it and so
forth. I'll save that for another series.

Jason
diff mbox series

Patch

diff --git a/drivers/vfio/vfio.c b/drivers/vfio/vfio.c
index 61e71c1154be..d194dda89542 100644
--- a/drivers/vfio/vfio.c
+++ b/drivers/vfio/vfio.c
@@ -1129,7 +1129,7 @@  static struct file *vfio_device_open(struct vfio_device *device)
 	 * Appears to be missing by lack of need rather than
 	 * explicitly prevented.  Now there's need.
 	 */
-	filep->f_mode |= (FMODE_LSEEK | FMODE_PREAD | FMODE_PWRITE);
+	filep->f_mode |= (FMODE_PREAD | FMODE_PWRITE);
 
 	if (device->group->type == VFIO_NO_IOMMU)
 		dev_warn(device->dev, "vfio-noiommu device opened by user "