WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] Merge freefall.cl.cam.ac.uk:/auto/groups/xeno-xenod/BK/x

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] Merge freefall.cl.cam.ac.uk:/auto/groups/xeno-xenod/BK/xen-2.0-testing.bk
From: BitKeeper Bot <riel@xxxxxxxxxxx>
Date: Fri, 20 May 2005 22:18:38 +0000
Delivery-date: Fri, 20 May 2005 23:03:26 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: Xen Development List <xen-devel@xxxxxxxxxxxxxxxxxxx>
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
ChangeSet 1.1493, 2005/05/20 23:18:38+01:00, iap10@xxxxxxxxxxxxxxxxxxxxx

        Merge 
freefall.cl.cam.ac.uk:/auto/groups/xeno-xenod/BK/xen-2.0-testing.bk
        into freefall.cl.cam.ac.uk:/auto/groups/xeno-xenod/BK/xen-unstable.bk



 b/linux-2.4.30-xen-sparse/arch/xen/Makefile                     |    2 
 b/linux-2.4.30-xen-sparse/arch/xen/config.in                    |   16 
 b/linux-2.4.30-xen-sparse/arch/xen/defconfig-xen0               |    3 
 b/linux-2.4.30-xen-sparse/arch/xen/defconfig-xenU               |    2 
 b/linux-2.4.30-xen-sparse/arch/xen/drivers/blkif/frontend/vbd.c |   50 
 b/linux-2.4.30-xen-sparse/arch/xen/kernel/Makefile              |    4 
 b/linux-2.4.30-xen-sparse/arch/xen/kernel/head.S                |    4 
 b/linux-2.4.30-xen-sparse/arch/xen/kernel/ldt.c                 |    5 
 b/linux-2.4.30-xen-sparse/arch/xen/kernel/process.c             |   50 
 b/linux-2.4.30-xen-sparse/arch/xen/kernel/setup.c               |   31 
 b/linux-2.4.30-xen-sparse/arch/xen/kernel/traps.c               |   11 
 b/linux-2.4.30-xen-sparse/arch/xen/mm/fault.c                   |    4 
 b/linux-2.4.30-xen-sparse/arch/xen/mm/init.c                    |   13 
 b/linux-2.4.30-xen-sparse/arch/xen/mm/ioremap.c                 |   19 
 b/linux-2.4.30-xen-sparse/include/asm-xen/desc.h                |    8 
 b/linux-2.4.30-xen-sparse/include/asm-xen/fixmap.h              |    4 
 b/linux-2.4.30-xen-sparse/include/asm-xen/mmu_context.h         |   45 
 b/linux-2.4.30-xen-sparse/include/asm-xen/page.h                |   24 
 b/linux-2.4.30-xen-sparse/include/asm-xen/pgalloc.h             |   25 
 b/linux-2.4.30-xen-sparse/include/asm-xen/pgtable-2level.h      |   36 
 b/linux-2.4.30-xen-sparse/include/asm-xen/pgtable.h             |   53 
 b/linux-2.4.30-xen-sparse/include/asm-xen/system.h              |    2 
 b/linux-2.4.30-xen-sparse/mkbuildtree                           |   17 
 b/linux-2.4.30-xen-sparse/mm/highmem.c                          |    1 
 b/linux-2.4.30-xen-sparse/mm/memory.c                           |   36 
 b/linux-2.4.30-xen-sparse/mm/mremap.c                           |    2 
 b/linux-2.6.11-xen-sparse/drivers/xen/blkfront/block.h          |   11 
 linux-2.4.30-xen-sparse/fs/exec.c                               | 1179 
---------
 linux-2.4.30-xen-sparse/include/asm-xen/msr.h                   |  138 -
 linux-2.4.30-xen-sparse/mm/swapfile.c                           | 1269 
----------
 linux-2.4.30-xen-sparse/mm/vmalloc.c                            |  385 ---
 31 files changed, 201 insertions(+), 3248 deletions(-)


diff -Nru a/linux-2.4.30-xen-sparse/arch/xen/Makefile 
b/linux-2.4.30-xen-sparse/arch/xen/Makefile
--- a/linux-2.4.30-xen-sparse/arch/xen/Makefile 2005-05-20 19:04:06 -04:00
+++ b/linux-2.4.30-xen-sparse/arch/xen/Makefile 2005-05-20 19:04:06 -04:00
@@ -61,6 +61,7 @@
 SUBDIRS += arch/xen/drivers/evtchn
 SUBDIRS += arch/xen/drivers/blkif
 SUBDIRS += arch/xen/drivers/netif
+SUBDIRS += arch/xen/drivers/usbif
 SUBDIRS += arch/xen/drivers/balloon
 ifdef CONFIG_XEN_PRIVILEGED_GUEST
 SUBDIRS += arch/xen/drivers/dom0 
@@ -71,6 +72,7 @@
 CORE_FILES += arch/xen/drivers/console/drv.o
 DRIVERS += arch/xen/drivers/blkif/drv.o
 DRIVERS += arch/xen/drivers/netif/drv.o
+DRIVERS += arch/xen/drivers/usbif/drv.o
 ifdef CONFIG_XEN_PRIVILEGED_GUEST
 CORE_FILES += arch/xen/drivers/dom0/drv.o
 endif
diff -Nru a/linux-2.4.30-xen-sparse/arch/xen/config.in 
b/linux-2.4.30-xen-sparse/arch/xen/config.in
--- a/linux-2.4.30-xen-sparse/arch/xen/config.in        2005-05-20 19:04:06 
-04:00
+++ b/linux-2.4.30-xen-sparse/arch/xen/config.in        2005-05-20 19:04:06 
-04:00
@@ -16,14 +16,19 @@
 comment 'Xen'
 bool 'Support for privileged operations (domain 0)' CONFIG_XEN_PRIVILEGED_GUEST
 bool 'Device-driver domain (physical device access)' CONFIG_XEN_PHYSDEV_ACCESS
+if [ "$CONFIG_XEN_PHYSDEV_ACCESS" = "y" ]; then
+    bool 'USB-device backend driver' CONFIG_XEN_USB_BACKEND
+fi
 bool 'Scrub memory before freeing it to Xen' CONFIG_XEN_SCRUB_PAGES
 bool 'Network-device frontend driver' CONFIG_XEN_NETDEV_FRONTEND
 bool 'Block-device frontend driver' CONFIG_XEN_BLKDEV_FRONTEND
+bool 'Block-device uses grant tables' CONFIG_XEN_BLKDEV_GRANT
+bool 'USB-device frontend driver' CONFIG_XEN_USB_FRONTEND
 endmenu
 # The IBM S/390 patch needs this.
 define_bool CONFIG_NO_IDLE_HZ y
 
-if [ "$CONFIG_XEN_PHYSDEV_ACCESS" == "y" ]; then
+if [ "$CONFIG_XEN_PHYSDEV_ACCESS" = "y" ]; then
    define_bool CONFIG_FOREIGN_PAGES y
 else
    define_bool CONFIG_FOREIGN_PAGES n
@@ -262,7 +267,7 @@
 
 source drivers/char/Config.in
 
-if [ "$CONFIG_XEN_PHYSDEV_ACCESS" = "y" ]; then
+if [ "$CONFIG_XEN_PHYSDEV_ACCESS" = "y" -o "$CONFIG_XEN_USB_FRONTEND" = "y" ]; 
then
    source drivers/media/Config.in
 fi
 
@@ -295,9 +300,16 @@
       source drivers/sound/Config.in
    fi
    endmenu
+fi
 
+if [ "$CONFIG_XEN_PHYSDEV_ACCESS" = "y" -o "$CONFIG_XEN_USB_FRONTEND" = "y" ]; 
then
+   if [ "$CONFIG_XEN_USB_FRONTEND" = "y" -o "$CONFIG_XEN_USB_BACKEND" = "y" ]; 
then
+       define_bool CONFIG_USB y
+   fi
    source drivers/usb/Config.in
+fi
 
+if [ "$CONFIG_XEN_PHYSDEV_ACCESS" = "y" ]; then
    source net/bluetooth/Config.in
 fi
 
diff -Nru a/linux-2.4.30-xen-sparse/arch/xen/defconfig-xen0 
b/linux-2.4.30-xen-sparse/arch/xen/defconfig-xen0
--- a/linux-2.4.30-xen-sparse/arch/xen/defconfig-xen0   2005-05-20 19:04:06 
-04:00
+++ b/linux-2.4.30-xen-sparse/arch/xen/defconfig-xen0   2005-05-20 19:04:06 
-04:00
@@ -12,9 +12,12 @@
 #
 CONFIG_XEN_PRIVILEGED_GUEST=y
 CONFIG_XEN_PHYSDEV_ACCESS=y
+# CONFIG_XEN_USB_BACKEND is not set
 CONFIG_XEN_SCRUB_PAGES=y
 CONFIG_XEN_NETDEV_FRONTEND=y
 CONFIG_XEN_BLKDEV_FRONTEND=y
+CONFIG_XEN_BLKDEV_GRANT=y
+# CONFIG_XEN_USB_FRONTEND is not set
 CONFIG_NO_IDLE_HZ=y
 CONFIG_FOREIGN_PAGES=y
 
diff -Nru a/linux-2.4.30-xen-sparse/arch/xen/defconfig-xenU 
b/linux-2.4.30-xen-sparse/arch/xen/defconfig-xenU
--- a/linux-2.4.30-xen-sparse/arch/xen/defconfig-xenU   2005-05-20 19:04:06 
-04:00
+++ b/linux-2.4.30-xen-sparse/arch/xen/defconfig-xenU   2005-05-20 19:04:06 
-04:00
@@ -15,6 +15,8 @@
 CONFIG_XEN_SCRUB_PAGES=y
 CONFIG_XEN_NETDEV_FRONTEND=y
 CONFIG_XEN_BLKDEV_FRONTEND=y
+CONFIG_XEN_BLKDEV_GRANT=y
+# CONFIG_XEN_USB_FRONTEND is not set
 CONFIG_NO_IDLE_HZ=y
 # CONFIG_FOREIGN_PAGES is not set
 CONFIG_NETDEVICES=y
diff -Nru a/linux-2.4.30-xen-sparse/arch/xen/drivers/blkif/frontend/vbd.c 
b/linux-2.4.30-xen-sparse/arch/xen/drivers/blkif/frontend/vbd.c
--- a/linux-2.4.30-xen-sparse/arch/xen/drivers/blkif/frontend/vbd.c     
2005-05-20 19:04:07 -04:00
+++ b/linux-2.4.30-xen-sparse/arch/xen/drivers/blkif/frontend/vbd.c     
2005-05-20 19:04:07 -04:00
@@ -67,9 +67,14 @@
     memset(&req, 0, sizeof(req));
     req.operation   = BLKIF_OP_PROBE;
     req.nr_segments = 1;
+#ifdef CONFIG_XEN_BLKDEV_GRANT
+    blkif_control_probe_send(&req, &rsp,
+                             (unsigned long)(virt_to_machine(buf)));
+#else
     req.frame_and_sects[0] = virt_to_machine(buf) | 7;
 
     blkif_control_send(&req, &rsp);
+#endif
 
     if ( rsp.status <= 0 )
     {
@@ -114,12 +119,6 @@
     if ( (bd = bdget(device)) == NULL )
         return -1;
 
-    /*
-     * Update of partition info, and check of usage count, is protected
-     * by the per-block-device semaphore.
-     */
-    down(&bd->bd_sem);
-
     if ( ((disk = xldev_to_xldisk(device)) != NULL) && (disk->usage != 0) )
     {
         printk(KERN_ALERT "VBD update failed - in use [dev=%x]\n", device);
@@ -137,11 +136,6 @@
        major_name = XLSCSI_MAJOR_NAME;
        max_part   = XLSCSI_MAX_PART;
 
-    } else if (VDISK_VIRTUAL(xd->info)) {
-
-       major_name = XLVBD_MAJOR_NAME;
-       max_part   = XLVBD_MAX_PART;
-
     } else { 
 
         /* SMH: hmm - probably a CCISS driver or sim; assume CCISS for now */
@@ -248,8 +242,8 @@
         blk_size[major] = gd->sizes;
     }
 
-    if ( VDISK_READONLY(xd->info) )
-        set_device_ro(device, 1); 
+    if ( xd->info & VDISK_READONLY )
+        set_device_ro(device, 1);
 
     gd->flags[minor >> gd->minor_shift] |= GENHD_FL_XEN;
 
@@ -298,20 +292,16 @@
         gd->sizes[minor] = capacity>>(BLOCK_SIZE_BITS-9);
         
         /* Some final fix-ups depending on the device type */
-        switch ( VDISK_TYPE(xd->info) )
+        if ( xd->info & VDISK_REMOVABLE )
         { 
-        case VDISK_TYPE_CDROM:
-        case VDISK_TYPE_FLOPPY: 
-        case VDISK_TYPE_TAPE:
             gd->flags[minor >> gd->minor_shift] |= GENHD_FL_REMOVABLE; 
             printk(KERN_ALERT 
                    "Skipping partition check on %s /dev/%s\n", 
-                   VDISK_TYPE(xd->info)==VDISK_TYPE_CDROM ? "cdrom" : 
-                   (VDISK_TYPE(xd->info)==VDISK_TYPE_TAPE ? "tape" : 
-                    "floppy"), disk_name(gd, MINOR(device), buf)); 
-            break; 
-
-        case VDISK_TYPE_DISK:
+                   (xd->info & VDISK_CDROM) ? "cdrom" : "removable",
+                   disk_name(gd, MINOR(device), buf)); 
+        }
+        else
+        {
             /* Only check partitions on real discs (not virtual!). */
             if ( gd->flags[minor>>gd->minor_shift] & GENHD_FL_VIRT_PARTNS )
             {
@@ -321,17 +311,10 @@
                 break;
             }
             register_disk(gd, device, gd->max_p, &xlvbd_block_fops, capacity);
-            break; 
-
-        default:
-            printk(KERN_ALERT "XenoLinux: unknown device type %d\n", 
-                   VDISK_TYPE(xd->info)); 
-            break; 
         }
     }
 
  out:
-    up(&bd->bd_sem);
     bdput(bd);    
     return rc;
 }
@@ -356,12 +339,6 @@
     if ( (bd = bdget(device)) == NULL )
         return -1;
 
-    /*
-     * Update of partition info, and check of usage count, is protected
-     * by the per-block-device semaphore.
-     */
-    down(&bd->bd_sem);
-
     if ( ((gd = get_gendisk(device)) == NULL) ||
          ((disk = xldev_to_xldisk(device)) == NULL) )
         BUG();
@@ -423,7 +400,6 @@
     }
 
  out:
-    up(&bd->bd_sem);
     bdput(bd);
     return rc;
 }
diff -Nru a/linux-2.4.30-xen-sparse/arch/xen/kernel/Makefile 
b/linux-2.4.30-xen-sparse/arch/xen/kernel/Makefile
--- a/linux-2.4.30-xen-sparse/arch/xen/kernel/Makefile  2005-05-20 19:04:07 
-04:00
+++ b/linux-2.4.30-xen-sparse/arch/xen/kernel/Makefile  2005-05-20 19:04:07 
-04:00
@@ -6,12 +6,12 @@
 
 O_TARGET := kernel.o
 
-export-objs     := i386_ksyms.o skbuff.o ctrl_if.o
+export-objs     := i386_ksyms.o gnttab.o skbuff.o ctrl_if.o
 
 obj-y  := process.o semaphore.o signal.o entry.o traps.o irq.o  \
                ptrace.o ioport.o ldt.o setup.o time.o sys_i386.o \
                i386_ksyms.o i387.o evtchn.o ctrl_if.o pci-dma.o \
-               reboot.o fixup.o skbuff.o
+               reboot.o fixup.o gnttab.o skbuff.o
 
 ifdef CONFIG_PCI
 obj-y  += pci-i386.o pci-pc.o
diff -Nru a/linux-2.4.30-xen-sparse/arch/xen/kernel/head.S 
b/linux-2.4.30-xen-sparse/arch/xen/kernel/head.S
--- a/linux-2.4.30-xen-sparse/arch/xen/kernel/head.S    2005-05-20 19:04:06 
-04:00
+++ b/linux-2.4.30-xen-sparse/arch/xen/kernel/head.S    2005-05-20 19:04:06 
-04:00
@@ -1,6 +1,8 @@
 
 .section __xen_guest
-    .asciz "GUEST_OS=linux,GUEST_VER=2.4,XEN_VER=2.0,VIRT_BASE=0xC0000000"
+    .ascii "GUEST_OS=linux,GUEST_VER=2.4,XEN_VER=3.0,VIRT_BASE=0xC0000000"
+    .ascii ",LOADER=generic"
+    .byte  0
 
 .text
 #include <linux/config.h>
diff -Nru a/linux-2.4.30-xen-sparse/arch/xen/kernel/ldt.c 
b/linux-2.4.30-xen-sparse/arch/xen/kernel/ldt.c
--- a/linux-2.4.30-xen-sparse/arch/xen/kernel/ldt.c     2005-05-20 19:04:06 
-04:00

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog