From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joseph Glanville Subject: Re: [Xen-devel] Linux 3.0-rc1 - what Xen components went in. Date: Wed, 1 Jun 2011 16:15:13 +1000 Message-ID: References: <20110531161224.GA1340@dumpdata.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <20110531161224.GA1340@dumpdata.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-users-bounces@lists.xensource.com Errors-To: xen-users-bounces@lists.xensource.com To: Konrad Rzeszutek Wilk Cc: xen-devel@lists.xensource.com, xen-users@lists.xensource.com List-Id: xen-devel@lists.xenproject.org Wow, excellent work! Congrats to the Xen devel team. :) Joseph. On 1 June 2011 02:12, Konrad Rzeszutek Wilk wrote: > 3.0-rc1 (2.6.40-rc1) is out and while in the past it took us all the way = up to > rc7 to have it working under Xen, this is not case with this release! > > And my VP summarized this event in this blog: > http://blogs.oracle.com/wim/entry/linux_mainline_contains_all_the > > But if you want to get more technical: > > Features that went in: > =C2=A0- cleancache shim to Xen Transcendent Memory. In other words, you c= an use tmem > =C2=A0 (not yet in, but as an outside tree), or zcache (in the staging di= rectory) to > =C2=A0 speed up your I/Os. Details on how to use it: > =C2=A0 http://oss.oracle.com/projects/tmem/dist/documentation/internals/l= inuxpatch > > =C2=A0- The usage of VM_IO to distinguish between pages that are "System = RAM" or > =C2=A0 "PCI" is slowly going away. While it worked in the past it also br= ought us > =C2=A0 lots of bugs that took time to get right. The new mechanism, based= on the P2M > =C2=A0 1-1 mapping bypasses the need for the VM_IO flag. Still have some = more work.. > > =C2=A0- Updates to the backend code so that Xen PCI backend can easily ru= n against > =C2=A0 the kernel (Note: xen pciback has not yet been merged) > > =C2=A0- Lots of cleanups done in the general code and in the balloon code= . The latter preps > =C2=A0 the code base for using the more generic memory hotplugging. > > =C2=A0- IRQ rework. In the past our IRQ code was bit of dance. We had to = distinguish between > =C2=A0 the different types of interrupts (think edge vs level) coming fro= m the Xen hypervisor. > =C2=A0 Except that we weren't doing it cleanly and were overloading the c= hip functions that dealt > =C2=A0 with this and causing us to do do some extra hack^H^H^H fancy unma= sking/masking. Gone! > > =C2=A0- Xen block backend. Yes, it is in! > > Bugs: > =C2=A0- Only four of them and they are also in the 2.6.39.1 stable tree. > > That is it... rc1 is starting and please report any bugs to the mailing l= ist. > > The shortlog is as follow: > > Chris Lalancette (1): > =C2=A0 =C2=A0 =C2=A0xen/blkback: Flush blkback data when connecting. > > Dan Magenheimer (1): > =C2=A0 =C2=A0 =C2=A0xen: cleancache shim to Xen Transcendent Memory > > Daniel De Graaf (1): > =C2=A0 =C2=A0 =C2=A0xen/gntdev,gntalloc: Remove unneeded VM flags > > Daniel Kiper (13): > =C2=A0 =C2=A0 =C2=A0xen/balloon: Use PageHighMem() for high memory page d= etection > =C2=A0 =C2=A0 =C2=A0xen/balloon: Simplify HVM integration > =C2=A0 =C2=A0 =C2=A0xen/balloon: Clarify credit calculation > =C2=A0 =C2=A0 =C2=A0xen/balloon: Move dec_totalhigh_pages() from __balloo= n_append() to balloon_append() > =C2=A0 =C2=A0 =C2=A0xen/setup: Fix for incorrect xen_extra_mem_start init= ialization under 32-bit > =C2=A0 =C2=A0 =C2=A0arch/x86/xen/irq: Cleanup code/data sections definiti= ons > =C2=A0 =C2=A0 =C2=A0arch/x86/xen/enlighten: Cleanup code/data sections de= finitions > =C2=A0 =C2=A0 =C2=A0arch/x86/xen/setup: Cleanup code/data sections defini= tions > =C2=A0 =C2=A0 =C2=A0arch/x86/xen/mmu: Cleanup code/data sections definiti= ons > =C2=A0 =C2=A0 =C2=A0arch/x86/xen/xen-ops: Cleanup code/data sections defi= nitions > =C2=A0 =C2=A0 =C2=A0arch/x86/xen/time: Cleanup code/data sections definit= ions > =C2=A0 =C2=A0 =C2=A0arch/x86/xen/smp: Cleanup code/data sections definiti= ons > =C2=A0 =C2=A0 =C2=A0drivers/xen/sys-hypervisor: Cleanup code/data section= s definitions > > Eric Dumazet (1): > =C2=A0 =C2=A0 =C2=A0xen: netfront: fix declaration order > > > Ian Campbell (6): > =C2=A0 =C2=A0 =C2=A0xen: netfront: assume all hw features are available u= ntil backend connection setup > =C2=A0 =C2=A0 =C2=A0Signed bit field; int have_hotplug_status_watch:1 > =C2=A0 =C2=A0 =C2=A0xen: rename blkbk module xen-blkback. > =C2=A0 =C2=A0 =C2=A0xen: tidy up whitespace in drivers/xen/Makefile > =C2=A0 =C2=A0 =C2=A0xen: netback: use __CONST_RING_SIZE not __RING_SIZE > =C2=A0 =C2=A0 =C2=A0xen: netfront: hold RTNL when updating features. > > Jan Beulich (2): > =C2=A0 =C2=A0 =C2=A0xen/blkback: simplify address translations > =C2=A0 =C2=A0 =C2=A0xen/blkback: don't fail empty barrier requests > > Jeremy Fitzhardinge (14): > =C2=A0 =C2=A0 =C2=A0xen-blkback-porting > =C2=A0 =C2=A0 =C2=A0xen/blkback: don't include xen/evtchn.h > =C2=A0 =C2=A0 =C2=A0xen/blkback: deal with hardsect_size to logical_block= _size rename > =C2=A0 =C2=A0 =C2=A0xen/blkback: remove spurious debug output noise > =C2=A0 =C2=A0 =C2=A0xen/blkback: little cleanups > =C2=A0 =C2=A0 =C2=A0xen/blkback: use drv_get/set_drvdata rather than dire= ctly accessing driver_data. > =C2=A0 =C2=A0 =C2=A0xen/blkback: add accessor for xenbus backend device > =C2=A0 =C2=A0 =C2=A0xen: drop all the special iomap pte paths. > =C2=A0 =C2=A0 =C2=A0xen: use mmu_update for xen_set_pte_at() > =C2=A0 =C2=A0 =C2=A0xen: condense everything onto xen_set_pte > =C2=A0 =C2=A0 =C2=A0xen: make a pile of mmu pvop functions static > =C2=A0 =C2=A0 =C2=A0xen: use normal virt_to_machine for ptes > =C2=A0 =C2=A0 =C2=A0xen/mmu: remove all ad-hoc stats stuff > =C2=A0 =C2=A0 =C2=A0xen: fix compile without CONFIG_XEN_DEBUG_FS > > John Stultz (1): > =C2=A0 =C2=A0 =C2=A0x86: Convert remaining x86 clocksources to clocksourc= e_register_hz/khz > > K. Y. Srinivasan (3): > =C2=A0 =C2=A0 =C2=A0xen/blkback: Propagate changed size of VBDs > =C2=A0 =C2=A0 =C2=A0xen/blkback: Print additional information when a vbd = is resized. > > > Keir Fraser (1): > =C2=A0 =C2=A0 =C2=A0blkback: Fix CVE-2010-3699 > > Konrad Rzeszutek Wilk (68): > =C2=A0 =C2=A0 =C2=A0xen/pci: Add xen_[find|register|unregister]_device_do= main_owner functions. > =C2=A0 =C2=A0 =C2=A0xen/irq: Check if the PCI device is owned by a domain= different than DOMID_SELF. > =C2=A0 =C2=A0 =C2=A0xen/irq: Add support to check if IRQ line is shared w= ith other domains. > =C2=A0 =C2=A0 =C2=A0xen/irq: Export 'xen_pirq_from_irq' function. > =C2=A0 =C2=A0 =C2=A0xen/irq: The Xen hypervisor cleans up the PIRQs if th= e other domain forgot. > =C2=A0 =C2=A0 =C2=A0xen: add blkback support > =C2=A0 =C2=A0 =C2=A0Fix compile warnings: ignoring return value of 'xenbu= s_register_backend' .. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Replace WRITE_BARRIER with (REQ_FLUSH | = REQ_FUA) > =C2=A0 =C2=A0 =C2=A0xen/blkback: Update to use blkdev_get_by_dev instead = of open_by_devnum. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Move global/static variables into struct= xen_blkbk. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Union the blkif_request request specific= fields > =C2=A0 =C2=A0 =C2=A0xen/blkback: Use 'vzalloc' for page arrays and pre-al= locate pages. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Utilize the M2P override mechanism for G= NTMAP_host_map > =C2=A0 =C2=A0 =C2=A0xen/blkback: Use kzalloc's, and GFP_KERNEL for data s= tructures. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Add some comments. > =C2=A0 =C2=A0 =C2=A0xen/blkback: blkif->struct blkif_st > =C2=A0 =C2=A0 =C2=A0xen/blkback: Fix checkpatch warnings in vbd.c > =C2=A0 =C2=A0 =C2=A0xen/blkback: Fix interface.c checkpatch warnings .. e= xcept > =C2=A0 =C2=A0 =C2=A0xen/blkback: Fix checkpatch warnings of xenbus.c > =C2=A0 =C2=A0 =C2=A0xen/blkback: Fix checkpatch warnings in blkback.c > =C2=A0 =C2=A0 =C2=A0xen/blkback: remove per-queue plugging > =C2=A0 =C2=A0 =C2=A0xen/blkback: Seperate the bio allocation and the bio = submission. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Cleanup move the code a bit around. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Shuffle code around (vbd_translate moved= higher). > =C2=A0 =C2=A0 =C2=A0xen/blkback: Move the check for misaligned I/O higher= . > =C2=A0 =C2=A0 =C2=A0xen/blkback: Change fast_flush_area to xen_blkbk_unma= p, and tweak xen_blk_map_seg. > =C2=A0 =C2=A0 =C2=A0xen/p2m/m2p/gnttab: Support GNTMAP_host_map in the M2= P override. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Move the check for misaligned I/O once m= ore. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Get the 'requeust_queue' properly. > =C2=A0 =C2=A0 =C2=A0block, xen/blkback: remove blk_[get|put]_queue calls. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Move it from drivers/xen to drivers/bloc= k > =C2=A0 =C2=A0 =C2=A0xen/p2m: Add EXPORT_SYMBOL_GPL to the M2P override fu= nctions. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Squash vbd.c,interface.c in blkback.c an= d xenbus.c respectivly. > =C2=A0 =C2=A0 =C2=A0xen-blkback: Remove from the copyright notice the add= ress. > =C2=A0 =C2=A0 =C2=A0xen-blkback: Inline some of the functions that were m= oved from vbd/interface.c > =C2=A0 =C2=A0 =C2=A0xen/blkback: Prefix exposed functions with xen_ > =C2=A0 =C2=A0 =C2=A0xen/blkback: Move the plugging/unplugging to a higher= level. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Stick REQ_SYNC on WRITEs to deal with CF= Q I/O scheduler. > =C2=A0 =C2=A0 =C2=A0Revert "xen/blkback: Move the plugging/unplugging to = a higher level." > =C2=A0 =C2=A0 =C2=A0xen-blkfront: Provide for 'feature-flush-cache' the B= LKIF_OP_WRITE_FLUSH_CACHE operation. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Add support for BLKIF_OP_FLUSH_DISKCACHE= and drop BLKIF_OP_WRITE_BARRIER. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Squash the checking for operation into d= ispatch_rw_block_io > =C2=A0 =C2=A0 =C2=A0xen/blkback: Fix up some of the comments. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Fixed up comments and converted spaces t= o tabs. > =C2=A0 =C2=A0 =C2=A0xen-blkfront: Provide for 'feature-flush-cache' the B= LKIF_OP_WRITE_FLUSH_CACHE operation. > =C2=A0 =C2=A0 =C2=A0xen-blkfront: Introduce BLKIF_OP_FLUSH_DISKCACHE supp= ort. > =C2=A0 =C2=A0 =C2=A0xen/setup: Ignore E820_UNUSABLE when setting 1-1 mapp= ings. > =C2=A0 =C2=A0 =C2=A0xen/p2m: Create entries in the P2M_MFN trees's to tra= ck 1-1 mappings > =C2=A0 =C2=A0 =C2=A0xen/blkback: Change printk/DPRINTK to pr_.. type vari= ant. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Make the DPRINTK uniform. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Use the DRV_PFX in the pr_.. macros. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Removing the debug_lvl option. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Move blkif_get_x86_[32|64]_req to common= .h in block/xen-blkback dir. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Fix spelling mistakes. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Flesh out the description in the Kconfig= . > =C2=A0 =C2=A0 =C2=A0xen/blkback: Fix checkpatch.pl warnings about more th= an 80 lines. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Checkpatch.pl recommend against multiple= assigments. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Fixing some more of the cleanpatch.pl wa= rnings. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Move include/xen/blkif.h into drivers/bl= ock/xen-blkback/common.h > =C2=A0 =C2=A0 =C2=A0xen/blkback: Remove the unused typedefs. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Change structure name blkif_st to xen_bl= kif. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Prefix 'vbd' with 'xen' in structs and f= unctions. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Add the prefix XEN in the common.h. > =C2=A0 =C2=A0 =C2=A0xen/blkback: if log_stats is enabled print out the da= ta. > =C2=A0 =C2=A0 =C2=A0xen/blkback: Align the tabs on the structure. > =C2=A0 =C2=A0 =C2=A0xen/pci: Fix compiler error when CONFIG_XEN_PRIVILEGE= D_GUEST is not set. > =C2=A0 =C2=A0 =C2=A0xen/p2m/m2p/gnttab: Support GNTMAP_host_map in the M2= P override. > =C2=A0 =C2=A0 =C2=A0xen/p2m: Add EXPORT_SYMBOL_GPL to the M2P override fu= nctions. > > Laszlo Ersek (1): > =C2=A0 =C2=A0 =C2=A0xen/blkback: fix xenbus_transaction_start() hang caus= ed by double xenbus_transaction_end() > > Marek Marczykowski (1): > =C2=A0 =C2=A0 =C2=A0xen-blkfront: fix data size for xenbus_gather in blkf= ront_connect > > Micha=C5=82 Miros=C5=82aw (3): > =C2=A0 =C2=A0 =C2=A0net: convert xen-netfront to hw_features > =C2=A0 =C2=A0 =C2=A0net: netxen: convert to hw_features > =C2=A0 =C2=A0 =C2=A0net: xen-netback: convert to hw_features > > Stefano Stabellini (1): > =C2=A0 =C2=A0 =C2=A0xen: do not clear and mask evtchns in __xen_evtchn_do= _upcall > > Tian, Kevin (3): > =C2=A0 =C2=A0 =C2=A0xen mmu: fix a race window causing leave_mm BUG() > =C2=A0 =C2=A0 =C2=A0x86: Skip migrating IRQF_PER_CPU irqs in fixup_irqs() > =C2=A0 =C2=A0 =C2=A0x86: Don't unmask disabled irqs when migrating them > > Tom Goetz (1): > =C2=A0 =C2=A0 =C2=A0xen/blkback: Fix the WRITE_BARRIER > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel > --=20 Kind regards, Joseph. Founder | Director Orion Virtualisation Solutions=C2=A0|=C2=A0www.orionvm.com.au=C2=A0| Phone:= 1300 56 99 52 | Mobile: 0428 754 846