Hi Thomas,
I have got few more cleanups other than what I posted yesterday:
https://lkml.org/lkml/2014/3/26/107
All 30 are pushed here (i.e. Part I and II)
git://git.linaro.org/people/viresh.kumar/linux.git timer-cleanup-for-tglx
Please see if they make sense.
Viresh Kumar (16):
hrtimer: move unlock_hrtimer_base() upwards
hrtimer: reorder code in __remove_hrtimer()
hrtimer: Create hrtimer_get_monoexpires()
hrtimer: remove 'base' parameter from remove_timer() and
__remove_timer()
hrtimer: remove 'base' parameter from switch_hrtimer_base()
hrtimer: remove 'base' parameter from enqueue_hrtimer()
hrtimer: remove 'base' parameter from hrtimer_{enqueue_}reprogram()
hrtimer: make switch_hrtimer_base() return void
hrtimer: make lock_hrtimer_base() return void
hrtimer: make enqueue_hrtimer() return void
hrtimer: don't check if timer is queued in __remove_hrtimer()
hrtimer: rewrite switch_hrtimer_base() to remove extra indentation
level
hrtimer: rewrite remove_hrtimer() to remove extra indentation level
hrtimer: replace base by new_base to get resolution:
__hrtimer_start_range_ns()
hrtimer: create base_on_this_cpu()
hrtimer: use base->hres_active directly instead of
hrtimer_hres_active()
include/linux/hrtimer.h | 11 +++
kernel/hrtimer.c | 242 +++++++++++++++++++++---------------------------
2 files changed, 119 insertions(+), 134 deletions(-)
--
1.7.12.rc2.18.g61b472e
Currently, KVM ARM/ARM64 only provides in-kernel emulation of Power State
and Coordination Interface (PSCI) v0.1.
This patchset aims at providing newer PSCI v0.2 for KVM ARM/ARM64 VCPUs
such that it does not break current KVM ARM/ARM64 ABI.
The user space tools (i.e. QEMU or KVMTOOL) will have to explicitly enable
KVM_ARM_VCPU_PSCI_0_2 feature using KVM_ARM_VCPU_INIT ioctl for providing
PSCI v0.2 to VCPUs.
Changlog:
V6:
- Introduce uapi/linux/psci.h for sharing PSCI defines between
ARM kernel, ARM64 kernel, KVM ARM/ARM64 and user space
- Make CPU_SUSPEND emulation similar to WFI emulation
V5:
- Have separate last patch to advertise KVM_CAP_ARM_PSCI_0_2
- Use kvm_psci_version() in kvm_psci_vcpu_on()
- Return ALREADY_ON for PSCI v0.2 CPU_ON if VCPU is not paused
- Remove per-VCPU suspend context
- As-per PSCI v0.2 spec, only current CPU can suspend itself
V4:
- Implement all mandatory functions required by PSCI v0.2
V3:
- Make KVM_ARM_VCPU_PSCI_0_2 feature experiementatl for now so that
it fails for user space till all mandatory PSCI v0.2 functions are
emulated by KVM ARM/ARM64
- Have separate patch for making KVM_ARM_VCPU_PSCI_0_2 feature available
to user space. This patch can be defferred for now
V2:
- Don't rename PSCI return values KVM_PSCI_RET_NI and KVM_PSCI_RET_INVAL
- Added kvm_psci_version() to get PSCI version available to VCPU
- Fixed grammer in Documentation/virtual/kvm/api.txt
V1:
- Initial RFC PATCH
Anup Patel (12):
KVM: Add capability to advertise PSCI v0.2 support
ARM/ARM64: KVM: Add common header for PSCI related defines
ARM/ARM64: KVM: Add base for PSCI v0.2 emulation
KVM: Documentation: Add info regarding KVM_ARM_VCPU_PSCI_0_2 feature
ARM/ARM64: KVM: Make kvm_psci_call() return convention more flexible
KVM: Add KVM_EXIT_SYSTEM_EVENT to user space API header
ARM/ARM64: KVM: Emulate PSCI v0.2 SYSTEM_OFF and SYSTEM_RESET
ARM/ARM64: KVM: Emulate PSCI v0.2 AFFINITY_INFO
ARM/ARM64: KVM: Emulate PSCI v0.2 MIGRATE_INFO_TYPE and related
functions
ARM/ARM64: KVM: Fix CPU_ON emulation for PSCI v0.2
ARM/ARM64: KVM: Emulate PSCI v0.2 CPU_SUSPEND
ARM/ARM64: KVM: Advertise KVM_CAP_ARM_PSCI_0_2 to user space
Documentation/virtual/kvm/api.txt | 17 +++
arch/arm/include/asm/kvm_host.h | 2 +-
arch/arm/include/asm/kvm_psci.h | 6 +-
arch/arm/include/uapi/asm/kvm.h | 19 +--
arch/arm/kvm/arm.c | 1 +
arch/arm/kvm/handle_exit.c | 10 +-
arch/arm/kvm/psci.c | 233 ++++++++++++++++++++++++++++++++++---
arch/arm64/include/asm/kvm_host.h | 2 +-
arch/arm64/include/asm/kvm_psci.h | 6 +-
arch/arm64/include/uapi/asm/kvm.h | 21 ++--
arch/arm64/kvm/handle_exit.c | 10 +-
include/uapi/linux/Kbuild | 1 +
include/uapi/linux/kvm.h | 9 ++
include/uapi/linux/psci.h | 55 +++++++++
14 files changed, 344 insertions(+), 48 deletions(-)
create mode 100644 include/uapi/linux/psci.h
--
1.7.9.5
Automated DT boot report for various ARM defconfigs.
Tree/Branch: mainline
Git describe: v3.14-602-g01d5f3b
Failed boot tests (console logs at the end)
===========================================
sama5d35ek: FAIL: sama5_defconfig
Full Report
===========
da8xx_omapl_defconfig
---------------------
da850-evm 0 min 15.2 sec: PASS (Warnings: 1)
legacy,da850evm 0 min 14.4 sec: PASS (Warnings: 1)
omap2plus_defconfig
-------------------
legacy,3730xm 0 min 50.8 sec: PASS
am335x-boneblack 0 min 25.6 sec: PASS
omap3-beagle-xm 1 min 6.2 sec: PASS
legacy,3530beagle 0 min 42.6 sec: PASS (Warnings: 1)
omap4-panda 1 min 12.3 sec: PASS
omap3-overo-tobi 0 min 23.3 sec: PASS (Warnings: 1)
am335x-bone 0 min 27.6 sec: PASS
omap3-overo-storm-tobi 0 min 25.5 sec: PASS
omap5-uevm 1 min 0.3 sec: PASS (Warnings: 1)
omap4-panda-es 1 min 8.0 sec: PASS
legacy,3730storm 0 min 20.8 sec: PASS
legacy,3530overo 0 min 21.2 sec: PASS (Warnings: 1)
multi_lpae_defconfig
--------------------
omap5-uevm 1 min 50.1 sec: PASS (Warnings: 1)
sun7i-a20-cubieboard2 0 min 14.7 sec: PASS
tegra_defconfig
---------------
tegra30-beaver 0 min 17.1 sec: PASS
imx_v6_v7_defconfig
-------------------
imx6dl-wandboard,wand-dual 0 min 18.7 sec: PASS
imx6dl-wandboard,wand-solo 0 min 18.6 sec: PASS
imx6q-wandboard 0 min 17.3 sec: PASS
msm_defconfig
-------------
qcom-apq8074-dragonboard 0 min 15.5 sec: PASS
bcm_defconfig
-------------
bcm28155-ap 0 min 23.2 sec: PASS
sunxi_defconfig
---------------
sun7i-a20-cubieboard2 0 min 13.1 sec: PASS
sun4i-a10-cubieboard 0 min 17.4 sec: PASS
exynos_defconfig
----------------
exynos5250-arndale 0 min 30.7 sec: PASS
multi_v7_defconfig
------------------
ste-snowball 1 min 20.5 sec: PASS
tegra30-beaver 0 min 16.6 sec: PASS
am335x-boneblack 0 min 23.6 sec: PASS
omap3-beagle-xm 0 min 45.9 sec: PASS
sun7i-a20-cubieboard2 0 min 14.4 sec: PASS
armada-370-mirabox 0 min 24.3 sec: PASS
omap4-panda 0 min 51.9 sec: PASS
armada-xp-openblocks-ax3-4 0 min 25.2 sec: PASS
sun4i-a10-cubieboard 0 min 22.1 sec: PASS
bcm28155-ap 0 min 27.6 sec: PASS
omap3-overo-tobi 0 min 24.7 sec: PASS (Warnings: 1)
imx6dl-wandboard,wand-solo 0 min 17.9 sec: PASS
am335x-bone 0 min 26.2 sec: PASS
omap3-overo-storm-tobi 0 min 23.9 sec: PASS
omap5-uevm 1 min 43.1 sec: PASS (Warnings: 1)
imx6q-wandboard 0 min 17.2 sec: PASS
omap4-panda-es 0 min 53.3 sec: PASS
imx6dl-wandboard,wand-dual 0 min 18.2 sec: PASS
u8500_defconfig
---------------
ste-snowball 0 min 30.6 sec: PASS
sama5_defconfig
---------------
sama5d35ek 1 min 43.3 sec: FAIL
davinci_all_defconfig
---------------------
legacy,dm365evm 0 min 17.1 sec: PASS
mvebu_defconfig
---------------
armada-xp-openblocks-ax3-4 0 min 21.9 sec: PASS
armada-370-mirabox 0 min 20.1 sec: PASS
Console logs for failures
=========================
sama5_defconfig
---------------
sama5d35ek: FAIL: last 80 lines of boot log:
--------------------------------------------
atmel-ehci 700000.ehci: irq 51, io mem 0x00700000
atmel-ehci 700000.ehci: USB 2.0 started, EHCI 1.00
usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: EHCI Host Controller
usb usb1: Manufacturer: Linux 3.14.0+ ehci_hcd
usb usb1: SerialNumber: 700000.ehci
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 3 ports detected
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
ohci-atmel: OHCI Atmel driver
at91_ohci 600000.ohci: OHCI Host Controller
at91_ohci 600000.ohci: new USB bus registered, assigned bus number 2
at91_ohci 600000.ohci: irq 51, io mem 0x00600000
usb usb2: New USB device found, idVendor=1d6b, idProduct=0001
usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb2: Product: OHCI Host Controller
usb usb2: Manufacturer: Linux 3.14.0+ ohci_hcd
usb usb2: SerialNumber: at91
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 3 ports detected
usbcore: registered new interface driver cdc_acm
cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
usbcore: registered new interface driver usb-storage
usbcore: registered new interface driver usbserial
usbcore: registered new interface driver usbserial_generic
usbserial: USB Serial support registered for generic
usbcore: registered new interface driver ftdi_sio
usbserial: USB Serial support registered for FTDI USB Serial Device
usbcore: registered new interface driver pl2303
usbserial: USB Serial support registered for pl2303
atmel_usba_udc 500000.gadget: MMIO registers at 0xf8030000 mapped at e08a8000
atmel_usba_udc 500000.gadget: FIFO at 0x00500000 mapped at e2200000
g_serial gadget: Gadget Serial v2.4
g_serial gadget: g_serial ready
at91_rtc fffffeb0.rtc: rtc core: registered fffffeb0.rtc as rtc0
at91_rtc fffffeb0.rtc: AT91 Real Time Clock driver.
i2c /dev entries driver
atmel_aes f8038000.aes: version: 0x135
atmel_aes f8038000.aes: Atmel AES - Using dma1chan0, dma1chan1 for DMA transfers
atmel_sha f8034000.sha: version: 0x410
atmel_sha f8034000.sha: using dma1chan2 for DMA transfers
atmel_sha f8034000.sha: Atmel SHA1/SHA256/SHA224/SHA384/SHA512
atmel_tdes f803c000.tdes: version: 0x701
atmel_tdes f803c000.tdes: using dma1chan3, dma1chan4 for DMA transfers
atmel_tdes f803c000.tdes: Atmel DES/TDES
usbcore: registered new interface driver usbhid
usbhid: USB HID core driver
iio iio:device0: Resolution used: 12 bits
iio iio:device0: not support touchscreen in the adc compatible string.
TCP: cubic registered
NET: Registered protocol family 10
sit: IPv6 over IPv4 tunneling driver
NET: Registered protocol family 17
can: controller area network core (rev 20120528 abi 9)
NET: Registered protocol family 29
can: raw protocol (rev 20120528)
can: broadcast manager protocol (rev 20120528 t)
can: netlink gateway (rev 20130117) max_hops=1
input: gpio_keys.6 as /devices/gpio_keys.6/input/input0
at91_rtc fffffeb0.rtc: setting system clock to 2007-01-01 00:00:10 UTC (1167609610)
atmel_mci f0000000.mmc: version: 0x505
atmel_mci f0000000.mmc: using dma0chan4 for DMA transfers
atmel_mci f0000000.mmc: Atmel MCI controller at 0xf0000000 irq 26, 1 slots
atmel_mci f8000000.mmc: version: 0x505
atmel_mci f8000000.mmc: using dma1chan5 for DMA transfers
atmel_mci f8000000.mmc: Atmel MCI controller at 0xf8000000 irq 32, 1 slots
IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
Waiting up to 110 more seconds for network.
Waiting up to 100 more seconds for network.
Waiting up to 90 more seconds for network.
Waiting up to 80 more seconds for network.
Waiting up to 70 more seconds for network.
Waiting up to 60 more seconds for network.
Waiting up to 50 more seconds for network.
Waiting up to 40 more seconds for network.
~$off
# PYBOOT: Exception: kernel: ERROR: failed to boot: <class 'pexpect.TIMEOUT'>
# PYBOOT: Time: 103.28 seconds.
# PYBOOT: Result: FAIL