HomeFreeBSD

Illumos #4347 ZPL can use dmu_tx_assign(TXG_WAIT)

Description

Illumos #4347 ZPL can use dmu_tx_assign(TXG_WAIT)

Fix a lock contention issue by allowing threads not holding
ZPL locks to block when waiting to assign a transaction.

Porting Notes:

zfs_putpage() still uses TXG_NOWAIT, unlike the upstream version. This
case may be a contention point just like zfs_write(), however it is not
safe to block here since it may be called during memory reclaim.

Reviewed by: George Wilson <george.wilson@delphix.com>
Reviewed by: Adam Leventhal <ahl@delphix.com>
Reviewed by: Dan McDonald <danmcd@nexenta.com>
Reviewed by: Boris Protopopov <boris.protopopov@nexenta.com>
Approved by: Dan McDonald <danmcd@nexenta.com>

References:

https://www.illumos.org/issues/4347
illumos/illumos-gate@e722410c49fe67cbf0f639cbcc288bd6cbcf7dd1

Ported-by: Ned Bass <bass6@llnl.gov>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>

Details

Provenance
mahrensAuthored on Nov 22 2013, 11:13 PM
Brian Behlendorf <behlendorf1@llnl.gov>Committed on Dec 6 2013, 5:30 PM
Parents
rG729210564a53: Properly ignore bdi_setup_and_register return value
Branches
Unknown
Tags
Unknown

Event Timeline