diff options
author | iap10@labyrinth.cl.cam.ac.uk <iap10@labyrinth.cl.cam.ac.uk> | 2003-03-13 21:37:07 +0000 |
---|---|---|
committer | iap10@labyrinth.cl.cam.ac.uk <iap10@labyrinth.cl.cam.ac.uk> | 2003-03-13 21:37:07 +0000 |
commit | f9e443afb85c3843c8abd0760ee4a77b0aceeeed (patch) | |
tree | 7e7c32b6b492c79e0484f4cc1fa81bae16a514ed | |
parent | 46145d96ec4b7cb0611715efb0bbc3c205be5076 (diff) | |
parent | 17d79996321b67d1ab583684ee67f5b1e28cf183 (diff) | |
download | xen-f9e443afb85c3843c8abd0760ee4a77b0aceeeed.tar.gz xen-f9e443afb85c3843c8abd0760ee4a77b0aceeeed.tar.bz2 xen-f9e443afb85c3843c8abd0760ee4a77b0aceeeed.zip |
bitkeeper revision 1.122.1.14 (3e70fa03agHmgzj9cO0FmaGzS2RcPg)
Merge labyrinth.cl.cam.ac.uk:/usr/groups/xeno/BK/xeno.bk
into labyrinth.cl.cam.ac.uk:/anfs/scratch/labyrinth/iap10/xeno-clone/xeno.bk
-rw-r--r-- | xen/arch/i386/irq.c | 4 | ||||
-rw-r--r-- | xen/common/perfc.c | 8 | ||||
-rw-r--r-- | xen/drivers/char/xen_kbd.c | 3 | ||||
-rw-r--r-- | xen/drivers/char/xen_serial.c | 2 | ||||
-rw-r--r-- | xen/include/asm-i386/irq.h | 1 | ||||
-rw-r--r-- | xenolinux-2.4.21-pre4-sparse/arch/xeno/drivers/block/xl_scsi.c | 6 |
6 files changed, 15 insertions, 9 deletions
diff --git a/xen/arch/i386/irq.c b/xen/arch/i386/irq.c index 312cfe7970..6485b6ba15 100644 --- a/xen/arch/i386/irq.c +++ b/xen/arch/i386/irq.c @@ -537,7 +537,9 @@ asmlinkage unsigned int do_IRQ(struct pt_regs regs) do_softirq(); rdtscl(cc_end); - perfc_adda(irq_time, cpu, cc_end - cc_start); + + if(!action || (!(action->flags & SA_NOPROFILE)) ) + perfc_adda(irq_time, cpu, cc_end - cc_start); return 1; } diff --git a/xen/common/perfc.c b/xen/common/perfc.c index cc277a914a..704bef1d3b 100644 --- a/xen/common/perfc.c +++ b/xen/common/perfc.c @@ -47,18 +47,18 @@ void __perfc_print (unsigned long counter[], int offset) return; } if (element_size == 0) { /* single counter */ - printf ("%10ld 0x%08lx %s\n", counter[0], counter[0], + printf ("%10lu 0x%08lx %s\n", counter[0], counter[0], perfc_name[loop] + 2 + num); } else if (cpus) { /* counter per CPU */ for (loop = 0; loop < smp_num_cpus; loop++) { - printf ("%10ld 0x%08lx cpu[%02d] %s\n", + printf ("%10lu 0x%08lx cpu[%02d] %s\n", counter[loop], counter[loop], loop, perfc_name[loop]); } } else { /* show entire array */ for (loop = 0; loop < element_size; loop++) { - printf ("%10ld 0x%08lx %s:%d\n", + printf ("%10lu 0x%08lx %s:%d\n", counter[loop], counter[loop], perfc_name[loop] + 2 + num, loop); } @@ -103,6 +103,8 @@ void perfc_printall (u_char key, void *dev_id, struct pt_regs *regs) } } + //perfc_reset( key, dev_id, regs ); + return; } diff --git a/xen/drivers/char/xen_kbd.c b/xen/drivers/char/xen_kbd.c index dc9379a06c..b103f2fb4e 100644 --- a/xen/drivers/char/xen_kbd.c +++ b/xen/drivers/char/xen_kbd.c @@ -1,4 +1,5 @@ #include <asm-i386/io.h> +#include <asm-i386/irq.h> #include <xeno/sched.h> /* this has request_irq() proto for some reason */ #include <xeno/keyhandler.h> @@ -183,7 +184,7 @@ static void keyboard_interrupt(int irq, void *dev_id, struct pt_regs *regs) void initialize_keyboard() { - if(request_irq(KEYBOARD_IRQ, keyboard_interrupt, 0, "keyboard", NULL)) + if(request_irq(KEYBOARD_IRQ, keyboard_interrupt, SA_NOPROFILE, "keyboard", NULL)) printk("initialize_keyboard: failed to alloc IRQ %d\n", KEYBOARD_IRQ); return; diff --git a/xen/drivers/char/xen_serial.c b/xen/drivers/char/xen_serial.c index 4fba991997..95107e587d 100644 --- a/xen/drivers/char/xen_serial.c +++ b/xen/drivers/char/xen_serial.c @@ -85,6 +85,6 @@ void initialize_serial() outb(NS16550_MCR_OUT2, SERIAL_BASE + NS16550_MCR); /* Modem control */ outb(NS16550_IER_ERDAI, SERIAL_BASE + NS16550_IER ); /* Setup interrupts */ - if((rc = request_irq(4, serial_rx_int, 0, "serial", 0))) + if((rc = request_irq(4, serial_rx_int, SA_NOPROFILE, "serial", 0))) printk("initialize_serial: failed to get IRQ4, rc=%d\n", rc); } diff --git a/xen/include/asm-i386/irq.h b/xen/include/asm-i386/irq.h index 41049e71b2..21c24f4483 100644 --- a/xen/include/asm-i386/irq.h +++ b/xen/include/asm-i386/irq.h @@ -8,6 +8,7 @@ #define SA_INTERRUPT 0x20000000 #define SA_SHIRQ 0x04000000 +#define SA_NOPROFILE 0x02000000 #define SA_SAMPLE_RANDOM 0 /* Linux driver compatibility */ diff --git a/xenolinux-2.4.21-pre4-sparse/arch/xeno/drivers/block/xl_scsi.c b/xenolinux-2.4.21-pre4-sparse/arch/xeno/drivers/block/xl_scsi.c index f765d3f12e..e4d1007575 100644 --- a/xenolinux-2.4.21-pre4-sparse/arch/xeno/drivers/block/xl_scsi.c +++ b/xenolinux-2.4.21-pre4-sparse/arch/xeno/drivers/block/xl_scsi.c @@ -62,16 +62,16 @@ int xlscsi_init(xen_disk_info_t *xdi) /* Initialize global arrays. */ for ( i = 0; i < XLSCSI_MAX; i++ ) { - xlscsi_blksize_size[i] = 512; + xlscsi_blksize_size[i] = 1024; //XXX 512; xlscsi_hardsect_size[i] = 512; - xlscsi_max_sectors[i] = 128; + xlscsi_max_sectors[i] = 128*8; //XXX 128 } blk_size[XLSCSI_MAJOR] = NULL; blksize_size[XLSCSI_MAJOR] = xlscsi_blksize_size; hardsect_size[XLSCSI_MAJOR] = xlscsi_hardsect_size; max_sectors[XLSCSI_MAJOR] = xlscsi_max_sectors; - read_ahead[XLSCSI_MAJOR] = 8; + read_ahead[XLSCSI_MAJOR] = NULL; //XXX8; blk_init_queue(BLK_DEFAULT_QUEUE(XLSCSI_MAJOR), do_xlblk_request); |