mbox series

[GIT,PULL,14/22] xfs: fix bugs in parent pointer checking

Message ID 168127095051.417736.2174858080826643116.stg-ugh@frogsfrogsfrogs (mailing list archive)
State Superseded, archived
Headers show
Series [GIT,PULL,1/22] xfs: design documentation for online fsck | expand

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git tags/scrub-parent-fixes-6.4_2023-04-11

Message

Darrick J. Wong April 12, 2023, 3:48 a.m. UTC
Hi Dave,

Please pull this branch with changes for xfs.

As usual, I did a test-merge with the main upstream branch as of a few
minutes ago, and didn't see any conflicts.  Please let me know if you
encounter any problems.

--D

The following changes since commit 0916056eba4fd816f8042a3960597c316ea10256:

xfs: fix parent pointer scrub racing with subdirectory reparenting (2023-04-11 19:00:20 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git tags/scrub-parent-fixes-6.4_2023-04-11

for you to fetch changes up to 0916056eba4fd816f8042a3960597c316ea10256:

xfs: fix parent pointer scrub racing with subdirectory reparenting (2023-04-11 19:00:20 -0700)

----------------------------------------------------------------
xfs: fix bugs in parent pointer checking [v24.5]

Jan Kara pointed out that the VFS doesn't take i_rwsem of a child
subdirectory that is being moved from one parent to another.  Upon
deeper analysis, I realized that this was the source of a very hard to
trigger false corruption report in the parent pointer checking code.

Now that we've refactored how directory walks work in scrub, we can also
get rid of all the unnecessary and broken locking to make parent pointer
scrubbing work properly.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>

----------------------------------------------------------------

Comments

Dave Chinner April 12, 2023, 6:31 a.m. UTC | #1
On Tue, Apr 11, 2023 at 08:48:26PM -0700, Darrick J. Wong wrote:
> Hi Dave,
> 
> Please pull this branch with changes for xfs.
> 
> As usual, I did a test-merge with the main upstream branch as of a few
> minutes ago, and didn't see any conflicts.  Please let me know if you
> encounter any problems.
> 
> --D
> 
> The following changes since commit 0916056eba4fd816f8042a3960597c316ea10256:
> 
> xfs: fix parent pointer scrub racing with subdirectory reparenting (2023-04-11 19:00:20 -0700)
> 
> are available in the Git repository at:
> 
> git://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git tags/scrub-parent-fixes-6.4_2023-04-11
> 
> for you to fetch changes up to 0916056eba4fd816f8042a3960597c316ea10256:
> 
> xfs: fix parent pointer scrub racing with subdirectory reparenting (2023-04-11 19:00:20 -0700)
> 
> ----------------------------------------------------------------
> xfs: fix bugs in parent pointer checking [v24.5]
> 
> Jan Kara pointed out that the VFS doesn't take i_rwsem of a child
> subdirectory that is being moved from one parent to another.  Upon
> deeper analysis, I realized that this was the source of a very hard to
> trigger false corruption report in the parent pointer checking code.
> 
> Now that we've refactored how directory walks work in scrub, we can also
> get rid of all the unnecessary and broken locking to make parent pointer
> scrubbing work properly.
> 
> Signed-off-by: Darrick J. Wong <djwong@kernel.org>
> 
> ----------------------------------------------------------------

Empty pull request?

Looks like the next pull-req is empty, too, and the commits that are
supposed to be in these are in pull-req after that?

-Dave.
Darrick J. Wong April 12, 2023, 9:54 p.m. UTC | #2
On Wed, Apr 12, 2023 at 04:31:15PM +1000, Dave Chinner wrote:
> On Tue, Apr 11, 2023 at 08:48:26PM -0700, Darrick J. Wong wrote:
> > Hi Dave,
> > 
> > Please pull this branch with changes for xfs.
> > 
> > As usual, I did a test-merge with the main upstream branch as of a few
> > minutes ago, and didn't see any conflicts.  Please let me know if you
> > encounter any problems.
> > 
> > --D
> > 
> > The following changes since commit 0916056eba4fd816f8042a3960597c316ea10256:
> > 
> > xfs: fix parent pointer scrub racing with subdirectory reparenting (2023-04-11 19:00:20 -0700)
> > 
> > are available in the Git repository at:
> > 
> > git://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git tags/scrub-parent-fixes-6.4_2023-04-11
> > 
> > for you to fetch changes up to 0916056eba4fd816f8042a3960597c316ea10256:
> > 
> > xfs: fix parent pointer scrub racing with subdirectory reparenting (2023-04-11 19:00:20 -0700)
> > 
> > ----------------------------------------------------------------
> > xfs: fix bugs in parent pointer checking [v24.5]
> > 
> > Jan Kara pointed out that the VFS doesn't take i_rwsem of a child
> > subdirectory that is being moved from one parent to another.  Upon
> > deeper analysis, I realized that this was the source of a very hard to
> > trigger false corruption report in the parent pointer checking code.
> > 
> > Now that we've refactored how directory walks work in scrub, we can also
> > get rid of all the unnecessary and broken locking to make parent pointer
> > scrubbing work properly.
> > 
> > Signed-off-by: Darrick J. Wong <djwong@kernel.org>
> > 
> > ----------------------------------------------------------------
> 
> Empty pull request?
> 
> Looks like the next pull-req is empty, too, and the commits that are
> supposed to be in these are in pull-req after that?

Ahaha, yep, a stupid bug in my script that turns stgit patches into
branches for pushing to kernel.org.  It ought to be sorting topics in
the order that the tagged patches appear in the stgit branch, but
clearly it isn't doing that for generating pull requests.

I'll sort this out and resend.  Unless you'd rather just pull #20 and
only have to do that once?

Either way, I'll fix my dumb script.


--D

> -Dave.
> -- 
> Dave Chinner
> david@fromorbit.com