15 Jul, 2013

1 commit

  • The __cpuinit type of throwaway sections might have made sense
    some time ago when RAM was more constrained, but now the savings
    do not offset the cost and complications. For example, the fix in
    commit 5e427ec2d0 ("x86: Fix bit corruption at CPU resume time")
    is a good example of the nasty type of bugs that can be created
    with improper use of the various __init prefixes.

    After a discussion on LKML[1] it was decided that cpuinit should go
    the way of devinit and be phased out. Once all the users are gone,
    we can then finally remove the macros themselves from linux/init.h.

    This removes all the drivers/clocksource and drivers/irqchip uses of
    the __cpuinit macros from all C files.

    [1] https://lkml.org/lkml/2013/5/20/589

    Cc: John Stultz
    Cc: Thomas Gleixner
    Acked-by: Thomas Gleixner
    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     

25 Jun, 2013

1 commit

  • Several architectures have a dummy timer driver tightly coupled with
    their broadcast code to support machines without cpu-local timers (or
    where there is a lack of driver support).

    Since 12ad100046: "clockevents: Add generic timer broadcast function"
    it's been possible to write broadcast-capable timer drivers decoupled
    from the broadcast mechanism. We can use this functionality to implement
    a generic dummy timer driver that can be shared by all architectures
    with generic tick broadcast (ARCH_HAS_TICK_BROADCAST).

    This patch implements a generic dummy timer using this facility.

    [sboyd: Make percpu data static, use __this_cpu_ptr(), move to
    early_initcall to properly register on each CPU, only
    register if more than one CPU possible]

    Signed-off-by: Mark Rutland
    Signed-off-by: Stephen Boyd
    Acked-by: Marc Zyngier ,
    Cc: John Stultz
    Cc: Daniel Lezcano
    Cc: linux-arm-kernel@lists.infradead.org
    Link: http://lkml.kernel.org/r/1370291642-13259-3-git-send-email-sboyd@codeaurora.org
    Signed-off-by: Thomas Gleixner

    Mark Rutland