lkml.org 
[lkml]   [2020]   [Jul]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v4 20/75] x86/boot/compressed/64: Check return value of kernel_ident_mapping_init()
    Date
    From: Joerg Roedel <jroedel@suse.de>

    The function can fail to create an identity mapping, check for that
    and bail out if it happens.

    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    ---
    arch/x86/boot/compressed/ident_map_64.c | 7 +++++--
    1 file changed, 5 insertions(+), 2 deletions(-)

    diff --git a/arch/x86/boot/compressed/ident_map_64.c b/arch/x86/boot/compressed/ident_map_64.c
    index b4f2a5f503cd..aa91bebc0fe9 100644
    --- a/arch/x86/boot/compressed/ident_map_64.c
    +++ b/arch/x86/boot/compressed/ident_map_64.c
    @@ -91,6 +91,8 @@ static struct x86_mapping_info mapping_info;
    */
    static void add_identity_map(unsigned long start, unsigned long end)
    {
    + int ret;
    +
    /* Align boundary to 2M. */
    start = round_down(start, PMD_SIZE);
    end = round_up(end, PMD_SIZE);
    @@ -98,8 +100,9 @@ static void add_identity_map(unsigned long start, unsigned long end)
    return;

    /* Build the mapping. */
    - kernel_ident_mapping_init(&mapping_info, (pgd_t *)top_level_pgt,
    - start, end);
    + ret = kernel_ident_mapping_init(&mapping_info, (pgd_t *)top_level_pgt, start, end);
    + if (ret)
    + error("Error: kernel_ident_mapping_init() failed\n");
    }

    /* Locates and clears a region for a new top level page table. */
    --
    2.27.0
    \
     
     \ /
      Last update: 2020-07-14 14:17    [W:3.751 / U:1.052 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site