Hi All,
There's a scheduled downtime for 30 min, today at 17:00UTC.
We plan to increase the disk space available on people.linaro.org.
Thanks.
Cheers,
--
Fathi Boudra
Linaro Release Manager | LAVA Project Manager
Linaro.org | Open source software for ARM SoCs
Hi Andrey,
Please PULL b.L MP V11 branch from my tree. Pull request is generated
against v3.7-rc3:
Updates:
-------
- Based on v3.7-rc3
- Stats:
- Total Patches: 70
- New Patches: 22
- per-task-load-average-v3-merged: 1 by Peter Z.
- per-entity-load-tracking-with-core-sched-v1: 15 by Preeti
- sched-pack-small-tasks-v1:6 by Vincent
- Dropped patches/branches (as they are already merged in 3.7): 24
- arm-asymmetric-support-v3-v3.6-rc1: 1
- per-cpu-thread-hotplug-v3-fixed: 8
- rcu-hotplug-v1: 4
- scheduler-misc-v1: 1
- arm-multi_pmu_v2: 10 (out of 24 merged)
- Updated Patches: 16
- per-task-load-average-v3-merged updated with patches applied to
sched/core tip
------------------------8<------------------------------------------------
The following changes since commit 8f0d8163b50e01f398b14bcd4dc039ac5ab18d64:
Linux 3.7-rc3 (2012-10-28 12:24:48 -0700)
are available in the git repository at:
git://git.linaro.org/arm/big.LITTLE/mp.git big-LITTLE-MP-v11
for you to fetch changes up to 0c44ec0c38e97e404d0f9921f5cbeb7deb1dfc8b:
Merge branches 'arm-multi_pmu_v2', 'hw-bkp-v7.1-debug-v1',
'task-placement-v2', 'per-entity-load-tracking-with-core-sched-v1',
'config-fragments' and 'sched-pack-small-tasks-v1' into big-LITTLE-MP-v11
(2012-11-05 15:11:02 +0530)
----------------------------------------------------------------
Ben Segall (1):
sched: Maintain per-rq runnable averages
Dietmar Eggemann (1):
ARM: hw_breakpoint: v7.1 self-hosted debug powerdown support
Jon Medhurst (6):
configs: Initial core configs
configs: Make CONFIG_MODULES part of linaro-base
configs: Replace CONFIG_PERF_COUNTERS with CONFIG_PERF_EVENTS
configs: android: Enable FB_EARLYSUSPEND
configs: android: Enable CONFIG_INPUT_UINPUT to get aidb working
ARM: sched: Avoid empty 'slow' HMP domain
Lorenzo Pieralisi (1):
ARM: kernel: provide cluster to logical cpu mask mapping API
Marc Zyngier (1):
ARM: perf: add guest vs host discrimination
Mark Rutland (1):
ARM: perf: register cpu_notifier at driver init
Morten Rasmussen (13):
linaro/configs: Enable HMP priority filter by default
sched: entity load-tracking load_avg_ratio
sched: Task placement for heterogeneous systems based on task
load-tracking
sched: Forced task migration on heterogeneous systems
sched: Introduce priority-based task migration filter
ARM: Add HMP scheduling support for ARM architecture
ARM: sched: Use device-tree to provide fast/slow CPU list for HMP
ARM: sched: Setup SCHED_HMP domains
sched: Add ftrace events for entity load-tracking
sched: Add HMP task migration ftrace event
sched: SCHED_HMP multi-domain task migration control
sched: Enable HMP priority filter by default
sched: Only down migrate low priority tasks if allowed by affinity
mask
Paul Turner (15):
sched: Track the runnable average on a per-task entity basis
sched: Aggregate load contributed by task entities on parenting cfs_rq
sched: Maintain the load contribution of blocked entities
sched: Add an rq migration call-back to sched_class
sched: Account for blocked load waking back up
sched: Aggregate total task_group load
sched: Compute load contribution by a group entity
sched: Normalize tg load contributions against runnable time
sched: Maintain runnable averages across throttled periods
sched: Replace update_shares weight distribution with per-entity
computation
sched: Refactor update_shares_cpu() -> update_blocked_avgs()
sched: Update_cfs_shares at period edge
sched: Make __update_entity_runnable_avg() fast
sched: Introduce temporary FAIR_GROUP_SCHED dependency for
load-tracking
sched: implement usage tracking
Peter Zijlstra (1):
sched: Describe CFS load-balancer
Preeti U Murthy (14):
sched:Prevent movement of short running tasks during load balancing
sched:Pick the apt busy sched group during load balancing
sched:Decide whether there be transfer of loads based on the PJT's
metric
sched:Decide group_imb using PJT's metric
sched:Calculate imbalance using PJT's metric
sched: Changing find_busiest_queue to use PJT's metric
sched: Change move_tasks to use PJT's metric
sched: Some miscallaneous changes in load_balance
sched: Modify check_asym_packing to use PJT's metric
sched: Modify fix_small_imbalance to use PJT's metric
sched: Modify find_idlest_group to use PJT's metric
sched: Modify find_idlest_cpu to use PJT's metric
sched: Modifying wake_affine to use PJT's metric
sched: Explicit division calls on 64-bit integers
Ricardo Salveti de Araujo (7):
configs: moving previous ubuntu.conf as ubuntu-minimal and creating a
full ubuntu one
configs: ubuntu: be compatible with the enforce script
configs: ubuntu: disabling CODA_FS, seems to be broken atm
configs: ubuntu: disabling CGROUPS as default
configs: ubuntu: updating configs for 3.5
configs: ubuntu: disabling CONFIG_MTD_NAND_NANDSIM=m, breaking build
config: ubuntu: ATH6KL should be platform dependent
Sudeep KarkadaNagesha (9):
ARM: perf: allocate CPU PMU dynamically at probe time
ARM: perf: consistently use struct perf_event in arm_pmu functions
ARM: perf: check ARMv7 counter validity on a per-pmu basis
ARM: perf: replace global CPU PMU pointer with per-cpu pointers
ARM: perf: register CPU PMUs with idr types
ARM: perf: set cpu affinity to support multiple PMUs
ARM: perf: set cpu affinity for the irqs correctly
ARM: perf: remove spaces in CPU PMU names
ARM: perf: save/restore pmu registers in pm notifier
Tushar Behera (1):
linaro/configs: ubuntu: Disable support for generic OHCI platform
driver
Vincent Guittot (5):
sched: add a new SD SHARE_POWERLINE flag for sched_domain
sched: pack small tasks
sched: secure access to other CPU statistics
sched: pack the idle load balance
ARM: sched: clear SD_SHARE_POWERLINE
Viresh Kumar (6):
configs: Add config fragments for big LITTLE MP
linaro/configs: Update big LITTLE MP fragment for task placement work
config-frag/big-LITTLE: Use device-tree to provide fast/slow CPU list
for HMP
Revert "sched: Introduce temporary FAIR_GROUP_SCHED dependency for
load-tracking"
Revert "sched: Introduce temporary FAIR_GROUP_SCHED dependency for
load-tracking"
Merge branches 'arm-multi_pmu_v2', 'hw-bkp-v7.1-debug-v1',
'task-placement-v2', 'per-entity-load-tracking-with-core-sched-v1',
'config-fragments' and 'sched-pack-small-tasks-v1' into big-LITTLE-MP-v11
Will Deacon (2):
ARM: perf: return NOTIFY_DONE from cpu notifier when no available PMU
ARM: perf: consistently use arm_pmu->name for PMU name
Documentation/devicetree/bindings/arm/pmu.txt | 3 +
arch/arm/Kconfig | 47 +
arch/arm/include/asm/perf_event.h | 5 +
arch/arm/include/asm/pmu.h | 40 +-
arch/arm/include/asm/topology.h | 34 +
arch/arm/kernel/hw_breakpoint.c | 57 +
arch/arm/kernel/perf_event.c | 103 +-
arch/arm/kernel/perf_event_cpu.c | 169 +-
arch/arm/kernel/perf_event_v6.c | 130 +-
arch/arm/kernel/perf_event_v7.c | 295 ++--
arch/arm/kernel/perf_event_xscale.c | 161 +-
arch/arm/kernel/topology.c | 125 ++
arch/ia64/include/asm/topology.h | 1 +
arch/tile/include/asm/topology.h | 1 +
include/linux/sched.h | 29 +
include/linux/topology.h | 3 +
include/trace/events/sched.h | 153 ++
kernel/sched/core.c | 16 +
kernel/sched/debug.c | 39 +-
kernel/sched/fair.c | 1785 ++++++++++++++++++---
kernel/sched/sched.h | 65 +-
linaro/configs/android.conf | 33 +
linaro/configs/big-LITTLE-MP.conf | 11 +
linaro/configs/linaro-base.conf | 84 +
linaro/configs/ubuntu-minimal.conf | 24 +
linaro/configs/ubuntu.conf | 2132
+++++++++++++++++++++++++
26 files changed, 4910 insertions(+), 635 deletions(-)
create mode 100644 linaro/configs/android.conf
create mode 100644 linaro/configs/big-LITTLE-MP.conf
create mode 100644 linaro/configs/linaro-base.conf
create mode 100644 linaro/configs/ubuntu-minimal.conf
create mode 100644 linaro/configs/ubuntu.conf
Hi all,
this patch series implements Xen support for ARMv7 with virtualization
extensions. It allows a Linux guest to boot as dom0 and
as domU on Xen on ARM. PV console, disk and network frontends and
backends are all working correctly.
It has been tested on a Versatile Express Cortex A15 emulator, using the
latest Xen ARM developement branch
(git://xenbits.xen.org/people/ianc/xen-unstable.git arm-for-4.3) plus
the "ARM hypercall ABI: 64 bit ready" patch series
(http://marc.info/?l=xen-devel&m=134426267205408), and a simple ad-hoc
tool to build guest domains (marc.info/?l=xen-devel&m=134089788016546).
The patch marked with [HACK] shouldn't be applied and is part of the
series only because it is needed to create domUs.
I am also attaching to this email the dts'es that I am currently using
for dom0 and domU: vexpress-v2p-ca15-tc1.dts (that includes
vexpress-v2m-rs1-rtsm.dtsi) is the dts used for dom0 and it is passed to
Linux by Xen, while vexpress-virt.dts is the dts used for other domUs
and it is appended in binary form to the guest kernel image. I am not
sure where they are supposed to live yet, so I am just attaching them
here so that people can actually try out this series if they want to.
Comments are very welcome!
Changes in v3:
- move patches that have been picked up by Konrad at the end of the
series;
- improve comments;
- add a doc to describe the Xen Device Tree format;
- do not use xen_ulong_t for multicalls and apic_physbase;
- add a patch at the end of the series to use the new __HVC macro;
- add missing pvclock-abi.h include to ia64 header files;
- do not use an anonymous union in struct xen_add_to_physmap.
Changes in v2:
- fix up many comments and commit messages;
- remove the early_printk patches: rely on the emulated serial for now;
- remove the xen_guest_init patch: without any PV early_printk, we don't
need any early call to xen_guest_init, we can rely on core_initcall
alone;
- define an HYPERCALL macro for 5 arguments hypercall wrappers, even if
at the moment is unused;
- use ldm instead of pop in the hypercall wrappers;
- return -ENOSYS rather than -1 from the unimplemented grant_table
functions;
- remove the pvclock ifdef in the Xen headers;
- remove include linux/types.h from xen/interface/xen.h;
- replace pr_info with pr_debug in xen_guest_init;
- add a new patch to introduce xen_ulong_t and use it top replace all
the occurences of unsigned long in the public Xen interface;
- explicitely size all the pointers to 64 bit on ARM, so that the
hypercall ABI is "64 bit ready";
- clean up xenbus_init;
- make pci.o depend on CONFIG_PCI and acpi.o depend on CONFIG_ACPI;
- mark Xen guest support on ARM as EXPERIMENTAL;
- introduce GRANT_TABLE_PHYSADDR;
- remove unneeded initialization of boot_max_nr_grant_frames;
- add a new patch to clear IRQ_NOAUTOEN and IRQ_NOREQUEST in events.c;
- return -EINVAL from xen_remap_domain_mfn_range if
auto_translated_physmap;
- retain binary compatibility in xen_add_to_physmap: use a union to
introduce foreign_domid.
Ian Campbell (1):
[HACK] xen/arm: implement xen_remap_domain_mfn_range
Stefano Stabellini (24):
arm: initial Xen support
xen/arm: hypercalls
xen/arm: page.h definitions
xen/arm: sync_bitops
xen/arm: empty implementation of grant_table arch specific functions
docs: Xen ARM DT bindings
xen/arm: Xen detection and shared_info page mapping
xen/arm: Introduce xen_pfn_t for pfn and mfn types
xen/arm: Introduce xen_ulong_t for unsigned long
xen/arm: compile and run xenbus
xen: do not compile manage, balloon, pci, acpi and cpu_hotplug on ARM
xen/arm: introduce CONFIG_XEN on ARM
xen/arm: get privilege status
xen/arm: initialize grant_table on ARM
xen/arm: receive Xen events on ARM
xen: clear IRQ_NOAUTOEN and IRQ_NOREQUEST
xen/arm: implement alloc/free_xenballooned_pages with alloc_pages/kfree
xen: allow privcmd for HVM guests
xen/arm: compile blkfront and blkback
xen/arm: compile netback
arm/v2m: initialize arch_timers even if v2m_timer is not present
xen/arm: use the __HVC macro
xen: missing includes
xen: update xen_add_to_physmap interface
Documentation/devicetree/bindings/arm/xen.txt | 22 +++
arch/arm/Kconfig | 10 +
arch/arm/Makefile | 1 +
arch/arm/include/asm/hypervisor.h | 6 +
arch/arm/include/asm/sync_bitops.h | 27 +++
arch/arm/include/asm/xen/events.h | 18 ++
arch/arm/include/asm/xen/hypercall.h | 69 +++++++
arch/arm/include/asm/xen/hypervisor.h | 19 ++
arch/arm/include/asm/xen/interface.h | 73 ++++++++
arch/arm/include/asm/xen/page.h | 82 ++++++++
arch/arm/mach-vexpress/v2m.c | 11 +-
arch/arm/xen/Makefile | 1 +
arch/arm/xen/enlighten.c | 245 +++++++++++++++++++++++++
arch/arm/xen/grant-table.c | 53 ++++++
arch/arm/xen/hypercall.S | 102 ++++++++++
arch/ia64/include/asm/xen/interface.h | 8 +-
arch/x86/include/asm/xen/interface.h | 8 +
arch/x86/xen/enlighten.c | 1 +
arch/x86/xen/irq.c | 1 +
arch/x86/xen/mmu.c | 3 +
arch/x86/xen/xen-ops.h | 1 -
drivers/block/xen-blkback/blkback.c | 1 +
drivers/net/xen-netback/netback.c | 1 +
drivers/net/xen-netfront.c | 1 +
drivers/tty/hvc/hvc_xen.c | 2 +
drivers/xen/Makefile | 11 +-
drivers/xen/events.c | 18 ++-
drivers/xen/grant-table.c | 1 +
drivers/xen/privcmd.c | 20 +-
drivers/xen/xenbus/xenbus_comms.c | 2 +-
drivers/xen/xenbus/xenbus_probe.c | 62 +++++--
drivers/xen/xenbus/xenbus_probe_frontend.c | 1 +
drivers/xen/xenbus/xenbus_xs.c | 1 +
drivers/xen/xenfs/super.c | 7 +
include/xen/events.h | 2 +
include/xen/interface/features.h | 3 +
include/xen/interface/grant_table.h | 4 +-
include/xen/interface/io/protocols.h | 3 +
include/xen/interface/memory.h | 32 ++-
include/xen/interface/physdev.h | 2 +-
include/xen/interface/platform.h | 4 +-
include/xen/interface/version.h | 2 +-
include/xen/interface/xen.h | 7 +-
include/xen/privcmd.h | 3 +-
include/xen/xen.h | 2 +-
45 files changed, 885 insertions(+), 68 deletions(-)
A branch based on 3.5-rc7 is available here (the __HVC patch is missing
from this branch because it depends on "ARM: opcodes: Facilitate custom
opcode injection" http://marc.info/?l=linux-arm-kernel&m=134442896128124):
git://xenbits.xen.org/people/sstabellini/linux-pvhvm.git 3.5-rc7-arm-3
Cheers,
Stefano
After a fair amount of dicking about I have managed to build a
cross-toolchain for arm64/aarch64 which installs on Ubuntu Quantal. It
even builds packages, although it has at least one notable limitation,
and I have no idea if it produces working code yet :-)
The main limitation is that the default library search paths have come
out as the old dpkg-cross ones, not the new multiarch ones. If someone
can tell me where to fix that it would be very helpful and I'll try
and put an updated one in the repo.
In the meantime you can work round it effectively using
/etc/dpkg/buildflags. (see wiki page below for details)
The cross-toolchain only supports C, C++ and fortran with no extras
like libssp, libmudflap etc, because there is no architecture support
for them yet.
I started a port page to keep track of things here:
http://wiki.debian.org/Arm64Port
And if you want to set up a quantal chroot and see if you can build
things, details are here:
https://wiki.linaro.org/Platform/DevPlatform/CrossCompile/arm64bootstrap
The bottom line is that you can debootstrap (or sbuild-createchroot) a
quantal chroot, add the bootstrap repo and do 'apt-get install
crossbuild-essential-arm64' and get a working cross-build environment.
The repo is here:
http://people.debian.org/~wookey/bootstrap.html
That should be useable for both dpkg-cross style bulding or
multiarch-style bulding.
The repo also contains updated dpkg-cross, multiarch python, multiarch
perl, updated dpkg with buildprofile/staging support, sbuild (although
in fact I think stock sbuild should work OK), and dose-builddebcheck
which can tell you what things are currently cross-buildable from
available binaries and sources. Most of that is pretty new and not
very well tested but 'it works for me'.
More arm64 packages will be along soon (dose3 currently indicates 40
more buildabale packages), but there is plenty still to fix for a full
debootstrap-able arm64 package set.
Anyone keen to help with bootstrapping the port is very welcome. There
will be a session about it at UDS next week, and a more general one on
distro bootrapping at the Armv8 minisummit a the co-located linaro
connect. And I'll be giving a talk about this stuff at Linxconf-Europe
in Barcelona the week after.
I think that's all for now. Enjoy, and tell me what breaks :-)
Wookey
--
Principal hats: Linaro, Emdebian, Wookware, Balloonboard, ARM
http://wookware.org/
Hey
(Cc:ing linaro-dev@ where we usually discuss technical stuff)
On Wed, Oct 31, 2012, sundar.subramaniyan(a)gmail.com wrote:
> This is great. Just tried the pre-compiled image and works like a charm.
> It took a little longer than two minutes though on my i3/4Gig machine.
> Haven't yet tried compiling anything yet but how do i get started with
> porting some libraries to armv8? Just compile with the toolchain and run?
Great!
This page gives some ideas on how to rebuild the filesystem and how to
fix some common issues:
https://wiki.linaro.org/HowTo/ARMv8/OpenEmbedded
Perhaps you want to try to build this or that software you care about,
or just try "bitbake world" to build as many things as possible and see
what breaks :-)
Cheers,
--
Loïc Minier