[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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

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



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.