Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 16 Nov 2018 01:24:26 +0000
From:      bugzilla-noreply@freebsd.org
To:        fs@FreeBSD.org
Subject:   [Bug 233245] [UFS] Softupdates fails to track dependency between appended data and i_size
Message-ID:  <bug-233245-3630-tqDoqEdEOw@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-233245-3630@https.bugs.freebsd.org/bugzilla/>
References:  <bug-233245-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=3D233245

Kirk McKusick <mckusick@FreeBSD.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mckusick@FreeBSD.org

--- Comment #1 from Kirk McKusick <mckusick@FreeBSD.org> ---
As you note, soft updates does not currently consider it necessary to ensure
that the new contents of the block be written before increasing the file si=
ze
if it knows that the exposed contents will be zero (as opposed to the random
data that was in a previously used block where it does ensure that the bloc=
k is
written before it can be accessed). It would be possible to add a requireme=
nt
that the new data be written before the size could be updated, but it is not
clear to me that adding this extra overhead is worthwhile. Also, this case
includes overwriting data in the middle of an earlier block in the file for
which there is nothing that we can do.

Note that you cannot put the test into ffs_write() in the way that you have
done (which makes the call for any growth in size). It can only be done when
the growth is such that it does not go out of an existing block allocation =
or
is overwriting an earlier part of the file.

--=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-233245-3630-tqDoqEdEOw>