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] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180927183236.GJ6278@dhcp22.suse.cz>
Date:   Thu, 27 Sep 2018 20:32:36 +0200
From:   Michal Hocko <mhocko@...nel.org>
To:     Souptick Joarder <jrdr.linux@...il.com>
Cc:     akpm@...ux-foundation.org, dan.j.williams@...el.com,
        kirill.shutemov@...ux.intel.com, pasha.tatashin@...cle.com,
        riel@...hat.com, willy@...radead.org, minchan@...nel.org,
        peterz@...radead.org, ying.huang@...el.com, ak@...ux.intel.com,
        rppt@...ux.vnet.ibm.com, linux@...inikbrodowski.net, arnd@...db.de,
        mcgrof@...nel.org, linux-mm@...ck.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] mm: Introduce new function vm_insert_kmem_page

On Thu 27-09-18 23:21:23, Souptick Joarder wrote:
> vm_insert_kmem_page is similar to vm_insert_page and will
> be used by drivers to map kernel (kmalloc/vmalloc/pages)
> allocated memory to user vma.
> 
> Previously vm_insert_page is used for both page fault
> handlers and outside page fault handlers context. When
> vm_insert_page is used in page fault handlers context,
> each driver have to map errno to VM_FAULT_CODE in their
> own way. But as part of vm_fault_t migration all the
> page fault handlers are cleaned up by using new vmf_insert_page.
> Going forward, vm_insert_page will be removed by converting
> it to vmf_insert_page.
>  
> But their are places where vm_insert_page is used outside
> page fault handlers context and converting those to
> vmf_insert_page is not a good approach as drivers will end
> up with new VM_FAULT_CODE to errno conversion code and it will
> make each user more complex.
> 
> So this new vm_insert_kmem_page can be used to map kernel
> memory to user vma outside page fault handler context.
> 
> In short, vmf_insert_page will be used in page fault handlers
> context and vm_insert_kmem_page will be used to map kernel
> memory to user vma outside page fault handlers context.
> 
> We will slowly convert all the user of vm_insert_page to
> vm_insert_kmem_page after this API be available in linus tree.

In general I do not like patches adding a new exports/functionality
without any user added at the same time. I am not going to look at the
implementation right now but the above opens more questions than it
gives answers. Why do we have to distinguish #PF from other paths?
-- 
Michal Hocko
SUSE Labs

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ