ia64/xen-unstable

changeset 203:6cdebb6f9876

bitkeeper revision 1.64 (3e50e515H574gxTCkK8Frnaoka-RTA)

fix horrendous complicated bug IAP couldn't.
author smh22@boulderdash.cl.cam.ac.uk
date Mon Feb 17 13:35:17 2003 +0000 (2003-02-17)
parents 4b4303cad624
children 0e45b167992d 65d6d97ffcfb
files BitKeeper/etc/ignore xen-2.4.16/drivers/block/xen_block.c xen-2.4.16/drivers/ide/ide-dma.c xen-2.4.16/include/asm-i386/pci.h
line diff
     1.1 --- a/BitKeeper/etc/ignore	Mon Feb 17 13:01:59 2003 +0000
     1.2 +++ b/BitKeeper/etc/ignore	Mon Feb 17 13:35:17 2003 +0000
     1.3 @@ -20,3 +20,5 @@ xenolinux-2.4.16-sparse/arch/xeno/driver
     1.4  xenolinux-2.4.16-sparse/arch/xeno/drivers/block/block.c.orig
     1.5  xenolinux-2.4.16-sparse/scripts/kconfig.tk
     1.6  xen-2.4.16/foo
     1.7 +xen-2.4.16/common/domain.c.smh
     1.8 +URK
     2.1 --- a/xen-2.4.16/drivers/block/xen_block.c	Mon Feb 17 13:01:59 2003 +0000
     2.2 +++ b/xen-2.4.16/drivers/block/xen_block.c	Mon Feb 17 13:35:17 2003 +0000
     2.3 @@ -297,6 +297,10 @@ int dispatch_rw_block_io (int index)
     2.4  	BUG();
     2.5      }
     2.6      
     2.7 +    if(blk_ring->btx_ring[index].buffer == NULL) { 
     2.8 +	printk(KERN_ALERT "xen_block: bogus buffer from guestOS\n"); 
     2.9 +	BUG();
    2.10 +    }
    2.11  
    2.12      if (XEN_BLK_DEBUG) {
    2.13  	printk(XEN_BLK_DEBUG_LEVEL "    btx_cons: %d  btx_prod %d  index: %d "
     3.1 --- a/xen-2.4.16/drivers/ide/ide-dma.c	Mon Feb 17 13:01:59 2003 +0000
     3.2 +++ b/xen-2.4.16/drivers/ide/ide-dma.c	Mon Feb 17 13:35:17 2003 +0000
     3.3 @@ -290,8 +290,14 @@ static int ide_build_sglist (ide_hwif_t 
     3.4  			sge->page = bh->b_page;
     3.5  			sge->offset = bh_offset(bh);
     3.6  		} else {
     3.7 +
     3.8 +		   
     3.9 +#if 0 
    3.10 +		    /* below is wrong for xen since b_data is actually
    3.11 +		       a 'physical / virtual' thingy. Ask KAF. */
    3.12  			if (((unsigned long) bh->b_data) < PAGE_SIZE)
    3.13  				BUG();
    3.14 +#endif
    3.15  
    3.16  			sge->address = bh->b_data;
    3.17  		}
     4.1 --- a/xen-2.4.16/include/asm-i386/pci.h	Mon Feb 17 13:01:59 2003 +0000
     4.2 +++ b/xen-2.4.16/include/asm-i386/pci.h	Mon Feb 17 13:35:17 2003 +0000
     4.3 @@ -151,8 +151,12 @@ static inline int pci_map_sg(struct pci_
     4.4   	for (i = 0; i < nents; i++ ) {
     4.5   		if (sg[i].address && sg[i].page)
     4.6   			out_of_line_bug();
     4.7 +
     4.8 +		/* not worth checking since NULL is ok says SMH */
     4.9 +#if 0
    4.10   		else if (!sg[i].address && !sg[i].page)
    4.11   			out_of_line_bug();
    4.12 +#endif
    4.13   
    4.14   		if (sg[i].address)
    4.15   			sg[i].dma_address = virt_to_bus(sg[i].address);