All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] Drop some mis-uses of READA
@ 2020-03-13 21:09 Josef Bacik
  2020-03-13 21:09 ` [PATCH 1/2] btrfs: do not use READA for running delayed refs Josef Bacik
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Josef Bacik @ 2020-03-13 21:09 UTC (permalink / raw)
  To: linux-btrfs, kernel-team

In debugging Zygo's huge commit delays I noticed we were burning a bunch of time
doing READA in cases where we don't need to.  The way READA works in btrfs is
we'll load up adjacent nodes and leaves as we walk down.  This is useful for
operations where we're going to be reading sequentially across the tree.

But for delayed refs we're looking up one bytenr, and then another one which
could be elsewhere in the tree.  With large enough extent trees this results in
a lot of unneeded latency.

The same applies to build_backref_tree, but that's even worse because we're
looking up backrefs, which are essentially randomly spread out across the extent
root.  Thanks,

Josef


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2020-03-18 14:44 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-13 21:09 [PATCH 0/2] Drop some mis-uses of READA Josef Bacik
2020-03-13 21:09 ` [PATCH 1/2] btrfs: do not use READA for running delayed refs Josef Bacik
2020-03-14  0:18   ` Qu Wenruo
2020-03-13 21:09 ` [PATCH 2/2] btrfs: do not READA in build_backref_tree Josef Bacik
2020-03-14  0:19   ` Qu Wenruo
2020-03-14  2:56 ` [PATCH 0/2] Drop some mis-uses of READA Qu Wenruo
2020-03-18 14:44   ` David Sterba
2020-03-18 14:40 ` David Sterba

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.