HomeFreeBSD

Remove unnecessary txg syncs from receive_object()

Description

Remove unnecessary txg syncs from receive_object()

1b66810b introduced serveral changes which improved the reliability
of zfs sends when large dnodes were involved. However, these fixes
required adding a few calls to txg_wait_synced() in the DRR_OBJECT
handling code. Although most of them are currently necessary, this
patch allows the code to continue without waiting in some cases
where it doesn't have to.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Tom Caputi <tcaputi@datto.com>
Closes #7197

Details

Provenance
Tom Caputi <tcaputi@datto.com>Authored on Feb 21 2018, 8:26 PM
Brian Behlendorf <behlendorf1@llnl.gov>Committed on Feb 21 2018, 8:26 PM
Parents
rG478b3150dea2: Add omitted set for os->os_next_write_raw
Branches
Unknown
Tags
Unknown

Event Timeline

Brian Behlendorf <behlendorf1@llnl.gov> committed rG5121c4fb0c25: Remove unnecessary txg syncs from receive_object() (authored by Tom Caputi <tcaputi@datto.com>).Feb 21 2018, 8:26 PM