diff options
| author | Kukjin Kim <kgene.kim@samsung.com> | 2014-05-30 13:36:49 -0400 |
|---|---|---|
| committer | Kukjin Kim <kgene.kim@samsung.com> | 2014-05-30 13:36:49 -0400 |
| commit | fced6dee29f6fb143fe16ea90331176ff77e6120 (patch) | |
| tree | 5b6e57e7a757adc2a6518ce291a4d2914397b917 /fs/cifs/smb2ops.c | |
| parent | bfed1074f213051e94648bfad0d0611a16d81366 (diff) | |
| parent | be1f7c8d7e2bc8b8c76846aa6f276e8d2ef8975a (diff) | |
Merge branch 'v3.16-next/cleanup-samsung' into v3.16-next/platform-exynos
Diffstat (limited to 'fs/cifs/smb2ops.c')
| -rw-r--r-- | fs/cifs/smb2ops.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/fs/cifs/smb2ops.c b/fs/cifs/smb2ops.c index 192f51a12cf1..35ddc3ed119d 100644 --- a/fs/cifs/smb2ops.c +++ b/fs/cifs/smb2ops.c | |||
| @@ -905,6 +905,17 @@ smb2_query_symlink(const unsigned int xid, struct cifs_tcon *tcon, | |||
| 905 | } | 905 | } |
| 906 | 906 | ||
| 907 | static void | 907 | static void |
| 908 | smb2_downgrade_oplock(struct TCP_Server_Info *server, | ||
| 909 | struct cifsInodeInfo *cinode, bool set_level2) | ||
| 910 | { | ||
| 911 | if (set_level2) | ||
| 912 | server->ops->set_oplock_level(cinode, SMB2_OPLOCK_LEVEL_II, | ||
| 913 | 0, NULL); | ||
| 914 | else | ||
| 915 | server->ops->set_oplock_level(cinode, 0, 0, NULL); | ||
| 916 | } | ||
| 917 | |||
| 918 | static void | ||
| 908 | smb2_set_oplock_level(struct cifsInodeInfo *cinode, __u32 oplock, | 919 | smb2_set_oplock_level(struct cifsInodeInfo *cinode, __u32 oplock, |
| 909 | unsigned int epoch, bool *purge_cache) | 920 | unsigned int epoch, bool *purge_cache) |
| 910 | { | 921 | { |
| @@ -1110,6 +1121,7 @@ struct smb_version_operations smb20_operations = { | |||
| 1110 | .clear_stats = smb2_clear_stats, | 1121 | .clear_stats = smb2_clear_stats, |
| 1111 | .print_stats = smb2_print_stats, | 1122 | .print_stats = smb2_print_stats, |
| 1112 | .is_oplock_break = smb2_is_valid_oplock_break, | 1123 | .is_oplock_break = smb2_is_valid_oplock_break, |
| 1124 | .downgrade_oplock = smb2_downgrade_oplock, | ||
| 1113 | .need_neg = smb2_need_neg, | 1125 | .need_neg = smb2_need_neg, |
| 1114 | .negotiate = smb2_negotiate, | 1126 | .negotiate = smb2_negotiate, |
| 1115 | .negotiate_wsize = smb2_negotiate_wsize, | 1127 | .negotiate_wsize = smb2_negotiate_wsize, |
| @@ -1184,6 +1196,7 @@ struct smb_version_operations smb21_operations = { | |||
| 1184 | .clear_stats = smb2_clear_stats, | 1196 | .clear_stats = smb2_clear_stats, |
| 1185 | .print_stats = smb2_print_stats, | 1197 | .print_stats = smb2_print_stats, |
| 1186 | .is_oplock_break = smb2_is_valid_oplock_break, | 1198 | .is_oplock_break = smb2_is_valid_oplock_break, |
| 1199 | .downgrade_oplock = smb2_downgrade_oplock, | ||
| 1187 | .need_neg = smb2_need_neg, | 1200 | .need_neg = smb2_need_neg, |
| 1188 | .negotiate = smb2_negotiate, | 1201 | .negotiate = smb2_negotiate, |
| 1189 | .negotiate_wsize = smb2_negotiate_wsize, | 1202 | .negotiate_wsize = smb2_negotiate_wsize, |
| @@ -1259,6 +1272,7 @@ struct smb_version_operations smb30_operations = { | |||
| 1259 | .print_stats = smb2_print_stats, | 1272 | .print_stats = smb2_print_stats, |
| 1260 | .dump_share_caps = smb2_dump_share_caps, | 1273 | .dump_share_caps = smb2_dump_share_caps, |
| 1261 | .is_oplock_break = smb2_is_valid_oplock_break, | 1274 | .is_oplock_break = smb2_is_valid_oplock_break, |
| 1275 | .downgrade_oplock = smb2_downgrade_oplock, | ||
| 1262 | .need_neg = smb2_need_neg, | 1276 | .need_neg = smb2_need_neg, |
| 1263 | .negotiate = smb2_negotiate, | 1277 | .negotiate = smb2_negotiate, |
| 1264 | .negotiate_wsize = smb2_negotiate_wsize, | 1278 | .negotiate_wsize = smb2_negotiate_wsize, |
