[GIT PULL] (xen) stable/hvc-console, stable/backends,stable/gntalloc.v6, and stable/balloon for 2.6.39

From: Konrad Rzeszutek Wilk
Date: Wed Mar 16 2011 - 12:05:41 EST


Hey Linus,

Please pull these four branches:

git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen.git stable/hvc-console stable/backends stable/gntalloc.v6 stable/balloon

Or you can take #for-2.6.39/drivers branch which has these four merges
for your convience (there are no conflicts).

The best way to do this pull is to do it in two stages:

1). git pull git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen.git stable/hvc-console
2) git pull git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen.git stable/backends stable/gntalloc.v6 stable/balloon

Otherwise you would get this strange error:
Simple merge did not work, trying automatic merge.
ERROR: drivers/char/hvc_xen.c: Not handling case 3740e327f1802f0e63bd1cdffba4107cbbf55c7e -> -> c35f1a73bc8bca281ccea8ee7e87eb6b534b0b11

which is b/c the hvc-xen code changed its location.

Back to the description.

#stable/hvc-console is based off v2.6.38-rc8 (a5abba989deceb731047425812d268daf7536575)

.. and has a bug-fix for a rare race condition when using a serial output with
Xen hypervisor.

#stable/backends is based off v2.6.38-rc2 (1bae4ce27c9c90344f23c65ea6966c50ffeae2f5)

.. provides an mechanism for backend drivers to request an IRQ to listen when
the frontend has important data to be ingested. Most if not all of the Xen
backends use this and those backends are going through the review cycle now
so this lays out the infrastructure for them.

#stable/gntalloc.v6 is based off v2.6.38-rc4 (100b33c8bd8a3235fd0b7948338d6cbb3db3c63d)

.. and provides a driver (gntalloc) for Xen guests to communicate with each
other via pages. The driver sets up mmap-based pages via ioctls which allows those pages
to be shared with another guest. There is also a notification system built in
so that the applications don't have to pull the page constantly to find out what
is new. There are multiple use cases, but the most common is to for one guest
to own a frame-buffer while other ones can get access to it if they are running
in "foreground".

#stable/balloon is based off #stable/gntalloc.v6

.. and provides a cleanup of the balloon driver, and also two extra API calls to get/put
pages. That get/put mechanism is used by the gntdev driver for it to get and put pages
that are to be shared with another domain. While it is a nice pool type interface it also
fixes a work-around for broken versions of Xen hypervisors that would "forget" to give us
the shared page back to our domain.

The diffstat:

arch/x86/xen/mmu.c | 3 +-
drivers/tty/hvc/hvc_xen.c | 2 +
drivers/xen/Kconfig | 10 +
drivers/xen/Makefile | 6 +-
drivers/xen/balloon.c | 359 +++++++++++-------------------
drivers/xen/events.c | 38 +++
drivers/xen/gntalloc.c | 545 +++++++++++++++++++++++++++++++++++++++++++++
drivers/xen/gntdev.c | 382 +++++++++++++++++++------------
drivers/xen/grant-table.c | 10 +
drivers/xen/xen-balloon.c | 256 +++++++++++++++++++++
include/xen/balloon.h | 25 ++
include/xen/events.h | 6 +
include/xen/gntalloc.h | 82 +++++++
include/xen/gntdev.h | 31 +++
14 files changed, 1369 insertions(+), 386 deletions(-)

Daniel De Graaf (16):
xen-gntdev: Change page limit to be global instead of per-open
xen-gntdev: Use find_vma rather than iterating our vma list manually
xen-gntdev: Add reference counting to maps
xen-gntdev: Support mapping in HVM domains
xen-gntalloc: Userspace grant allocation driver
xen/gntalloc,gntdev: Add unmap notify ioctl
xen-gntdev: Fix memory leak when mmap fails
xen-gntdev: Fix unmap notify on PV domains
xen-gntdev: Use map->vma for checking map validity
xen-gntdev: Avoid unmapping ranges twice
xen-gntdev: Avoid double-mapping memory
xen-gntdev: prevent using UNMAP_NOTIFY_CLEAR_BYTE on read-only mappings
xen-gntdev: Fix incorrect use of zero handle
xen-gntdev: Add cast to pointer
xen-balloon: Move core balloon functionality out of module
xen-gntdev: Use ballooned pages for grant mappings

Daniel Kiper (3):
xen/balloon: Removal of driver_pages
xen/balloon: Migration from mod_timer() to schedule_delayed_work()
xen/balloon: Protect against CPU exhaust by event/x process

Ian Campbell (3):
xen/irq: implement bind_interdomain_evtchn_to_irqhandler for backend drivers
xen/p2m/m2p/gnttab: do not add failed grant maps to m2p override
xen: gntdev: fix build warning

Konrad Rzeszutek Wilk (3):
xen/hvc: Disable probe_irq_on/off from poking the hvc-console IRQ line.
xen/balloon: Remove pr_info's and don't alter retry_count
xen-balloon: Add interface to retrieve ballooned pages

Stefano Stabellini (1):
xen: change xen/[gntdev/gntalloc] to default m

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/