]> granicus.if.org Git - zfs/commit
Use MUTEX_FSTRANS on l2arc_buflist_mtx
authorChunwei Chen <tuxoko@gmail.com>
Tue, 17 Mar 2015 06:54:57 +0000 (23:54 -0700)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 18 Mar 2015 16:29:38 +0000 (09:29 -0700)
commit40749aa7a6318e5588d4be1c40165e8d0ef6c44f
tree5aa18aa2cbfbf20ac5f3d718390169da0354d7eb
parenta1d3450e947c4399cfa9cd3b0840de55d63b3023
Use MUTEX_FSTRANS on l2arc_buflist_mtx

Use MUTEX_FSTRANS on l2arc_buflist_mtx to prevent the following deadlock
scenario:
1. arc_release() -> hash_lock -> l2arc_buflist_mtx
2. l2arc_write_buffers() -> l2arc_buflist_mtx -> (direct reclaim) ->
   arc_buf_remove_ref() -> hash_lock

Signed-off-by: Chunwei Chen <tuxoko@gmail.com>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Signed-off-by: Tim Chase <tim@chase2k.com>
Issue #3160
module/zfs/arc.c