Re: [PATCH] cifs: add support for fallocate mode 0 for non-sparse files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jan 15, 2020 at 11:25 AM Steve French <smfrench@xxxxxxxxx> wrote:
>
> Does it affect (or enable) any xfstests?

It shouldn't affect any current tests.
It adds support for
   xfs_io -c "falloc 0 512M" <file>

generic/071 now passes with this patch.   Possibly other tests as well
that use "xfs_io -c falloc" as well


>
> On Tue, Jan 14, 2020 at 7:23 PM Ronnie Sahlberg <lsahlber@xxxxxxxxxx> wrote:
> >
> > RHBZ 1336264
> >
> > Signed-off-by: Ronnie Sahlberg <lsahlber@xxxxxxxxxx>
> > ---
> >  fs/cifs/smb2ops.c | 10 +++++++---
> >  1 file changed, 7 insertions(+), 3 deletions(-)
> >
> > diff --git a/fs/cifs/smb2ops.c b/fs/cifs/smb2ops.c
> > index 6250370c1170..91818f7c1b9c 100644
> > --- a/fs/cifs/smb2ops.c
> > +++ b/fs/cifs/smb2ops.c
> > @@ -3106,9 +3106,13 @@ static long smb3_simple_falloc(struct file *file, struct cifs_tcon *tcon,
> >                 else if (i_size_read(inode) >= off + len)
> >                         /* not extending file and already not sparse */
> >                         rc = 0;
> > -               /* BB: in future add else clause to extend file */
> > -               else
> > -                       rc = -EOPNOTSUPP;
> > +               /* extend file */
> > +               else {
> > +                       eof = cpu_to_le64(off + len);
> > +                       rc = SMB2_set_eof(xid, tcon, cfile->fid.persistent_fid,
> > +                                         cfile->fid.volatile_fid, cfile->pid,
> > +                                         &eof);
> > +               }
> >                 if (rc)
> >                         trace_smb3_falloc_err(xid, cfile->fid.persistent_fid,
> >                                 tcon->tid, tcon->ses->Suid, off, len, rc);
> > --
> > 2.13.6
> >
>
>
> --
> Thanks,
>
> Steve



[Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux