Hi. Our WITNESS mechanism for LORs discovery reports LOR between the arc_eviction_mtx and b_evict_lock locks.
For example in functions arc_do_user_evicts() and arc_hdr_destroy() the
order is arc_eviction_mtx, b_evict_lock.
In function arc_evict() the order is b_evict_lock, arc_eviction_mtx.
I propose to change the order in arc_hdr_destroy() and change
arc_do_user_evict() to not acquire both locks at the same time.
The arc_do_user_evict() in FreeBSD was rewritten by Kip Macy and also
allows for more parallelism.
The patch is here:
http://people.freebsd.org/~pjd/patches/arc.c.7.patch
Does it look correct?
--
Pawel Jakub Dawidek http://www.wheelsystems.com
[email protected] http://www.FreeBSD.org
FreeBSD committer Am I Evil? Yes, I Am!
pgpb3kCxO4TS1.pgp
Description: PGP signature
_______________________________________________ zfs-code mailing list [email protected] http://mail.opensolaris.org/mailman/listinfo/zfs-code
