• David Gibson's avatar
    [PATCH] ppc64: remove RTAS arguments from PACA · 78c39c9f
    David Gibson authored
    This patch removes the RTAS arguments structure on ppc64 from the PACA. 
    The args have to be in the RMO, but since we have a global spinlock for
    RTAS anyway, there's no reason to have a separate copy of the args per-CPU.
     This patch replaces the PACA field with a single instance in the global
    rtas structure.
    
    The one exception is for the rtas_stop_self() call, which can't take the
    lock, because it never returns.  But it has a fixed set of arguments, so we
    can use another global instance which is initialized at boot.
    
    This lets us remove rtas.h from paca.h, which substantially reduces overall
    #include hairiness (because paca.h is now, as it wants to be, a nice
    low-level structure-defining header which relies on very little and can
    safely be included almost anywhere).  Although it does add some noise to
    the patch, because a bunch of places relied on the indirect inclusion of
    rtas.h, or even more indirect inclusions (see the hunks applying to eeh.h
    and current.h!).
    
    Cc: Paul Mackerras <paulus@samba.org>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    78c39c9f
eeh.c 24.5 KB