[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] Merge freefall.cl.cam.ac.uk:/auto/groups/xeno/users/iap10/xeno-clone/xen-2.0-testing.bk
ChangeSet 1.1479, 2005/05/20 02:02:19+01:00, iap10@xxxxxxxxxxxxxxxxxxxxx Merge freefall.cl.cam.ac.uk:/auto/groups/xeno/users/iap10/xeno-clone/xen-2.0-testing.bk into freefall.cl.cam.ac.uk:/auto/groups/xeno/users/iap10/xeno-clone/xen-unstable.bk linux-2.4.29-xen-sparse/include/asm-xen/page.h | 24 ++++++---------- linux-2.4.29-xen-sparse/mkbuildtree | 15 +++++++--- linux-2.6.11-xen-sparse/drivers/xen/netfront/netfront.c | 19 +++--------- 3 files changed, 26 insertions(+), 32 deletions(-) diff -Nru a/linux-2.4.29-xen-sparse/include/asm-xen/page.h b/linux-2.4.29-xen-sparse/include/asm-xen/page.h --- a/linux-2.4.29-xen-sparse/include/asm-xen/page.h 2005-05-19 22:03:00 -04:00 +++ b/linux-2.4.29-xen-sparse/include/asm-xen/page.h 2005-05-19 22:03:00 -04:00 @@ -43,9 +43,9 @@ #define copy_user_page(to, from, vaddr) copy_page(to, from) /**** MACHINE <-> PHYSICAL CONVERSION MACROS ****/ -extern unsigned long *phys_to_machine_mapping; -#define pfn_to_mfn(_pfn) (phys_to_machine_mapping[(_pfn)]) -#define mfn_to_pfn(_mfn) (machine_to_phys_mapping[(_mfn)]) +extern unsigned int *phys_to_machine_mapping; +#define pfn_to_mfn(_pfn) ((unsigned long)(phys_to_machine_mapping[(_pfn)])) +#define mfn_to_pfn(_mfn) ((unsigned long)(machine_to_phys_mapping[(_mfn)])) static inline unsigned long phys_to_machine(unsigned long phys) { unsigned long machine = pfn_to_mfn(phys >> PAGE_SHIFT); @@ -86,22 +86,18 @@ static inline unsigned long pmd_val(pmd_t x) { unsigned long ret = x.pmd; - if ( (ret & 1) ) ret = machine_to_phys(ret); + if ( ret ) ret = machine_to_phys(ret) | 1; return ret; } +#define pmd_val_ma(x) ((x).pmd) #define pgd_val(x) ({ BUG(); (unsigned long)0; }) #define pgprot_val(x) ((x).pgprot) -static inline pte_t __pte(unsigned long x) -{ - if ( (x & 1) ) x = phys_to_machine(x); - return ((pte_t) { (x) }); -} -static inline pmd_t __pmd(unsigned long x) -{ - if ( (x & 1) ) x = phys_to_machine(x); - return ((pmd_t) { (x) }); -} +#define __pte(x) ({ unsigned long _x = (x); \ + (((_x)&1) ? ((pte_t) {phys_to_machine(_x)}) : ((pte_t) {(_x)})); }) +#define __pte_ma(x) ((pte_t) { (x) } ) +#define __pmd(x) ({ unsigned long _x = (x); \ + (((_x)&1) ? ((pmd_t) {phys_to_machine(_x)}) : ((pmd_t) {(_x)})); }) #define __pgd(x) ({ BUG(); (pgprot_t) { 0 }; }) #define __pgprot(x) ((pgprot_t) { (x) } ) diff -Nru a/linux-2.4.29-xen-sparse/mkbuildtree b/linux-2.4.29-xen-sparse/mkbuildtree --- a/linux-2.4.29-xen-sparse/mkbuildtree 2005-05-19 22:03:00 -04:00 +++ b/linux-2.4.29-xen-sparse/mkbuildtree 2005-05-19 22:03:00 -04:00 @@ -163,6 +163,7 @@ ln -sf ../asm-i386/mmx.h ln -sf ../asm-i386/mpspec.h ln -sf ../asm-i386/msgbuf.h +ln -sf ../asm-i386/msr.h ln -sf ../asm-i386/mtrr.h ln -sf ../asm-i386/namei.h ln -sf ../asm-i386/param.h @@ -208,9 +209,9 @@ ln -sf ../../${LINUX_26}/include/asm-xen/ctrl_if.h ln -sf ../../${LINUX_26}/include/asm-xen/evtchn.h ln -sf ../../${LINUX_26}/include/asm-xen/hypervisor.h -ln -sf ../../${LINUX_26}/include/asm-xen/multicall.h ln -sf ../../${LINUX_26}/include/asm-xen/xen_proc.h ln -sf ../../${LINUX_26}/include/asm-xen/asm-i386/synch_bitops.h +ln -sf ../../${LINUX_26}/include/asm-xen/asm-i386/hypercall.h mkdir -p linux-public && cd linux-public ln -sf ../../../${LINUX_26}/include/asm-xen/linux-public/privcmd.h @@ -229,8 +230,6 @@ ln -sf ../../../${LINUX_26}/arch/xen/kernel/fixup.c ln -sf ../../../${LINUX_26}/arch/xen/kernel/reboot.c ln -sf ../../../${LINUX_26}/arch/xen/kernel/skbuff.c -ln -sf ../../../${LINUX_26}/arch/xen/i386/kernel/ioport.c -ln -sf ../../../${LINUX_26}/arch/xen/i386/kernel/pci-dma.c cd ${AD}/arch/xen/lib ln -sf ../../i386/lib/checksum.S @@ -280,4 +279,12 @@ cd ${AD}/arch/xen/drivers/blkif/frontend ln -sf ../../../../../${LINUX_26}/drivers/xen/blkfront/blkfront.c - +cd ${AD}/arch/xen/drivers/usbif/frontend +ln -sf ../../../../../${LINUX_26}/drivers/xen/usbfront/usbfront.c main.c +ln -sf ../../../../../${LINUX_26}/drivers/xen/usbfront/xhci.h + +cd ${AD}/arch/xen/drivers/usbif/backend +ln -sf ../../../../../${LINUX_26}/drivers/xen/usbback/common.h +ln -sf ../../../../../${LINUX_26}/drivers/xen/usbback/control.c +ln -sf ../../../../../${LINUX_26}/drivers/xen/usbback/interface.c +ln -sf ../../../../../${LINUX_26}/drivers/xen/usbback/usbback.c main.c diff -Nru a/linux-2.6.11-xen-sparse/drivers/xen/netfront/netfront.c b/linux-2.6.11-xen-sparse/drivers/xen/netfront/netfront.c --- a/linux-2.6.11-xen-sparse/drivers/xen/netfront/netfront.c 2005-05-19 22:03:00 -04:00 +++ b/linux-2.6.11-xen-sparse/drivers/xen/netfront/netfront.c 2005-05-19 22:03:00 -04:00 @@ -51,6 +51,7 @@ #include <asm-xen/xen-public/io/netif.h> #include <asm-xen/balloon.h> #include <asm/page.h> +#include <asm/uaccess.h> #ifndef __GFP_NOWARN #define __GFP_NOWARN 0 @@ -394,19 +395,13 @@ = INVALID_P2M_ENTRY; rx_mcl[i].op = __HYPERVISOR_update_va_mapping; - rx_mcl[i].args[0] = (unsigned long)skb->head >> PAGE_SHIFT; + rx_mcl[i].args[0] = (unsigned long)skb->head; rx_mcl[i].args[1] = 0; rx_mcl[i].args[2] = 0; } - /* - * We may have allocated buffers which have entries outstanding in the page - * update queue -- make sure we flush those first! - */ - flush_page_update_queue(); - /* After all PTEs have been zapped we blow away stale TLB entries. */ - rx_mcl[i-1].args[2] = UVMF_FLUSH_TLB; + rx_mcl[i-1].args[2] = UVMF_TLB_FLUSH|UVMF_ALL; /* Give away a batch of pages. */ rx_mcl[i].op = __HYPERVISOR_dom_mem_op; @@ -586,7 +581,7 @@ mmu->val = __pa(skb->head) >> PAGE_SHIFT; mmu++; mcl->op = __HYPERVISOR_update_va_mapping; - mcl->args[0] = (unsigned long)skb->head >> PAGE_SHIFT; + mcl->args[0] = (unsigned long)skb->head; mcl->args[1] = (rx->addr & PAGE_MASK) | __PAGE_KERNEL; mcl->args[2] = 0; mcl++; @@ -606,6 +601,7 @@ mcl->args[0] = (unsigned long)rx_mmu; mcl->args[1] = mmu - rx_mmu; mcl->args[2] = 0; + mcl->args[3] = DOMID_SELF; mcl++; (void)HYPERVISOR_multicall(rx_mcl, mcl - rx_mcl); } @@ -1122,18 +1118,13 @@ switch (msg->subtype) { case CMSG_NETIF_FE_INTERFACE_STATUS: - if (msg->length != sizeof(netif_fe_interface_status_t)) - goto error; netif_interface_status((netif_fe_interface_status_t *) &msg->msg[0]); break; case CMSG_NETIF_FE_DRIVER_STATUS: - if (msg->length != sizeof(netif_fe_driver_status_t)) - goto error; netif_driver_status((netif_fe_driver_status_t *) &msg->msg[0]); break; - error: default: msg->length = 0; break; _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |