All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] xfs: various rough fixes
@ 2019-03-14 21:28 Darrick J. Wong
  2019-03-14 21:29 ` [PATCH 1/4] xfs: only free posteof blocks on first close Darrick J. Wong
                   ` (3 more replies)
  0 siblings, 4 replies; 32+ messages in thread
From: Darrick J. Wong @ 2019-03-14 21:28 UTC (permalink / raw)
  To: darrick.wong; +Cc: linux-xfs

Hi all,

Here's a bunch of crazy fixes that I've been working on.  The first one
tries to solve the fragmentation problems that Dave reported[1] in the
stupidest way possible.  Namely, we only ever trim post-eof speculative
preallocations the /first/ time that we close a file, regardless of the
dirty state.

The second patch tries to fix a stale data exposure bug revealed by
generic/042.  It does this by changing xfs to convert delalloc extents
to unwritten extents and only converting those into real extents once
the data write succeeds.  We already do this for the cow fork, so it
seems pretty straightforward to do the same for the data fork.

The third patch adds instrumentation to make it easier to detect when
we roll a transaction beyond the initial logcount, and therefore are
having to reserve more log space.

The fourth patch effectively increases the number of times we can roll
an end_cow transaction without having to go back for more reservation.
This is intended to fix the problem outlined in [2] which will fix the
periodic xfs/347 deadlocks.

[1] https://marc.info/?l=linux-xfs&m=154951612101291&w=2
[2] https://marc.info/?l=linux-xfs&m=155241472431249&w=2


If you're going to start using this mess, you probably ought to just
pull from my git trees, which are linked below.

This is an extraordinary way to destroy everything.  Enjoy!
Comments and questions are, as always, welcome.

--D

kernel git tree:
https://git.kernel.org/cgit/linux/kernel/git/djwong/xfs-linux.git/log/?h=rough-fixes

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

end of thread, other threads:[~2019-04-08 12:02 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-14 21:28 [PATCH 0/4] xfs: various rough fixes Darrick J. Wong
2019-03-14 21:29 ` [PATCH 1/4] xfs: only free posteof blocks on first close Darrick J. Wong
2019-03-15  3:42   ` Dave Chinner
2019-03-14 21:29 ` [PATCH 2/4] xfs: force writes to delalloc regions to unwritten Darrick J. Wong
2019-03-14 23:08   ` Dave Chinner
2019-03-15  3:13     ` Darrick J. Wong
2019-03-15  3:40       ` Dave Chinner
2019-03-15 12:29         ` Brian Foster
2019-03-17 22:40           ` Dave Chinner
2019-03-18 12:40             ` Brian Foster
2019-03-18 20:35               ` Dave Chinner
2019-03-18 21:50                 ` Brian Foster
2019-03-19 18:02                   ` Darrick J. Wong
2019-03-19 20:25                     ` Dave Chinner
2019-03-20 12:02                       ` Brian Foster
2019-03-20 21:10                         ` Dave Chinner
2019-03-21 12:27                           ` Brian Foster
2019-03-22  1:52                             ` Dave Chinner
2019-03-22 12:46                               ` Brian Foster
2019-04-03 22:38                                 ` Darrick J. Wong
2019-04-04 12:50                                   ` Brian Foster
2019-04-04 15:22                                     ` Darrick J. Wong
2019-04-04 16:16                                       ` Brian Foster
2019-04-04 22:08                                     ` Dave Chinner
2019-04-05 11:24                                       ` Brian Foster
2019-04-05 15:12                                         ` Darrick J. Wong
2019-04-08  0:17                                           ` Dave Chinner
2019-04-08 12:02                                             ` Brian Foster
2019-03-14 21:29 ` [PATCH 3/4] xfs: trace transaction reservation logcount overflow Darrick J. Wong
2019-03-15 12:30   ` Brian Foster
2019-03-14 21:29 ` [PATCH 4/4] xfs: avoid reflink end cow deadlock Darrick J. Wong
2019-03-15 12:31   ` Brian Foster

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.