Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 18 Jun 2022 11:07:51 +0000
From:      bugzilla-noreply@freebsd.org
To:        fs@FreeBSD.org
Subject:   [Bug 165392] [ufs] [patch] Multiple mkdir/rmdir fails with errno 31
Message-ID:  <bug-165392-3630-F4wbSEABCg@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-165392-3630@https.bugs.freebsd.org/bugzilla/>
References:  <bug-165392-3630@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D165392

Konstantin Belousov <kib@FreeBSD.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |kib@FreeBSD.org,
                   |                            |mckusick@FreeBSD.org,
                   |                            |pho@FreeBSD.org

--- Comment #12 from Konstantin Belousov <kib@FreeBSD.org> ---
I do not think it is enough to fsync() only the directory, as jh' patch
cleanly illustrates.  What it does is significant portion of VFS_SYNC()
anyway, so it is cleaner to just do VFS_SYNC() and pay the cost of syncing
data even if not strictly necessary.

OTOH it is not safe to do any of that stuff while then vnode is locked.
We recently got a way to correctly restart this kind of VOPs if they need
to relock the directory, which implies the need to do re-lookup of the entr=
y.

I put the patch at
https://reviews.freebsd.org/D35514
to handle just mkdir() for now.  Other syscalls like link() and rename would
need similar treatment if my patch works.

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-165392-3630-F4wbSEABCg>