Alexander Motin dd9ceab333 MFV r329803:
9080 recursive enter of vdev_indirect_rwlock from vdev_indirect_remap()

illumos/illumos-gate@bdfded42e6

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.

Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: George Wilson <george.wilson@delphix.com>
Approved by: Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>
Author: Serapheim Dimitropoulos <serapheim.dimitro@delphix.com>
2018-02-22 03:54:59 +00:00
..
2018-02-22 03:37:01 +00:00
2018-02-20 10:13:13 +00:00
2018-02-21 23:49:35 +00:00
2018-02-22 03:54:59 +00:00
2018-02-22 03:49:06 +00:00
2018-02-14 00:12:03 +00:00
2018-02-20 10:13:13 +00:00
2018-02-21 16:36:44 +00:00
2018-02-08 20:09:42 +00:00
2018-02-20 10:13:13 +00:00
2018-02-20 10:13:13 +00:00