This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] Linux 2.6.39 - what Xen components went in.

To: xen-devel@xxxxxxxxxxxxxxxxxxx, xen-users@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] Linux 2.6.39 - what Xen components went in.
From: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
Date: Fri, 13 May 2011 10:36:15 -0400
Delivery-date: Fri, 13 May 2011 07:37:52 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.21 (2010-09-15)
Linus is probably going to release v2.6.39 soon-ish so I figured I would
update everybody on what went in (and a lot did).

The features that ultimately went in are:
 - Netback (drivers/net/xen-netback). This is a big accomplishment since it
   means that stock v2.6.39 has now a full stack to run guests (the QEMU qdisk
   can serve as blkback backend).
 - PVonHVM can now use PV spinlocks.
 - /dev/gntalloc, which is a driver that can be used from userspace to allocate
   pages to be shared with guests.
 - Xen Watchdog driver (/dev/watchdog) which has the same API as any watchdog 
 - 1-1 identity mapping in P2M. Allows us to automatically figure out if
   a page is for an I/O hole or not based on the E820 (means certain drivers 
work now)
 - IRQ code has been reworked to be dynamic so that we are not limited to 
   155 guests.
 - Making the balloon driver ready for memory hotplug patches and gntalloc.
 - Lots and lots of cleanup patches.

Bugs that were fixed:
 - Handling of guests events has become round-robin, hence fixing the starvation
   issue of later guests not having their services served.
 - Save and Restore works now.
 - Bootup crashes that occurred only if you had some CONFIG_ defined and some 
   (Which had been in the tree since .. oh 2002?). Finally resolved.
 - Usual merge window bugs. The resolution of some took way too long.
 - Bug fixes in xen-kbdfront, xen-netfront, xen-pcifront, and xen-blkfront.
 - Bug fixes also in Xen IRQ, Xen P2M, and in Xen E820 handling.
 - and many more...

The feature that was going and, but had to be reverted was:
 - Making the TTM layer use the DMA API. This would have allowed us to use the
   radeon/nouveau driver under Xen without trouble.

The full list of credits is as follow:

Alexander van Heukelum (1):
      x86, binutils, xen: Fix another wrong size directive

Dan Carpenter (2):
      xen-gntdev: return -EFAULT on copy_to_user failure
      xen-gntdev: unlock on error path in gntdev_mmap()

Daniel De Graaf (18):
      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
      Input: xen-kbdfront - add grant reference for shared page
      xen/p2m: Allocate p2m tracking pages on override

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

Dave Airlie (2):
      Merge branch 'stable/ttm.pci-api.v5' of 
git://git.kernel.org/.../konrad/xen into drm-next
      drm/radeon/nouveau: fix build regression on alpha due to Xen changes.

David S. Miller (1):
      Merge branch 'stable/backends' of git://git.kernel.org/.../konrad/xen

Dmitry Torokhov (1):
      Input: xen-kbdfront - move to drivers/input/misc

Eric Dumazet (1):
      xen: netfront: fix xennet_get_ethtool_stats()

H. Peter Anvin (1):
      x86, hibernate: Initialize mmu_cr4_features during boot

Ian Campbell (56):
      xen: events: mark cpu_evtchn_mask_p as __refdata
      xen p2m: annotate variable which appears unused
      xen: annotate functions which only call into __init at start of day
      xen: do not respond to unknown xenstore control requests
      xen: use new schedop interface for suspend
      xen: switch to new schedop hypercall by default.
      xen: suspend: use HYPERVISOR_suspend for PVHVM case instead of open coding
      xen: suspend: refactor cancellation flag into a structure
      xen: suspend: pass extra hypercall argument via suspend_info struct
      xen: suspend: add "arch" to pre/post suspend hooks
      xen: suspend: refactor non-arch specific pre/post suspend hooks
      xen: suspend: move arch specific pre/post suspend hooks into generic hooks
      xen: suspend: pull pre/post suspend hooks out into suspend_info
      xen: suspend: remove xen_hvm_suspend
      xen/irq: implement bind_interdomain_evtchn_to_irqhandler for backend 
      xen: ia64 build broken due to "xen: switch to new schedop hypercall by 
      xen: handled remapped IRQs when enabling a pcifront PCI device.
      xen:events: move find_unbound_irq inside CONFIG_PCI_MSI
      xen: events: add xen_allocate_irq_{dynamic, gsi} and xen_free_irq
      xen: events: allocate GSIs and dynamic IRQs from separate IRQ ranges.
      xen: events: do not free legacy IRQs
      xen: Fix compile error introduced by "switch to new irq_chip functions"
      xen/timer: Missing IRQF_NO_SUSPEND in timer code broke suspend.
      xen/p2m/m2p/gnttab: do not add failed grant maps to m2p override
      xen: gntdev: fix build warning
      xen: pci: only define xen_initdom_setup_msi_irqs if CONFIG_XEN_DOM0
      xen: events: do not leak IRQ from xen_allocate_pirq_msi when no pirq 
      xen: events: drop XEN_ALLOC_IRQ flag to xen_allocate_pirq_msi
      xen: events: return irq from xen_allocate_pirq_msi
      xen: pci: collapse apic_register_gsi_xen_hvm and xen_hvm_register_pirq
      xen: events: assume PHYSDEVOP_get_free_pirq exists
      xen: events: separate MSI PIRQ allocation from PIRQ binding to IRQ
      xen: events: refactor xen_create_msi_irq slightly
      xen: events: update pirq_to_irq in xen_create_msi_irq
      xen: events: push set_irq_msi down into xen_create_msi_irq
      xen: events: use xen_bind_pirq_msi_to_irq from xen_create_msi_irq
      xen: events: remove dom0 specific xen_create_msi_irq
      xen: events: Make last processed event channel a per-cpu variable.
      xen: events: separate two unrelated halves of if condition
      xen: events: simplify comment
      xen: events: fix xen_map_pirq_gsi error return
      xen: events: remove unused public functions
      xen: events: rename restore_cpu_pirqs -> restore_pirqs
      xen: events: refactor GSI pirq bindings functions
      xen: events: use per-cpu variable for cpu_evtchn_mask
      xen: events: turn irq_info constructors into initialiser functions
      xen: events: push setup of irq<->{evtchn,ipi,virq,pirq} maps into 
irq_info init functions
      xen: events: maintain a list of Xen interrupts
      xen: events: dynamically allocate irq info structures
      xen: events: remove use of nr_irqs as upper bound on number of pirqs
      xen: events: do not workaround too-small nr_irqs
      xen: events: propagate irq allocation failure instead of panicking
      xen: events: correct locking in xen_irq_from_pirq
      xen: netfront: ethtool stats fields should be unsigned long
      xen network backend driver
      MAINTAINERS: re-alphabetize Xen entries

Igor Mammedov (1):
      Input: xen-kbdfront - fix mouse getting stuck after save/restore

Jan Beulich (1):
      watchdog: Xen watchdog driver

Jeremy Fitzhardinge (1):
      xen: just completely disable XSAVE

John Stultz (1):
      RTC: Fix early irqs caused by calling rtc_set_alarm too early

Kazuhiro SUZUKI (1):
      xen: xenbus PM events support

Keir Fraser (3):
      xen: events: Clean up round-robin evtchn scan.
      xen: events: Make round-robin scan fairer by snapshotting each l2 word 
once only
      xen: events: Remove redundant clear of l2i at end of round-robin loop

Konrad Rzeszutek Wilk (31):
      [IA64] Add DMA_ERROR_CODE define.
      ttm: Introduce a placeholder for DMA (bus) addresses.
      ttm: Utilize the DMA API for pages that have TTM_PAGE_FLAG_DMA32 set.
      ttm: Expand (*populate) to support an array of DMA addresses.
      xen-pcifront: Sanity check the MSI/MSI-X values
      pci/xen: Use xen_allocate_pirq_msi instead of xen_allocate_pirq
      pci/xen: Cleanup: convert int** to int[]
      pci/xen: When free-ing MSI-X/MSI irq->desc also use generic code.
      radeon/ttm/PCIe: Use dma_addr if TTM has set it.
      nouveau/ttm/PCIe: Use dma_addr if TTM has set it.
      ttm: Include the 'struct dev' when using the DMA API.
      xen: Mark all initial reserved pages for the balloon as INVALID_P2M_ENTRY.
      Merge branch 'irq/for-xen' of git://git.kernel.org/.../tip/linux-2.6-tip 
into HEAD
      xen/irq: Cleanup up the pirq_to_irq for DomU PV PCI passthrough guests as 
      xen/hvc: Disable probe_irq_on/off from poking the hvc-console IRQ line.
      Merge branch 'stable/irq.rework' into stable/irq.cleanup
      Merge branch 'stable/pcifront-fixes' into stable/irq.cleanup
      xen/e820: Don't mark balloon memory as E820_UNUSABLE when running as 
guest and fix overflow.
      xen/mmu: Add the notion of identity (1-1) mapping.
      xen/mmu: Set _PAGE_IOMAP if PFN is an identity PFN.
      xen/mmu: WARN_ON when racing to swap middle leaf.
      xen/setup: Set identity mapping for non-RAM E820 and E820 gaps.
      xen/debugfs: Add 'p2m' file for printing out the P2M layout.
      xen/debug: WARN_ON when identity PFN has no _PAGE_IOMAP flag set.
      xen/m2p: No need to catch exceptions when we know that there is no RAM
      xen: events: Fix compile error if CONFIG_SMP is not defined.
      xen/balloon: Remove pr_info's and don't alter retry_count
      xen-balloon: Add interface to retrieve ballooned pages
      xen/debug: Don't be so verbose with WARN on 1-1 mapping errors.
      xen/mmu: Add workaround "x86-64, mm: Put early page table high"
      Revert "xen/mmu: Add workaround "x86-64, mm: Put early page table high""

Nicolas Kaiser (1):
      xen: events: fix error checks in bind_*_to_irqhandler()

Olaf Hering (1):
      Input: xen-kbdfront - advertise either absolute or relative coordinates

Owen Smith (1):
      xen: Union the blkif_request request specific fields

Rafael J. Wysocki (1):
      PM: Add missing syscore_suspend() and syscore_resume() calls

Randy Dunlap (1):
      xen: fix p2m section mismatches

Scott Rixner (1):
      xen: events: Process event channels notifications in round-robin order.

Sedat Dilek (1):
      x86/mm: Fix section mismatch derived from native_pagetable_reserve()

Shan Haitao (1):
      xen: Allow PV-OPS kernel to detect whether XSAVE is supported

Shriram Rajagopalan (1):
      xen: use freeze/restore/thaw PM events for suspend/resume/chkpt

Stefano Stabellini (15):
      xen: change xen/[gntdev/gntalloc] to default m
      xen: no need to delay xen_setup_shutdown_event for hvm guests anymore
      xen: do not use xen_info on HVM, set pv_info name to "Xen HVM"
      xen-blkfront: handle Xen major numbers other than XENVBD
      xen: make the ballon driver work for hvm domains
      xen: PV on HVM: support PV spinlocks and IPIs
      xen: fix compile issue if XEN is enabled but XEN_PVHVM is disabled
      PCI hotplug: acpiphp: set current_state to D0 in register_slot
      xen/m2p: Check whether the MFN has IDENTITY_FRAME bit set..
      xen: set max_pfn_mapped to the last pfn mapped
      xen: update mask_rw_pte after kernel page tables init changes
      xen: do not create the extra e820 region at an addr lower than 4G
      xen: mask_rw_pte: do not apply the early_ioremap checks on x86_32
      xen: mask_rw_pte mark RO all pagetable pages up to pgt_buf_top
      x86,xen: introduce x86_init.mapping.pagetable_reserve

Tejun Heo (1):
      xen-pcifront: don't use flush_scheduled_work()

Thomas Gleixner (10):
      Merge branch 'irq/for-xen' into irq/core
      xen: Remove stale irq_chip.end
      xen: Switch to new irq_chip functions
      xen: Use IRQF_FORCE_RESUME
      ia64: xen: Use irq accessor functions
      xen: Cleanup genirq namespace
      xen: Use new irq_move functions
      xen: Convert genirq namespace
      xen: Use new irq_move functions
      x86: apb_timer: Fixup genirq fallout

Uwe Kleine-König (1):
      kbuild: reenable section mismatch analysis

Yinghai Lu (2):
      x86: Cleanup highmap after brk is concluded
      watchdog: sp5100_tco.c: Check if firmware has set correct value in 

Zhang, Fengzhe (1):
      xen/setup: Inhibit resource API from using System RAM E820 gaps as PCI 
mem gaps.

Xen-devel mailing list