ia64/xen-unstable

changeset 497:0f3d9fcd2206

bitkeeper revision 1.267.1.1 (3f055a3dM7rMyFG8Br1OZcHwx7-wsA)

Misc. bug fixes.
author sos22@labyrinth.cl.cam.ac.uk
date Fri Jul 04 10:43:09 2003 +0000 (2003-07-04)
parents 7363ede764ed
children f18ad5c14d58
files .rootkeys BitKeeper/etc/ignore xen/common/domain.c xen/drivers/block/xen_block.c xen/drivers/block/xen_physdisk.c xen/include/xeno/physdisk.h
line diff
     1.1 --- a/.rootkeys	Fri Jul 04 10:27:28 2003 +0000
     1.2 +++ b/.rootkeys	Fri Jul 04 10:43:09 2003 +0000
     1.3 @@ -454,6 +454,7 @@ 3ddb79c2Fg44_PBPVxHSC0gTOMq4Ow xen/inclu
     1.4  3ddb79c0MOVXq8qZDQRGb6z64_xAwg xen/include/xeno/pci_ids.h
     1.5  3e54c38dlSCVdyVM4PKcrSfzLLxWUQ xen/include/xeno/perfc.h
     1.6  3e54c38de9SUSYSAwxDf_DwkpAnQFA xen/include/xeno/perfc_defn.h
     1.7 +3f055a3dwldYR102YcSuBaxIf9t3Jw xen/include/xeno/physdisk.h
     1.8  3ddb79c04nQVR3EYM5L4zxDV_MCo1g xen/include/xeno/prefetch.h
     1.9  3e4540ccU1sgCx8seIMGlahmMfv7yQ xen/include/xeno/reboot.h
    1.10  3ddb79c0LzqqS0LhAQ50ekgj4oGl7Q xen/include/xeno/sched.h
     2.1 --- a/BitKeeper/etc/ignore	Fri Jul 04 10:27:28 2003 +0000
     2.2 +++ b/BitKeeper/etc/ignore	Fri Jul 04 10:43:09 2003 +0000
     2.3 @@ -419,3 +419,4 @@ xen/tools/figlet/figlet
     2.4  xenolinux-2.4.16-sparse/arch/xeno/drivers/block/Makefile.orig
     2.5  xenolinux-2.4.16-sparse/arch/xeno/drivers/block/block.c.orig
     2.6  xenolinux-2.4.16-sparse/scripts/kconfig.tk
     2.7 +xen/include/xeno/physdisk.h~
     3.1 --- a/xen/common/domain.c	Fri Jul 04 10:27:28 2003 +0000
     3.2 +++ b/xen/common/domain.c	Fri Jul 04 10:43:09 2003 +0000
     3.3 @@ -16,6 +16,8 @@
     3.4  #include <asm/msr.h>
     3.5  #include <xeno/blkdev.h>
     3.6  #include <xeno/console.h>
     3.7 +#include <hypervisor-ifs/block.h>
     3.8 +#include <xeno/physdisk.h>
     3.9  
    3.10  /*
    3.11   * NB. No ring-3 access in initial guestOS pagetables. Note that we allow
     4.1 --- a/xen/drivers/block/xen_block.c	Fri Jul 04 10:27:28 2003 +0000
     4.2 +++ b/xen/drivers/block/xen_block.c	Fri Jul 04 10:43:09 2003 +0000
     4.3 @@ -18,6 +18,7 @@
     4.4  #include <xeno/interrupt.h>
     4.5  #include <xeno/segment.h>
     4.6  #include <xeno/slab.h>
     4.7 +#include <xeno/physdisk.h>
     4.8  
     4.9  #if 0
    4.10  #define DPRINTK(_f, _a...) printk( _f , ## _a )
    4.11 @@ -676,7 +677,7 @@ static void dispatch_rw_block_io(struct 
    4.12  	        goto bad_descriptor;
    4.13  	    }
    4.14  	    if (p->domain != 0 &&
    4.15 -		!xen_physdisk_access_okay(&phys_seg, p, operation)) {
    4.16 +		!xen_physdisk_access_okay(&phys_seg[nr_psegs], p, operation)) {
    4.17  	      DPRINTK("access denied\n");
    4.18  	      /* XXX not quite right, but close enough. */
    4.19  	      goto bad_descriptor;
     5.1 --- a/xen/drivers/block/xen_physdisk.c	Fri Jul 04 10:27:28 2003 +0000
     5.2 +++ b/xen/drivers/block/xen_physdisk.c	Fri Jul 04 10:43:09 2003 +0000
     5.3 @@ -6,6 +6,7 @@
     5.4  #include <asm/domain_page.h>
     5.5  #include <asm/io.h>
     5.6  #include <xeno/segment.h>
     5.7 +#include <xeno/physdisk.h>
     5.8  
     5.9  #define MAX(a,b) ((a) > (b) ? (a) : (b))
    5.10  
    5.11 @@ -84,7 +85,7 @@ static void xen_physdisk_revoke_access(u
    5.12  	ace_end <= start_sect)
    5.13        continue;
    5.14      
    5.15 -    DPRINTK("Killing ace [%x, %x) against kill zone [%x, %x)\n",
    5.16 +    DPRINTK("Killing ace [%lx, %lx) against kill zone [%lx, %lx)\n",
    5.17  	    cur_ace->start_sect, ace_end, start_sect, kill_zone_end);
    5.18  
    5.19      if (cur_ace->start_sect >= start_sect &&
    5.20 @@ -234,7 +235,7 @@ int xen_physdisk_access_okay(phys_seg_t 
    5.21    struct physdisk_ace *cur_ace;
    5.22    unsigned long sect;
    5.23  
    5.24 -  DPRINTK("Checking access for domain %d, start sect %d, length %d.\n",
    5.25 +  DPRINTK("Checking access for domain %d, start sect 0x%lx, length 0x%x.\n",
    5.26  	  p->domain, pseg->sector_number, pseg->nr_sects);
    5.27  
    5.28    for (sect = pseg->sector_number;
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/xen/include/xeno/physdisk.h	Fri Jul 04 10:43:09 2003 +0000
     6.3 @@ -0,0 +1,13 @@
     6.4 +#ifndef PHYSDISK_ACES__
     6.5 +#define PHYSDISK_ACES__
     6.6 +
     6.7 +struct task_struct;
     6.8 +
     6.9 +void destroy_physdisk_aces(struct task_struct *p);
    6.10 +
    6.11 +int xen_physdisk_grant(xp_disk_t *);
    6.12 +int xen_physdisk_probe(physdisk_probebuf_t *);
    6.13 +int xen_physdisk_access_okay(phys_seg_t *pseg, struct task_struct *p,
    6.14 +			     int operation);
    6.15 +
    6.16 +#endif /* PHYSDISK_ACES__ */