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 remaining one-off uses of the __cpuinit macros
    from all C files in the drivers/* directory.

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

    Cc: Greg Kroah-Hartman
    Acked-by: Greg Kroah-Hartman
    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     

28 Jun, 2013

1 commit

  • Convert printks to pr_ (excludes printk(KERN_DEBUG...)
    to be more consistent throughout the xen subsystem.

    Add pr_fmt with KBUILD_MODNAME or "xen:" KBUILD_MODNAME
    Coalesce formats and add missing word spaces
    Add missing newlines
    Align arguments and reflow to 80 columns
    Remove DRV_NAME from formats as pr_fmt adds the same content

    This does change some of the prefixes of these messages
    but it also does make them more consistent.

    Signed-off-by: Joe Perches
    Signed-off-by: Konrad Rzeszutek Wilk

    Joe Perches
     

25 Feb, 2013

2 commits

  • Recently at native Rafael did some cleanup for acpi, say, drop
    acpi_bus_add, remove unnecessary argument of acpi_bus_scan,
    and run acpi_bus_scan under acpi_scan_lock.

    This patch does similar cleanup for xen cpu hotplug, removing
    redundant logic, and adding lock.

    Signed-off-by: Liu Jinsong
    Signed-off-by: Konrad Rzeszutek Wilk

    Liu Jinsong
     
  • Pull Xen update from Konrad Rzeszutek Wilk:
    "This has two new ACPI drivers for Xen - a physical CPU offline/online
    and a memory hotplug. The way this works is that ACPI kicks the
    drivers and they make the appropiate hypercall to the hypervisor to
    tell it that there is a new CPU or memory. There also some changes to
    the Xen ARM ABIs and couple of fixes. One particularly nasty bug in
    the Xen PV spinlock code was fixed by Stefan Bader - and has been
    there since the 2.6.32!

    Features:
    - Xen ACPI memory and CPU hotplug drivers - allowing Xen hypervisor
    to be aware of new CPU and new DIMMs
    - Cleanups
    Bug-fixes:
    - Fixes a long-standing bug in the PV spinlock wherein we did not
    kick VCPUs that were in a tight loop.
    - Fixes in the error paths for the event channel machinery"

    Fix up a few semantic conflicts with the ACPI interface changes in
    drivers/xen/xen-acpi-{cpu,mem}hotplug.c.

    * tag 'stable/for-linus-3.9-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:
    xen: event channel arrays are xen_ulong_t and not unsigned long
    xen: Send spinlock IPI to all waiters
    xen: introduce xen_remap, use it instead of ioremap
    xen: close evtchn port if binding to irq fails
    xen-evtchn: correct comment and error output
    xen/tmem: Add missing %s in the printk statement.
    xen/acpi: move xen_acpi_get_pxm under CONFIG_XEN_DOM0
    xen/acpi: ACPI cpu hotplug
    xen/acpi: Move xen_acpi_get_pxm to Xen's acpi.h
    xen/stub: driver for CPU hotplug
    xen/acpi: ACPI memory hotplug
    xen/stub: driver for memory hotplug
    xen: implement updated XENMEM_add_to_physmap_range ABI
    xen/smp: Move the common CPU init code a bit to prep for PVH patch.

    Linus Torvalds
     

20 Feb, 2013

1 commit

  • This patch implement real Xen ACPI cpu hotplug driver as module.
    When loaded, it replaces Xen stub driver.

    For booting existed cpus, the driver enumerates them.
    For hotadded cpus, which added at runtime and notify OS via
    device or container event, the driver is invoked to add them,
    parsing cpu information, hypercalling to Xen hypervisor to add
    them, and finally setting up new /sys interface for them.

    Signed-off-by: Liu Jinsong
    Signed-off-by: Konrad Rzeszutek Wilk

    Liu Jinsong