• Sunil Khatri's avatar
    genalloc: Correct nbytes calculation on long boundary · b3ed24db
    Sunil Khatri authored
    
    
    In existing code we calculate nbytes based on the byte
    boundary, but genalloc uses bitmap for maintaining the
    memory allocation aligned to long. So while calculating
    nbytes we end up getting wrong nbytes.
    example: lets say nbytes comes to 9 bytes for 70 bits when
    bytes aligned,but if long aligned we will have 3 long words
    i.e 12 bytes. This difference may lead to choosing the
    wrong api for freeing the memory i.e Between kfree() and
    vfree().
    Fix was inspired by an upstream commit
    eedce141cd2dad8d0cefc5468ef41898949a7031, bringing same fix
    into the gen_pool_detroy path.
    
    Change-Id: I942caf59e25515c780896b328b912604df9e10bf
    Signed-off-by: default avatarHareesh Gundu <hareeshg@codeaurora.org>
    Signed-off-by: default avatarSunil Khatri <sunilkh@codeaurora.org>
    b3ed24db
genalloc.c 11.7 KB