• Thomas Hellstrom (VMware)'s avatar
    drm/ttm, drm/vmwgfx: Support huge TTM pagefaults · 314b6580
    Thomas Hellstrom (VMware) authored
    Support huge (PMD-size and PUD-size) page-table entries by providing a
    huge_fault() callback.
    We still support private mappings and write-notify by splitting the huge
    page-table entries on write-access.
    
    Note that for huge page-faults to occur, either the kernel needs to be
    compiled with trans-huge-pages always enabled, or the kernel needs to be
    compiled with trans-huge-pages enabled using madvise, and the user-space
    app needs to call madvise() to enable trans-huge pages on a per-mapping
    basis.
    
    Furthermore huge page-faults will not succeed unless buffer objects and
    user-space addresses are aligned on huge page size boundaries.
    
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: Michal Hocko <mhocko@suse.com>
    Cc: "Matthew Wilcox (Oracle)" <willy@infradead.org>
    Cc: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
    Cc: Ralph Campbell <rcampbell@nvidia.com>
    Cc: "Jérôme Glisse" <jglisse@redhat.com>
    Cc: "Christian König" <christian.koenig@amd.com>
    Cc: Dan Williams <dan.j.williams@intel.com>
    Signed-off-by: default avatarThomas Hellstrom (VMware) <thomas_os@shipmail.org>
    Reviewed-by: default avatarRoland Scheidegger <sroland@vmware.com>
    Reviewed-by: default avatarChristian König <christian.koenig@amd.com>
    314b6580
ttm_bo_api.h 23.3 KB