Re: [PATCH RESEND 07/11] cifs: Check if server supports EAs before trying to set it for WSL
Steve French <[email protected]>
| Newsgroups | org.kernel.vger.linux-cifs,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <CAH2r5mvHgpVP=CxcBd6iygLzDr5cvvvh9_W7DbxzRJTN6H4FKA@mail.gmail.com> |
If this were purely Linux, without this patch what would happen with creating special files if the server didn't support EAs. Would some special files still work? On Mon, Jul 6, 2026 at 1:52 PM Pali Rohár <[email protected]> wrote: > > WSL special files store information into EAs. When EAs are not supported > on the server filesystem then fast fail in mknod_wsl() function. > > Signed-off-by: Pali Rohár <[email protected]> > --- > fs/smb/client/reparse.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/fs/smb/client/reparse.c b/fs/smb/client/reparse.c > index 99e93b56374f..e2ea59a17c9c 100644 > --- a/fs/smb/client/reparse.c > +++ b/fs/smb/client/reparse.c > @@ -668,6 +668,13 @@ static int mknod_wsl(unsigned int xid, struct inode *inode, > struct kvec reparse_iov, xattr_iov; > int rc; > > + /* > + * WSL special files store information into EAs. When EAs are not > + * supported on the server filesystem then fast fail. > + */ > + if (!(le32_to_cpu(tcon->fsAttrInfo.Attributes) & FILE_SUPPORTS_EXTENDED_ATTRIBUTES)) > + return -EOPNOTSUPP; > + > rc = wsl_set_reparse_buf(&buf, mode, symname, cifs_sb, &reparse_iov); > if (rc) > return rc; > -- > 2.20.1 > > -- Thanks, Steve