mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 10:40:03 +01:00
bitkeeper revision 1.267.1.1 (3f055a3dM7rMyFG8Br1OZcHwx7-wsA)
Misc. bug fixes.
This commit is contained in:
1 parent
f96c090399
commit
823ad35b29
6 files changed
+22
-3
No files matched your search
@@ -454,6 +454,7 @@
|
||||
3ddb79c0MOVXq8qZDQRGb6z64_xAwg xen/include/xeno/pci_ids.h
|
||||
3e54c38dlSCVdyVM4PKcrSfzLLxWUQ xen/include/xeno/perfc.h
|
||||
3e54c38de9SUSYSAwxDf_DwkpAnQFA xen/include/xeno/perfc_defn.h
|
||||
3f055a3dwldYR102YcSuBaxIf9t3Jw xen/include/xeno/physdisk.h
|
||||
3ddb79c04nQVR3EYM5L4zxDV_MCo1g xen/include/xeno/prefetch.h
|
||||
3e4540ccU1sgCx8seIMGlahmMfv7yQ xen/include/xeno/reboot.h
|
||||
3ddb79c0LzqqS0LhAQ50ekgj4oGl7Q xen/include/xeno/sched.h
|
||||
|
||||
@@ -419,3 +419,4 @@ xen/tools/figlet/figlet
|
||||
xenolinux-2.4.16-sparse/arch/xeno/drivers/block/Makefile.orig
|
||||
xenolinux-2.4.16-sparse/arch/xeno/drivers/block/block.c.orig
|
||||
xenolinux-2.4.16-sparse/scripts/kconfig.tk
|
||||
xen/include/xeno/physdisk.h~
|
||||
@@ -16,6 +16,8 @@
|
||||
#include <asm/msr.h>
|
||||
#include <xeno/blkdev.h>
|
||||
#include <xeno/console.h>
|
||||
#include <hypervisor-ifs/block.h>
|
||||
#include <xeno/physdisk.h>
|
||||
|
||||
/*
|
||||
* NB. No ring-3 access in initial guestOS pagetables. Note that we allow
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
#include <xeno/interrupt.h>
|
||||
#include <xeno/segment.h>
|
||||
#include <xeno/slab.h>
|
||||
#include <xeno/physdisk.h>
|
||||
|
||||
#if 0
|
||||
#define DPRINTK(_f, _a...) printk( _f , ## _a )
|
||||
@@ -676,7 +677,7 @@ static void dispatch_rw_block_io(struct task_struct *p, int index)
|
||||
goto bad_descriptor;
|
||||
}
|
||||
if (p->domain != 0 &&
|
||||
!xen_physdisk_access_okay(&phys_seg, p, operation)) {
|
||||
!xen_physdisk_access_okay(&phys_seg[nr_psegs], p, operation)) {
|
||||
DPRINTK("access denied\n");
|
||||
/* XXX not quite right, but close enough. */
|
||||
goto bad_descriptor;
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
#include <asm/domain_page.h>
|
||||
#include <asm/io.h>
|
||||
#include <xeno/segment.h>
|
||||
#include <xeno/physdisk.h>
|
||||
|
||||
#define MAX(a,b) ((a) > (b) ? (a) : (b))
|
||||
|
||||
@@ -84,7 +85,7 @@ static void xen_physdisk_revoke_access(unsigned short dev,
|
||||
ace_end <= start_sect)
|
||||
continue;
|
||||
|
||||
DPRINTK("Killing ace [%x, %x) against kill zone [%x, %x)\n",
|
||||
DPRINTK("Killing ace [%lx, %lx) against kill zone [%lx, %lx)\n",
|
||||
cur_ace->start_sect, ace_end, start_sect, kill_zone_end);
|
||||
|
||||
if (cur_ace->start_sect >= start_sect &&
|
||||
@@ -234,7 +235,7 @@ int xen_physdisk_access_okay(phys_seg_t *pseg, struct task_struct *p,
|
||||
struct physdisk_ace *cur_ace;
|
||||
unsigned long sect;
|
||||
|
||||
DPRINTK("Checking access for domain %d, start sect %d, length %d.\n",
|
||||
DPRINTK("Checking access for domain %d, start sect 0x%lx, length 0x%x.\n",
|
||||
p->domain, pseg->sector_number, pseg->nr_sects);
|
||||
|
||||
for (sect = pseg->sector_number;
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
#ifndef PHYSDISK_ACES__
|
||||
#define PHYSDISK_ACES__
|
||||
|
||||
struct task_struct;
|
||||
|
||||
void destroy_physdisk_aces(struct task_struct *p);
|
||||
|
||||
int xen_physdisk_grant(xp_disk_t *);
|
||||
int xen_physdisk_probe(physdisk_probebuf_t *);
|
||||
int xen_physdisk_access_okay(phys_seg_t *pseg, struct task_struct *p,
|
||||
int operation);
|
||||
|
||||
#endif /* PHYSDISK_ACES__ */
|
||||