ia64/xen-unstable

changeset 199:fa8759fd4b27

bitkeeper revision 1.60 (3e4ffc20MbjIucCcaw9sFYEAAu-yeA)

Cleanups. Fixed domain building some more.
author kaf24@labyrinth.cl.cam.ac.uk
date Sun Feb 16 21:01:20 2003 +0000 (2003-02-16)
parents db73fd255933
children c6670740ac0e
files xen-2.4.16/arch/i386/traps.c xen-2.4.16/common/domain.c xen-2.4.16/common/network.c
line diff
     1.1 --- a/xen-2.4.16/arch/i386/traps.c	Sun Feb 16 18:55:21 2003 +0000
     1.2 +++ b/xen-2.4.16/arch/i386/traps.c	Sun Feb 16 21:01:20 2003 +0000
     1.3 @@ -297,12 +297,6 @@ asmlinkage void do_general_protection(st
     1.4          ti = current->thread.traps + (error_code>>3);
     1.5          if ( ti->dpl >= (regs->xcs & 3) )
     1.6          {
     1.7 -            /* XXX Kill next conditional soon :-) XXX */
     1.8 -            if ( (error_code>>3)==0x80 ) 
     1.9 -            { 
    1.10 -                printk("DIDN'T USE FAST-TRAP HANDLER FOR 0x80!!! :-(\n");
    1.11 -                BUG(); 
    1.12 -            }
    1.13              gtb->flags = GTBF_TRAP_NOCODE;
    1.14              gtb->cs    = ti->cs;
    1.15              gtb->eip   = ti->address;
     2.1 --- a/xen-2.4.16/common/domain.c	Sun Feb 16 18:55:21 2003 +0000
     2.2 +++ b/xen-2.4.16/common/domain.c	Sun Feb 16 21:01:20 2003 +0000
     2.3 @@ -321,7 +321,7 @@ int final_setup_guestos(struct task_stru
     2.4      __asm__ __volatile__ ( 
     2.5          "mov %%eax,%%cr3" : : "a" (pagetable_val(p->mm.pagetable)));
     2.6  
     2.7 -    memset(virt_startinfo_addr, 0, sizeof(virt_startinfo_addr));
     2.8 +    memset(virt_startinfo_addr, 0, sizeof(*virt_startinfo_addr));
     2.9      virt_startinfo_addr->nr_pages = p->tot_pages;
    2.10      virt_startinfo_addr->shared_info = (shared_info_t *)meminfo->virt_shinfo_addr;
    2.11      virt_startinfo_addr->pt_base = meminfo->virt_load_addr + 
     3.1 --- a/xen-2.4.16/common/network.c	Sun Feb 16 18:55:21 2003 +0000
     3.2 +++ b/xen-2.4.16/common/network.c	Sun Feb 16 21:01:20 2003 +0000
     3.3 @@ -347,20 +347,20 @@ int __net_get_target_vif(u8 *data, unsig
     3.4      int target = VIF_DROP;
     3.5      u8 *h_raw, *nh_raw;
     3.6      
     3.7 -    if ( len < 2 ) goto drop;
     3.8 +    if ( len < ETH_HLEN ) goto drop;
     3.9  
    3.10      nh_raw = data + ETH_HLEN;
    3.11      switch ( ntohs(*(unsigned short *)(data + 12)) )
    3.12      {
    3.13      case ETH_P_ARP:
    3.14 -        if ( len < 28 ) goto drop;
    3.15 +        if ( len < (ETH_HLEN + 28) ) goto drop;
    3.16          target = net_find_rule((u8)ETH_P_ARP, 0, ntohl(*(u32 *)(nh_raw + 14)),
    3.17                                 ntohl(*(u32 *)(nh_raw + 24)), 0, 0, 
    3.18                                 src_vif);
    3.19          break;
    3.20  
    3.21      case ETH_P_IP:
    3.22 -        if ( len < 20 ) goto drop;
    3.23 +        if ( len < (ETH_HLEN + 20) ) goto drop;
    3.24          h_raw =  data + ((*(unsigned char *)(nh_raw)) & 0x0f) * 4;
    3.25          
    3.26          /* XXX For now, we ignore ports. */