Looks good. Minor nit is + } else if (qi.flags != PASSTHRU_QUERY_INFO) { + cifs_dbg(VFS, "invalid passthru query flags: 0x%x\n", qi.flags); + rc = -EINVAL; + } else { + memset(&qi_iov, 0, sizeof(qi_iov)); + rqst[1].rq_iov = qi_iov; + rqst[1].rq_nvec = 1; I think it is clearer if the "nothing matched, error out" conditional is the last one in the chain. I.e. swap them around. reviewedby me On Wed, Mar 13, 2019 at 5:29 PM Steve French <smfrench@xxxxxxxxx> wrote: > > SMB3: passthru query info doesn't check for SMB3 FSCTL passthru > > The passthrough queries from user space tools like smbinfo can be either > SMB3 QUERY_INFO or SMB3 FSCTL, but we are not checking for the latter. > Temporarily we return EOPNOTSUPP for SMB3 FSCTL passthrough requests > but once compounding fsctls is fixed we can remove the EOPNOTSUPP. > > > -- > Thanks, > > Steve