Project

General

Profile

Bug #6367

spa_config_tryenter incorrectly handles the multiple-lock case

Added by Sašo Kiselkov almost 4 years ago. Updated almost 4 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
-
Start date:
2015-10-21
Due date:
% Done:

100%

Estimated time:
Difficulty:
Bite-size
Tags:
needs-triage

Description

If spa_config_tryenter fails to acquire a particular lock, all locks that have been acquired in the mean time should be released. Unfortunately, the existing arithmetic in that case doesn't do that, so some locks can be left acquired.
Fix from Nexenta, originally reviewed internally by Alek Pinchuk and Josef 'Jeff' Sipek.

History

#1

Updated by Electric Monk almost 4 years ago

  • Status changed from New to Closed

git commit e495b6e6735b803e422025a630352ef9bba788c5

commit  e495b6e6735b803e422025a630352ef9bba788c5
Author: Saso Kiselkov <saso.kiselkov@nexenta.com>
Date:   2015-10-22T16:54:03.000Z

    6367 spa_config_tryenter incorrectly handles the multiple-lock case
    Reviewed by: Alek Pinchuk <alek.pinchuk@nexenta.com>
    Reviewed by: Josef 'Jeff' Sipek <josef.sipek@nexenta.com>
    Reviewed by: Prashanth Sreenivasa <prashksp@gmail.com>
    Reviewed by: Matthew Ahrens <mahrens@delphix.com>
    Reviewed by: Dan McDonald <danmcd@omniti.com>
    Reviewed by: Steven Hartland <steven.hartland@multiplay.co.uk>
    Approved by: Matthew Ahrens <mahrens@delphix.com>

Also available in: Atom PDF