5899 panic on bad mutex in smb_event_wait()

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

gwr
illumos-gate
5899
general

5899 panic on bad mutex in smb_event_wait()

There was an ordering problem in tear-down of the "events" support
and these "threshold" things. I never liked the smb_event stuff.
It's a global event list largely duplicating the functionality of the old-style
unix sleep/wakeup (on an address) mechanism. It was not needed here,
so the use of events was removed, and the wait implemented using a
simple cv_timewait() instead.

Internal reviewers were:
Thomas Keiser
Dan McDonald
Albert Lee

Verfied the fix by forcing smbd to core dump and making sure the smbsrv module doesn't panic.
Has also been in the field for quite a while.

  • 0
  • 0
  • 1
  • 0
  • 1
Description From Last Updated
richlowe
  1. 
      
  2. Does all of this comment still apply?

    1. The comment could be improved, if you like. The wording about "notified" was referring to the events mechanism. This is really just implementing a counting sempahore, where no more then N consumers are allowed in at one time; with consumers entering FIFO order as other consumers leave...

      Want me to rework this comment?

    2. If it's easy to update the comment, that'd be great. It certainly left me a bit puzzled as an utter stranger to the smb implementation. If my unfamiliarity is the problem, feel free to leave it as is though.

  3. I'm guessing there's no implications to this being per _threshold_t rather than per server now?

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

Status: Closed (submitted)

Loading...