• Mike Kravetz's avatar
    hugetlb: perform vmemmap restoration on a list of pages · cfb8c750
    Mike Kravetz authored
    The routine update_and_free_pages_bulk already performs vmemmap
    restoration on the list of hugetlb pages in a separate step.  In
    preparation for more functionality to be added in this step, create a new
    routine hugetlb_vmemmap_restore_folios() that will restore vmemmap for a
    list of folios.
    
    This new routine must provide sufficient feedback about errors and actual
    restoration performed so that update_and_free_pages_bulk can perform
    optimally.
    
    Special care must be taken when encountering an error from
    hugetlb_vmemmap_restore_folios.  We want to continue making as much
    forward progress as possible.  A new routine bulk_vmemmap_restore_error
    handles this specific situation.
    
    Link: https://lkml.kernel.org/r/20231019023113.345257-5-mike.kravetz@oracle.comSigned-off-by: default avatarMike Kravetz <mike.kravetz@oracle.com>
    Reviewed-by: default avatarMuchun Song <songmuchun@bytedance.com>
    Cc: Anshuman Khandual <anshuman.khandual@arm.com>
    Cc: Barry Song <21cnbao@gmail.com>
    Cc: David Hildenbrand <david@redhat.com>
    Cc: David Rientjes <rientjes@google.com>
    Cc: James Houghton <jthoughton@google.com>
    Cc: Joao Martins <joao.m.martins@oracle.com>
    Cc: Konrad Dybcio <konradybcio@kernel.org>
    Cc: Matthew Wilcox (Oracle) <willy@infradead.org>
    Cc: Miaohe Lin <linmiaohe@huawei.com>
    Cc: Michal Hocko <mhocko@suse.com>
    Cc: Naoya Horiguchi <naoya.horiguchi@linux.dev>
    Cc: Oscar Salvador <osalvador@suse.de>
    Cc: Sergey Senozhatsky <senozhatsky@chromium.org>
    Cc: Usama Arif <usama.arif@bytedance.com>
    Cc: Xiongchun Duan <duanxiongchun@bytedance.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    cfb8c750
hugetlb.c 215 KB