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

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

Great work everyone. :)

I assume this means that drivers/block/xen-blkback.c is the last major
milestone to be pushed upstream?


On 14 May 2011 00:36, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> wrote:
> 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 
> driver.
>  - 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 
> running
>   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 
> not.
>   (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 
> drivers
>      xen: ia64 build broken due to "xen: switch to new schedop hypercall by 
> default."
>      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 
> available.
>      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 
>      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 well.
>      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 
> tcobase.
> Zhang, Fengzhe (1):
>      xen/setup: Inhibit resource API from using System RAM E820 gaps as PCI 
> mem gaps.
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel

Kind regards,
Founder | Director
Orion Virtualisation Solutions | www.orionvm.com.au | Phone: 1300 56
99 52 | Mobile: 0428 754 846

Xen-users mailing list



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