diff options
author | Pavel Shilovsky <piastry@etersoft.ru> | 2011-10-22 07:33:30 -0400 |
---|---|---|
committer | Steve French <smfrench@gmail.com> | 2011-10-24 13:29:27 -0400 |
commit | 4f6bcec910d45e4f46b1514977caa529bc69e645 (patch) | |
tree | 37469bfcd1216ea98f0a947b997ce65e1b5aa3b0 /fs/cifs/cifssmb.c | |
parent | 85160e03a79e0d7f9082e61f6a784abc6f402701 (diff) |
CIFS: Implement caching mechanism for posix brlocks
to handle all lock requests on the client in an exclusive oplock case.
Signed-off-by: Pavel Shilovsky <piastry@etersoft.ru>
Acked-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <smfrench@gmail.com>
Diffstat (limited to 'fs/cifs/cifssmb.c')
-rw-r--r-- | fs/cifs/cifssmb.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/cifs/cifssmb.c b/fs/cifs/cifssmb.c index 4435b11c41b9..6a45a1769388 100644 --- a/fs/cifs/cifssmb.c +++ b/fs/cifs/cifssmb.c | |||
@@ -2393,9 +2393,9 @@ CIFSSMBLock(const int xid, struct cifs_tcon *tcon, | |||
2393 | 2393 | ||
2394 | int | 2394 | int |
2395 | CIFSSMBPosixLock(const int xid, struct cifs_tcon *tcon, | 2395 | CIFSSMBPosixLock(const int xid, struct cifs_tcon *tcon, |
2396 | const __u16 smb_file_id, const int get_flag, const __u64 len, | 2396 | const __u16 smb_file_id, const __u32 netpid, const int get_flag, |
2397 | struct file_lock *pLockData, const __u16 lock_type, | 2397 | const __u64 len, struct file_lock *pLockData, |
2398 | const bool waitFlag) | 2398 | const __u16 lock_type, const bool waitFlag) |
2399 | { | 2399 | { |
2400 | struct smb_com_transaction2_sfi_req *pSMB = NULL; | 2400 | struct smb_com_transaction2_sfi_req *pSMB = NULL; |
2401 | struct smb_com_transaction2_sfi_rsp *pSMBr = NULL; | 2401 | struct smb_com_transaction2_sfi_rsp *pSMBr = NULL; |
@@ -2453,7 +2453,7 @@ CIFSSMBPosixLock(const int xid, struct cifs_tcon *tcon, | |||
2453 | } else | 2453 | } else |
2454 | pSMB->Timeout = 0; | 2454 | pSMB->Timeout = 0; |
2455 | 2455 | ||
2456 | parm_data->pid = cpu_to_le32(current->tgid); | 2456 | parm_data->pid = cpu_to_le32(netpid); |
2457 | parm_data->start = cpu_to_le64(pLockData->fl_start); | 2457 | parm_data->start = cpu_to_le64(pLockData->fl_start); |
2458 | parm_data->length = cpu_to_le64(len); /* normalize negative numbers */ | 2458 | parm_data->length = cpu_to_le64(len); /* normalize negative numbers */ |
2459 | 2459 | ||