On 12/02/2011 12:38 PM, Pavel Shilovsky wrote: > 2011/12/2 Suresh Jayaraman <sjayaraman@xxxxxxxx>: >> The stable release 2.6.32.32 added the upstream commit >> 12fed00de963433128b5366a21a55808fab2f756. However, one of the hunks of >> the original patch seems missing from the stable backport which can be >> found here: >> http://permalink.gmane.org/gmane.linux.kernel.stable/5676 >> >> This hunk corresponds to the change in is_valid_oplock_break() at >> fs/cifs/misc.c. >> >> This patch backports the missing hunk and is against >> linux-2.6.32.y stable kernel. >> >> >> Cc: Steve French <sfrench@xxxxxxxxxx> >> Cc: Pavel Shilovsky <piastry@xxxxxxxxxxx> >> Signed-off-by: Suresh Jayaraman <sjayaraman@xxxxxxxx> >> --- >> [PS. not very happy about the subject line and changelog. >> Feel free to modify as you see fit.] >> >> fs/cifs/misc.c | 3 +++ >> 1 files changed, 3 insertions(+), 0 deletions(-) >> >> diff --git a/fs/cifs/misc.c b/fs/cifs/misc.c >> index d27d4ec..7055827 100644 >> --- a/fs/cifs/misc.c >> +++ b/fs/cifs/misc.c >> @@ -584,6 +584,9 @@ is_valid_oplock_break(struct smb_hdr *buf, struct TCP_Server_Info *srv) >> pCifsInode->clientCanCacheAll = false; >> if (pSMB->OplockLevel == 0) >> pCifsInode->clientCanCacheRead = false; >> + else if (pSMB->OplockLevel == OPLOCK_READ) > pSMB->OplockLevel can either be 0 or 1 here but OPLOCK_READ is 3 - > this should be: > "else if (pSMB->OplockLevel)" > >> + pCifsInode->clientCanCacheRead = true; >> + Hmm.. if OplockLevel is OPLOCK_EXCLUSIVE, the we should set both clientCanCacheAll and clientCanCacheRead, no? Suresh -- To unsubscribe from this list: send the line "unsubscribe linux-cifs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html