cifs: Remove struct reparse_posix_data from struct cifs_open_info_data

Linux SMB client already supports more reparse point types but only the
reparse_posix_data is defined in union of struct cifs_open_info_data.
This union is currently used as implicit casting between point types.

With this code style, it hides information that union is used for pointer
casting, and just in mknod_nfs() and posix_reparse_to_fattr() functions.

Other reparse point buffers do not use this kind of casting. So remove
reparse_posix_data from reparse part of struct cifs_open_info_data and for
all cases of reparse buffer use just struct reparse_data_buffer *buf.

Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
This commit is contained in:
Pali Rohár 2024-09-28 14:13:44 +02:00 committed by Steve French
parent 24cf72976a
commit 65ccccee4e
2 changed files with 3 additions and 7 deletions

View File

@ -226,10 +226,7 @@ struct cifs_open_info_data {
struct kvec iov; struct kvec iov;
} io; } io;
__u32 tag; __u32 tag;
union { struct reparse_data_buffer *buf;
struct reparse_data_buffer *buf;
struct reparse_posix_data *posix;
};
} reparse; } reparse;
struct { struct {
__u8 eas[SMB2_WSL_MAX_QUERY_EA_RESP_SIZE]; __u8 eas[SMB2_WSL_MAX_QUERY_EA_RESP_SIZE];

View File

@ -294,7 +294,7 @@ static int mknod_nfs(unsigned int xid, struct inode *inode,
data = (struct cifs_open_info_data) { data = (struct cifs_open_info_data) {
.reparse_point = true, .reparse_point = true,
.reparse = { .tag = IO_REPARSE_TAG_NFS, .posix = p, }, .reparse = { .tag = IO_REPARSE_TAG_NFS, .buf = (struct reparse_data_buffer *)p, },
}; };
new = smb2_get_reparse_inode(&data, inode->i_sb, xid, new = smb2_get_reparse_inode(&data, inode->i_sb, xid,
@ -816,8 +816,7 @@ static bool posix_reparse_to_fattr(struct cifs_sb_info *cifs_sb,
struct cifs_fattr *fattr, struct cifs_fattr *fattr,
struct cifs_open_info_data *data) struct cifs_open_info_data *data)
{ {
struct reparse_posix_data *buf = data->reparse.posix; struct reparse_posix_data *buf = (struct reparse_posix_data *)data->reparse.buf;
if (buf == NULL) if (buf == NULL)
return true; return true;