• C
    x86, UV: Clean up uv_tlb.c · f073cc8f
    Cliff Wickman 提交于
    SGI UV's uv_tlb.c driver has become rather hard to read, with overly large
    functions, non-standard coding style and (way) too long variable, constant
    and function names and non-obvious code flow sequences.
    
    This patch improves the readability and maintainability of the driver
    significantly, by doing the following strict code cleanups with no side
    effects:
    
     - Split long functions into shorter logical functions.
    
     - Shortened some variable and structure member names.
    
     - Added special functions for reads and writes of MMR regs with
       very long names.
    
     - Added the 'tunables' table to shortened tunables_write().
    
     - Added the 'stat_description' table to shorten uv_ptc_proc_write().
    
     - Pass fewer 'stat' arguments where it can be derived from the 'bcp'
       argument.
    
     - Function definitions consistent on one line, and inline in few (short) cases.
    
     - Moved some small structures and an atomic inline function to the header file.
    
     - Moved some local variables to the blocks where they are used.
    
     - Updated the copyright date.
    
     - Shortened uv_write_global_mmr64() etc. using some aliasing; no
       line breaks. Renamed many uv_.. functions that are not exported.
    
     - Aligned structure fields.
        [ note that not all structures are aligned the same way though; I'd like
          to keep the extensive commenting in some of them. ]
    
     - Shortened some long structure names.
    
     - Standard pass/fail exit from init_per_cpu()
    
     - Vertical alignment for mass initializations.
    
     - More separation between blocks of code.
    
    Tested on a 16-processor Altix UV.
    Signed-off-by: NCliff Wickman <cpw@sgi.com>
    Cc: penberg@kernel.org
    Link: http://lkml.kernel.org/r/E1QOw12-0004MN-Lp@eag09.americas.sgi.comSigned-off-by: NIngo Molnar <mingo@elte.hu>
    f073cc8f
tlb_uv.c 48.4 KB