lkml.org 
[lkml]   [2017]   [Nov]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v6 03/11] mm, x86: Add support for eXclusive Page Frame Ownership (XPFO)
    On Mon, Nov 13, 2017 at 02:46:25PM -0800, Dave Hansen wrote:
    > On 11/13/2017 02:20 PM, Dave Hansen wrote:
    > > On 11/09/2017 05:09 PM, Tycho Andersen wrote:
    > >> which I guess is from the additional flags in grow_dev_page() somewhere down
    > >> the stack. Anyway... it seems this is a kernel allocation that's using
    > >> MIGRATE_MOVABLE, so perhaps we need some more fine tuned heuristic than just
    > >> all MOVABLE allocations are un-mapped via xpfo, and all the others are mapped.
    > >>
    > >> Do you have any ideas?
    > >
    > > It still has to do a kmap() or kmap_atomic() to be able to access it. I
    > > thought you hooked into that. Why isn't that path getting hit for these?
    >
    > Oh, this looks to be accessing data mapped by a buffer_head. It
    > (rudely) accesses data via:
    >
    > void set_bh_page(struct buffer_head *bh,
    > ...
    > bh->b_data = page_address(page) + offset;

    We don't need to kmap in order to access MOVABLE allocations. kmap is
    only needed for HIGHMEM allocations. So there's nothing wrong with ext4
    or set_bh_page().

    \
     
     \ /
      Last update: 2017-11-15 04:45    [W:3.021 / U:0.440 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site