5903 SMB server breaks an oplock on after an attribute (only) open

Review Request #46 — Created May 2, 2015 and submitted

gwr
illumos-gate
5903
general

We were needlessly revoking cache state (sending an "oplock break") in a case where a new client open had access rights that only allowed attribute changes. We're not supposed to revoke cache delegations in such a case.

There was also some poorly ordered logic in smb_open_subr() which we fixed while looking at this.
The general order of things should be: (a) access checks, (b) oplock breaking, (c) share modes, (d) actually create etc.

Author: Alek Pinchuk
Reviewers:
Gordon Ross
Kevin Crowe

Samba "smbtorture" oplock tests.
Field tested for quite some time.

  • 0
  • 0
  • 0
  • 1
  • 1
Description From Last Updated
gwr
richlowe
  1. Except for that one possibly stylistic nit, I'm fine with this, but the re-ordering of code makes it a bit hard to read, so if you're paranoid get another reviewer too.

  2. Indent damage of some kind, or maybe RB mis-drawing it?

    1. Yeah, RB. Looks fine in the C file.

  3. 
      
gwr
richlowe
  1. Ship It!
  2. 
      
gwr
Review request changed

Status: Closed (submitted)

Loading...