• S
    [IA64] update efi region debugging to use MB, GB and TB as well as KB · 818c7e86
    Simon Horman 提交于
    When EFI_DEBUG is defined to a non-zero value in arch/ia64/kernel/efi.c,
    the efi memory regions are displayed. This patch enhances the
    display code in a few ways:
    
    1. Use TB, GB and MB as well as KB as units.
       Although this introduces rounding errors (KB doesn't as
       size is always a multiple of 4Kb), it does make
       things a lot more readable.
    
       Also as the range is also shown, it is possible to note the exact size
       if it is important. In my experience, the size field is mostly useful
       for getting a general idea of the size of a region.
    
       On the rx2620 that I use, there actually is an 8TB region (though not
       backed by physical memory, and 8TB really is a lot more readable than
       8589934592KB.
    
    2. pad the size field with leading spaces to further improve readability
    
       ...
       ... (   8MB)
       ... ( 928MB)
       ... (   3MB)
       ...
    
       vs
    
       ...
       ... (8MB)
       ... (928MB)
       ... (3MB)
       ...
    
    3. Pad the attr field out to 64bits using leading zeros,
       to further improve readability.
    
       ...
       mem05: type= 2, attr=0x0000000000000008, range=[0x0000000004000000-0x000000000481f000) (   8MB)
       mem06: type= 7, attr=0x0000000000000008, range=[0x000000000481f000-0x000000003e876000) ( 928MB)
       mem07: type= 5, attr=0x8000000000000008, range=[0x000000003e876000-0x000000003eb8e000) (   3MB)
       mem08: type= 4, attr=0x0000000000000008, range=[0x000000003eb8e000-0x000000003ee7a000) (   2MB)
       ...
    
       ...
       mem05: type= 2, attr=0x8, range=[0x0000000004000000-0x000000000481f000) (   8MB)
       mem06: type= 7, attr=0x8, range=[0x000000000481f000-0x000000003e876000) ( 928MB)
       mem07: type= 5, attr=0x8000000000000008, range=[0x000000003e876000-0x000000003eb8e000) (   3MB)
       mem08: type= 4, attr=0x8, range=[0x000000003eb8e000-0x000000003ee7a000) (   2MB)
       ...
    
    4. Use %d instead of %u for the index field, as i is a signed int.
    
    N.B: This code is not compiled unless EFI_DEBUG is non 0.
    Signed-off-by: NSimon Horman <horms@verge.net.au>
    Signed-off-by: NTony Luck <tony.luck@intel.com>
    818c7e86
efi.c 35.4 KB