lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAOm2TWzK0VugZo5ZpWLj5c+f3M0mKPxecjs1oA1g86v1e3kGFA@mail.gmail.com>
Date:   Fri, 15 Sep 2017 02:22:01 +0800
From:   ChunYu Wang <chunwang@...hat.com>
To:     Andreas Dilger <adilger@...ger.ca>
Cc:     GeneBlue <geneblue.mail@...il.com>,
        "Theodore Ts'o" <tytso@....edu>,
        linux-ext4 <linux-ext4@...r.kernel.org>,
        LKML <linux-kernel@...r.kernel.org>,
        syzkaller <syzkaller@...glegroups.com>
Subject: Re: kernel BUG at fs/ext4/fsync.c:LINE!

On Fri, Sep 15, 2017 at 12:41 AM, Andreas Dilger <adilger@...ger.ca> wrote:
> I don't think a reproducer is needed.  It looks like the fsync callpath
> is happening from an IRQ context due to IO completion, and then re-entering
> the filesystem while a transaction is already started.  It looks like the
> original IO was submitted with AIO based on the functions on the IRQ stack,
> which is likely why nobody has hit it (AIO isn't very commonly used).
>
> That said, I don't follow the reasoning behind the convoluted series of AIO
> callbacks that has IO _completion_ calling vfs_fsync_range() and re-entering
> the filesystem to flush out more data?

Thanks for analyzing, and I do think the syzkaller reproducer(in fact,
log) may also answer your question and help positioning the precise
issue trigger in-depth. Moreover, for me, I am not professional enough
to analyze such a complex problem with call trace and code only :)

- ChunYu

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ