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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <e98fd1bc-ab6a-4f6f-a2f3-29b68fa5b15f@intel.com>
Date: Sat, 6 Jan 2024 12:36:13 +0800
From: "Yin, Fengwei" <fengwei.yin@...el.com>
To: David Hildenbrand <david@...hat.com>, Ryan Roberts <ryan.roberts@....com>,
	syzbot <syzbot+50ef73537bbc393a25bb@...kaller.appspotmail.com>,
	<akpm@...ux-foundation.org>, <linux-kernel@...r.kernel.org>,
	<linux-mm@...ck.org>, <syzkaller-bugs@...glegroups.com>, Matthew Wilcox
	<willy@...radead.org>
Subject: Re: [syzbot] [mm?] WARNING in __folio_rmap_sanity_checks



On 1/5/2024 11:45 PM, David Hildenbrand wrote:
>>> vm_normal_page() works on these mappings, so we'd also have to skip rmap
>>> code when unmapping these pages etc. Maybe that's the whole reason we
>>> have the rmap handling here: to not special-case the unmap path.
>>
>> vm_insert_page() will set VM_MIXEDMAP and vm_normal_page() will skip
>> the page if CONFIG_ARCH_HAS_PTE_SPECIAL is enabled (it's enabled for
>> x86).  So the unmap path will skip these kind of folios?
> 
> I think we run into the
>      if (likely(!pte_special(pte)))
>          goto check_pfn;
> 
> first and return these folios. That also matches the comment of 
> vm_normal_page: "VM_MIXEDMAP mappings can likewise contain memory with 
> or without ... _all_ pages with a struct page (that is, those where 
> pfn_valid is true) are refcounted and considered normal pages by the VM."
Oh. Yes. This is the path. Thanks a lot for pointing it out to me.


Regards
Yin, Fengwei

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ