<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/fs/ufs, branch linux-4.4.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.4.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.4.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2020-08-21T08:53:07Z</updated>
<entry>
<title>fs/ufs: avoid potential u32 multiplication overflow</title>
<updated>2020-08-21T08:53:07Z</updated>
<author>
<name>Colin Ian King</name>
</author>
<published>2020-08-12T01:35:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=75c89dc70f75b581432b0020852b864acaf094ab'/>
<id>urn:sha1:75c89dc70f75b581432b0020852b864acaf094ab</id>
<content type='text'>
[ Upstream commit 88b2e9b06381551b707d980627ad0591191f7a2d ]

The 64 bit ino is being compared to the product of two u32 values,
however, the multiplication is being performed using a 32 bit multiply so
there is a potential of an overflow.  To be fully safe, cast uspi-&gt;s_ncg
to a u64 to ensure a 64 bit multiplication occurs to avoid any chance of
overflow.

Fixes: f3e2a520f5fb ("ufs: NFS support")
Signed-off-by: Colin Ian King &lt;colin.king@canonical.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Cc: Evgeniy Dushistov &lt;dushistov@mail.ru&gt;
Cc: Alexey Dobriyan &lt;adobriyan@gmail.com&gt;
Link: http://lkml.kernel.org/r/20200715170355.1081713-1-colin.king@canonical.com
Addresses-Coverity: ("Unintentional integer overflow")
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>ufs: fix braino in ufs_get_inode_gid() for solaris UFS flavour</title>
<updated>2019-06-11T10:23:49Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2019-05-02T02:46:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=66ee750cfdd7803c5db6fdf342dd40db8cbee25d'/>
<id>urn:sha1:66ee750cfdd7803c5db6fdf342dd40db8cbee25d</id>
<content type='text'>
[ Upstream commit 4e9036042fedaffcd868d7f7aa948756c48c637d ]

To choose whether to pick the GID from the old (16bit) or new (32bit)
field, we should check if the old gid field is set to 0xffff.  Mainline
checks the old *UID* field instead - cut'n'paste from the corresponding
code in ufs_get_inode_uid().

Fixes: 252e211e90ce
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>do d_instantiate/unlock_new_inode combinations safely</title>
<updated>2018-05-30T05:48:52Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2018-05-04T12:23:01Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=03bb7588942a38623f108b3302c2d1aebb525696'/>
<id>urn:sha1:03bb7588942a38623f108b3302c2d1aebb525696</id>
<content type='text'>
commit 1e2e547a93a00ebc21582c06ca3c6cfea2a309ee upstream.

For anything NFS-exported we do _not_ want to unlock new inode
before it has grown an alias; original set of fixes got the
ordering right, but missed the nasty complication in case of
lockdep being enabled - unlock_new_inode() does
	lockdep_annotate_inode_mutex_key(inode)
which can only be done before anyone gets a chance to touch
-&gt;i_mutex.  Unfortunately, flipping the order and doing
unlock_new_inode() before d_instantiate() opens a window when
mkdir can race with open-by-fhandle on a guessed fhandle, leading
to multiple aliases for a directory inode and all the breakage
that follows from that.

	Correct solution: a new primitive (d_instantiate_new())
combining these two in the right order - lockdep annotate, then
d_instantiate(), then the rest of unlock_new_inode().  All
combinations of d_instantiate() with unlock_new_inode() should
be converted to that.

Cc: stable@kernel.org	# 2.6.29 and later
Tested-by: Mike Marshall &lt;hubcap@omnibond.com&gt;
Reviewed-by: Andreas Dilger &lt;adilger@dilger.ca&gt;
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ufs_getfrag_block(): we only grab -&gt;truncate_mutex on block creation path</title>
<updated>2017-06-14T11:16:24Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2017-06-09T03:28:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f0d2e153147ece8c1027b276b71b8ffca0245440'/>
<id>urn:sha1:f0d2e153147ece8c1027b276b71b8ffca0245440</id>
<content type='text'>
commit 006351ac8ead0d4a67dd3845e3ceffe650a23212 upstream.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ufs_extend_tail(): fix the braino in calling conventions of ufs_new_fragments()</title>
<updated>2017-06-14T11:16:24Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2017-06-09T03:27:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=34aa71cbd4085fe6089f8686a6ae449aaf36b4a0'/>
<id>urn:sha1:34aa71cbd4085fe6089f8686a6ae449aaf36b4a0</id>
<content type='text'>
commit 940ef1a0ed939c2ca029fca715e25e7778ce1e34 upstream.

... and it really needs splitting into "new" and "extend" cases, but that's for
later

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ufs: set correct -&gt;s_maxsize</title>
<updated>2017-06-14T11:16:24Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2017-06-09T01:15:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d6bd1e7ec7d85321b4449c39b9ab749013fddf03'/>
<id>urn:sha1:d6bd1e7ec7d85321b4449c39b9ab749013fddf03</id>
<content type='text'>
commit 6b0d144fa758869bdd652c50aa41aaf601232550 upstream.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ufs: restore maintaining -&gt;i_blocks</title>
<updated>2017-06-14T11:16:24Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2017-06-09T01:15:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4c516dff07d729223ee640c7c1ca09c68839bfca'/>
<id>urn:sha1:4c516dff07d729223ee640c7c1ca09c68839bfca</id>
<content type='text'>
commit eb315d2ae614493fd1ebb026c75a80573d84f7ad upstream.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>fix ufs_isblockset()</title>
<updated>2017-06-14T11:16:24Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2017-06-08T22:15:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1df45bb6439635feb279cbaac3723d916fafcbcd'/>
<id>urn:sha1:1df45bb6439635feb279cbaac3723d916fafcbcd</id>
<content type='text'>
commit 414cf7186dbec29bd946c138d6b5c09da5955a08 upstream.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>ufs: restore proper tail allocation</title>
<updated>2017-06-14T11:16:24Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2017-06-08T06:42:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=db9aafaf90b6eb27db4cec785a894c83b0c489aa'/>
<id>urn:sha1:db9aafaf90b6eb27db4cec785a894c83b0c489aa</id>
<content type='text'>
commit 8785d84d002c2ce0f68fbcd6c2c86be859802c7e upstream.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>fix ufs write vs readpage race when writing into a hole</title>
<updated>2015-09-09T17:43:12Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2015-09-09T09:16:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bd2843fe1f29f6145c623ae9390f144cefaa611d'/>
<id>urn:sha1:bd2843fe1f29f6145c623ae9390f144cefaa611d</id>
<content type='text'>
Followup to the UFS series - with the way we clear the new blocks (via
buffer cache, possibly on more than a page worth of file) we really
should not insert a reference to new block into inode block tree until
after we'd cleared it.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
