• Christophe JAILLET's avatar
    iommu/io-pgtable: Move some initialization data to .init.rodata · 9062c1d0
    Christophe JAILLET authored
    The memory used by '__init' functions can be freed once the initialization
    phase has been performed.
    
    Mark some 'static const' array defined and used within some '__init'
    functions as '__initconst', so that the corresponding data can also be
    discarded.
    
    Without '__initconst', the data are put in the .rodata section.
    With the qualifier, they are put in the .init.rodata section.
    
    With gcc 8.3.0, the following changes have been measured:
    
    Without '__initconst':
       section      size
      .rodata       00000720
      .init.rodata  00000018
    
    With '__initconst':
       section      size
      .rodata       00000660
      .init.rodata  00000058
    Signed-off-by: default avatarChristophe JAILLET <christophe.jaillet@wanadoo.fr>
    Signed-off-by: default avatarWill Deacon <will@kernel.org>
    9062c1d0
io-pgtable-arm.c 32.7 KB