From: Siddharth Chandrasekaran <siddharth@embedjournal.com>
To: Greg KH <gregkh@linuxfoundation.org>
Cc: Siddharth Chandrasekaran <csiddharth@vmware.com>,
srostedt@vmware.com, stable@vger.kernel.org,
srivatsab@vmware.com, dchinner@redhat.com,
darrick.wong@oracle.com, srivatsa@csail.mit.edu
Subject: Re: [PATCH v2] Backport xfs security fix to 4.9 and 4.4 stable trees
Date: Wed, 20 May 2020 14:48:00 +0530 [thread overview]
Message-ID: <20200520091800.GA5069@csiddharth-a01.vmware.com> (raw)
In-Reply-To: <20200515155838.GA9039@csiddharth-a01.vmware.com>
On Fri, May 15, 2020 at 09:28:38PM +0530, Siddharth Chandrasekaran wrote:
>On Fri, May 15, 2020 at 05:22:30PM +0200, Greg KH wrote:
>> On Fri, May 15, 2020 at 08:41:07PM +0530, Siddharth Chandrasekaran wrote:
>> > Hello,
>> >
>> > Lack of proper validation that cached inodes are free during allocation can,
>> > cause a crash in fs/xfs/xfs_icache.c (refer: CVE-2018-13093). To address this
>> > issue, I'm backporting upstream commit [1] to 4.4 and 4.9 stable trees
>> > (a backport of [1] to 4.14 already exists).
>> >
>> > Also, commit [1] references another commit [2] which added checks only to
>> > xfs_iget_cache_miss(). In this patch, those checks have been moved into a
>> > dedicated checker method and both xfs_iget_cache_miss() and
>> > xfs_iget_cache_hit() are made to call that method. This code reorg in commit
>> > [1], makes commit [2] redundant in the history of the 4.9 and 4.4 stable
>> > trees. So commit [2] is not being backported.
>> >
>> > -- Sid
>> >
>> > [1]: afca6c5b2595 ("xfs: validate cached inodes are free when allocated")
>> > [2]: ee457001ed6c ("xfs: catch inode allocation state mismatch corruption")
>> >
>> > change log:
>> > v2:
>> > - Reword cover letter.
>> > - Fix accidental worong patch that got mailed.
>>
>> As the XFS maintainers want to see xfstests pass with any changes made,
>> have you done so for the 4.9 and 4.4 trees with this patch applied?
>
>I haven't run them yet. I'll do so and get back with the results
>shortly.
>
Hi Greg,
I am having some issue setting up my xfstests testing environment. On a
Ubuntu 20.04 LTS VM, I installed 4.9.223 kernel with this patch applied.
Then cloned xfstests-dev repository from [1] and setup the test
environment as explained in the top-level README file. After this, I did
the following:
- Added a new disk (/dev/sdb1) and created 2 partitions of (64 GB each).
- Formatted /dev/sdb1 to xfs and dropped a few kernel source tarballs
into to it.
- Copied local.config.example to local.config and modified it as:
export TEST_DEV=/dev/sdb1
export TEST_DIR=/mnt/t0
export SCRATCH_DEV=/dev/sdb2
export SCRATCH_MNT=/mnt/scratch
- Executed: sudo ./check -g all
When executing the tests, I observed multiple failures. In addition to
test failures, the testing script just froze after executing some some
test cases (more frequently test 269) when trying to perform a mount or
umount operation on either of the newly added partitions.
So I presumed the patch was buggy and reverted the change to re try the
test. Interestingly, that too failed and produced similar results. dmesg
is filled with xfs errors, with the most frequent being:
XFS (dm-0): metadata I/O error: block 0x3 ("xfs_trans_read_buf_map") error 5 numblks 1
obviously, I must be doing something wrong; I can try to dig deeper
figure it out myself but wanted to check with you first, if you can spot
something obviously wrong in what I'm doing.
Thanks!
-- Sid.
[1]: https://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git
next prev parent reply other threads:[~2020-05-20 9:18 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-15 15:11 [PATCH v2] Backport xfs security fix to 4.9 and 4.4 stable trees Siddharth Chandrasekaran
2020-05-15 15:11 ` [PATCH 4.4 v2] xfs: validate cached inodes are free when allocated Siddharth Chandrasekaran
2020-05-15 15:11 ` [PATCH 4.9 " Siddharth Chandrasekaran
2020-05-15 15:22 ` [PATCH v2] Backport xfs security fix to 4.9 and 4.4 stable trees Greg KH
2020-05-15 15:58 ` Siddharth Chandrasekaran
2020-05-20 9:18 ` Siddharth Chandrasekaran [this message]
2020-06-03 16:46 ` Darrick J. Wong
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200520091800.GA5069@csiddharth-a01.vmware.com \
--to=siddharth@embedjournal.com \
--cc=csiddharth@vmware.com \
--cc=darrick.wong@oracle.com \
--cc=dchinner@redhat.com \
--cc=gregkh@linuxfoundation.org \
--cc=srivatsa@csail.mit.edu \
--cc=srivatsab@vmware.com \
--cc=srostedt@vmware.com \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).