]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
MFC r322245: MFV r322242: 8373 TXG_WAIT in ZIL commit path
authormav <mav@FreeBSD.org>
Mon, 22 Jan 2018 00:19:50 +0000 (00:19 +0000)
committermav <mav@FreeBSD.org>
Mon, 22 Jan 2018 00:19:50 +0000 (00:19 +0000)
commit5bd2e2067bc1afc46a507050c97e87f31c8c44d5
tree746dcd68990bf8e19f1223c02d10af18ea5b9334
parent7f6ef82ea83c57b6c644f3cb2a9442a27ce1280e
MFC r322245: MFV r322242: 8373 TXG_WAIT in ZIL commit path

illumos/illumos-gate@d28671a3b094af696bea87f52272d4c4d89321c7
https://github.com/illumos/illumos-gate/commit/d28671a3b094af696bea87f52272d4c4d89321c7

https://www.illumos.org/issues/8373
  The code that writes ZIL blocks uses dmu_tx_assign(TXG_WAIT) to assign
  a transaction to a transaction group.  That seems to be logically
  incorrect as writing of the ZIL block does not introduce any new dirty
  data.  Also, when there is a lot of dirty data, the call can introduce
  significant delays into the ZIL commit path, thus affecting all
  synchronous writes. Additionally, ARC throttling may affect the ZIL
  writing.

Reviewed by: Matthew Ahrens <mahrens@delphix.com>
Reviewed by: Prakash Surya <prakash.surya@delphix.com>
Approved by: Dan McDonald <danmcd@joyent.com>
Author: Andriy Gapon <avg@FreeBSD.org>
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c