HomeFreeBSD

Call commit callbacks from the tail of the list

Description

Call commit callbacks from the tail of the list

Our zfs backed Lustre MDT had soft lockups while under heavy metadata
workloads while handling transaction callbacks from osd_zfs.

The problem is zfs is not taking advantage of the fast path in
Lustre's trans callback handling, where Lustre will skip the calls
to ptlrpc_commit_replies() when it already saw a higher transaction
number.

This patch corrects this, it also has a positive impact on metadata
performance on Lustre with osd_zfs, plus some cleanup in the headers.

A similar issue for ext4/ldiskfs is described on:
https://jira.hpdd.intel.com/browse/LU-6527

Reviewed-by: Olaf Faaland <faaland1@llnl.gov>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Li Dongyang <dongyang.li@anu.edu.au>
Closes #6986

Details

Provenance
lidongyang <gnaygnodil@gmail.com>Authored on Dec 22 2017, 6:19 PM
Brian Behlendorf <behlendorf1@llnl.gov>Committed on Dec 22 2017, 6:19 PM
Parents
rG44b61ea50621: Remove empty files accidentally added by a8b2e306
Branches
Unknown
Tags
Unknown

Event Timeline

Brian Behlendorf <behlendorf1@llnl.gov> committed rG823d48bfb182: Call commit callbacks from the tail of the list (authored by lidongyang <gnaygnodil@gmail.com>).Dec 22 2017, 6:19 PM