Project

General

Profile

Actions

Bug #9080

closed

recursive enter of vdev_indirect_rwlock from vdev_indirect_remap()

Added by Serapheim Dimitropoulos over 3 years ago. Updated over 3 years ago.

Status:
Closed
Priority:
Normal
Category:
zfs - Zettabyte File System
Start date:
2018-02-08
Due date:
% Done:

100%

Estimated time:
Difficulty:
Medium
Tags:
needs-triage
Gerrit CR:

Description

A scenario came up where a callback executed by vdev_indirect_remap() on a vdev, calls
vdev_indirect_remap() on the same vdev and tries to reacquire vdev_indirect_rwlock that
was already acquired from the first call to vdev_indirect_remap(). The specific scenario,
is that we want to remap a block pointer that is snapshoted but its dataset's remap_deadlist
is not cached. So in order to add it we issue a read through a vdev_indirect_remap() on the
same vdev, which brings up the aforementioned issue.

Actions #1

Updated by Electric Monk over 3 years ago

  • Status changed from New to Closed
  • % Done changed from 0 to 100

git commit bdfded42e66b9fc1395ff2401aa2952f7c44ae34

commit  bdfded42e66b9fc1395ff2401aa2952f7c44ae34
Author: Serapheim Dimitropoulos <serapheim.dimitro@delphix.com>
Date:   2018-02-13T16:26:17.000Z

    9080 recursive enter of vdev_indirect_rwlock from vdev_indirect_remap()
    Reviewed by: Matthew Ahrens <mahrens@delphix.com>
    Reviewed by: George Wilson <george.wilson@delphix.com>
    Approved by: Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>

Actions

Also available in: Atom PDF