Skip to content

Commit

Permalink
CIFS: Convert lock type to 32 bit variable
Browse files Browse the repository at this point in the history
to handle SMB2 lock type field further.

Acked-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru>
  • Loading branch information
Pavel Shilovsky authored and Steve French committed May 17, 2012
1 parent fbd35ac commit 04a6aa8
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 7 deletions.
2 changes: 1 addition & 1 deletion fs/cifs/cifsglob.h
Original file line number Diff line number Diff line change
Expand Up @@ -567,7 +567,7 @@ struct cifsLockInfo {
__u64 offset;
__u64 length;
__u32 pid;
__u8 type;
__u32 type;
};

/*
Expand Down
13 changes: 7 additions & 6 deletions fs/cifs/file.c
Original file line number Diff line number Diff line change
Expand Up @@ -912,7 +912,8 @@ cifs_push_mandatory_locks(struct cifsFileInfo *cfile)
cur->OffsetHigh = cpu_to_le32((u32)(li->offset>>32));
if (++num == max_num) {
stored_rc = cifs_lockv(xid, tcon, cfile->netfid,
li->type, 0, num, buf);
(__u8)li->type, 0, num,
buf);
if (stored_rc)
rc = stored_rc;
cur = buf;
Expand All @@ -923,7 +924,7 @@ cifs_push_mandatory_locks(struct cifsFileInfo *cfile)

if (num) {
stored_rc = cifs_lockv(xid, tcon, cfile->netfid,
types[i], 0, num, buf);
(__u8)types[i], 0, num, buf);
if (stored_rc)
rc = stored_rc;
}
Expand Down Expand Up @@ -1067,7 +1068,7 @@ cifs_push_locks(struct cifsFileInfo *cfile)
}

static void
cifs_read_flock(struct file_lock *flock, __u8 *type, int *lock, int *unlock,
cifs_read_flock(struct file_lock *flock, __u32 *type, int *lock, int *unlock,
bool *wait_flag)
{
if (flock->fl_flags & FL_POSIX)
Expand Down Expand Up @@ -1111,7 +1112,7 @@ cifs_read_flock(struct file_lock *flock, __u8 *type, int *lock, int *unlock,
}

static int
cifs_getlk(struct file *file, struct file_lock *flock, __u8 type,
cifs_getlk(struct file *file, struct file_lock *flock, __u32 type,
bool wait_flag, bool posix_lck, int xid)
{
int rc = 0;
Expand Down Expand Up @@ -1299,7 +1300,7 @@ cifs_unlock_range(struct cifsFileInfo *cfile, struct file_lock *flock, int xid)
}

static int
cifs_setlk(struct file *file, struct file_lock *flock, __u8 type,
cifs_setlk(struct file *file, struct file_lock *flock, __u32 type,
bool wait_flag, bool posix_lck, int lock, int unlock, int xid)
{
int rc = 0;
Expand Down Expand Up @@ -1370,7 +1371,7 @@ int cifs_lock(struct file *file, int cmd, struct file_lock *flock)
struct cifsInodeInfo *cinode;
struct cifsFileInfo *cfile;
__u16 netfid;
__u8 type;
__u32 type;

rc = -EACCES;
xid = GetXid();
Expand Down

0 comments on commit 04a6aa8

Please sign in to comment.