• Sandrine Bailleux's avatar
    Fix computation of L1 bitmask in the translation table lib · aa447b9c
    Sandrine Bailleux authored
    This patch fixes the computation of the bitmask used to isolate
    the level 1 field of a virtual address. The whole computation needs
    to work on 64-bit values to produce the correct bitmask value.
    XLAT_TABLE_ENTRIES_MASK being a C constant, it is a 32-bit value
    so it needs to be extended to a 64-bit value before it takes part
    in any other computation.
    
    This patch fixes this bug by casting XLAT_TABLE_ENTRIES_MASK as
    an unsigned long long.
    
    Note that this bug doesn't manifest itself in practice because
    address spaces larger than 39 bits are not yet supported in the
    Trusted Firmware.
    
    Change-Id: I955fd263ecb691ca94b29b9c9f576008ce1d87ee
    aa447b9c
xlat_tables_common.c 10 KB