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: <166975630697.2135297.10209303433796955869.b4-ty@mit.edu>
Date:   Tue, 29 Nov 2022 16:12:15 -0500
From:   "Theodore Ts'o" <tytso@....edu>
To:     linux-ext4@...r.kernel.org, Zhang Yi <yi.zhang@...wei.com>
Cc:     "Theodore Ts'o" <tytso@....edu>, jack@...e.cz, yukuai3@...wei.com,
        adilger.kernel@...ger.ca
Subject: Re: [PATCH v3 1/2] ext4: silence the warning when evicting inode with dioread_nolock

On Wed, 29 Jun 2022 19:26:46 +0800, Zhang Yi wrote:
> When evicting an inode with default dioread_nolock, it could be raced by
> the unwritten extents converting kworker after writeback some new
> allocated dirty blocks. It convert unwritten extents to written, the
> extents could be merged to upper level and free extent blocks, so it
> could mark the inode dirty again even this inode has been marked
> I_FREEING. But the inode->i_io_list check and warning in
> ext4_evict_inode() missing this corner case. Fortunately,
> ext4_evict_inode() will wait all extents converting finished before this
> check, so it will not lead to inode use-after-free problem, every thing
> is OK besides this warning. The WARN_ON_ONCE was originally designed
> for finding inode use-after-free issues in advance, but if we add
> current dioread_nolock case in, it will become not quite useful, so fix
> this warning by just remove this check.
> 
> [...]

Applied, thanks!

[1/2] ext4: silence the warning when evicting inode with dioread_nolock
      commit: bc12ac98ea2e1b70adc6478c8b473a0003b659d3
[2/2] ext4: check and assert if marking an no_delete evicting inode dirty
      commit: 318cdc822c63b6e2befcfdc2088378ae6fa18def

Best regards,
-- 
Theodore Ts'o <tytso@....edu>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ