[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


 


Rackspace

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