ia64/xen-unstable

changeset 4059:586e5a7db87a

bitkeeper revision 1.1236.1.70 (422f7842ilYCqqsKn_oN8Rq47YOq8A)

Merge scramble.cl.cam.ac.uk:/local/scratch/kaf24/xeno-unstable-ia64.bk
into scramble.cl.cam.ac.uk:/local/scratch/kaf24/xxx.bk
author kaf24@scramble.cl.cam.ac.uk
date Wed Mar 09 22:27:14 2005 +0000 (2005-03-09)
parents 557e8cf002c3 8411d5ff23c2
children 254b6cc19f34
files linux-2.6.10-xen-sparse/drivers/xen/blktap/blktap.h linux-2.6.10-xen-sparse/drivers/xen/blktap/blktap_datapath.c xen/common/dom0_ops.c xen/common/grant_table.c
line diff
     1.1 --- a/linux-2.6.10-xen-sparse/drivers/xen/blktap/blktap.h	Wed Mar 09 20:35:53 2005 +0000
     1.2 +++ b/linux-2.6.10-xen-sparse/drivers/xen/blktap/blktap.h	Wed Mar 09 22:27:14 2005 +0000
     1.3 @@ -110,10 +110,18 @@ typedef struct {
     1.4  typedef unsigned int ACTIVE_RING_IDX;
     1.5  
     1.6  active_req_t *lookup_active_req(ACTIVE_RING_IDX idx);
     1.7 -inline unsigned int ID_TO_IDX(unsigned long id);
     1.8 -inline domid_t ID_TO_DOM(unsigned long id);
     1.9  
    1.10 -inline void active_reqs_init(void);
    1.11 +extern inline unsigned int ID_TO_IDX(unsigned long id) 
    1.12 +{ 
    1.13 +    return ( id & 0x0000ffff );
    1.14 +}
    1.15 +
    1.16 +extern inline domid_t ID_TO_DOM(unsigned long id) 
    1.17 +{ 
    1.18 +    return (id >> 16); 
    1.19 +}
    1.20 +
    1.21 +void active_reqs_init(void);
    1.22  
    1.23  /* -------[ interposition -> character device interface ]------------- */
    1.24  
    1.25 @@ -224,8 +232,8 @@ int write_resp_to_fe_ring(blkif_t *blkif
    1.26  int write_req_to_be_ring(blkif_request_t *req);
    1.27  
    1.28  /* event notification functions */
    1.29 -inline void kick_fe_domain(blkif_t *blkif);
    1.30 -inline void kick_be_domain(void);
    1.31 +void kick_fe_domain(blkif_t *blkif);
    1.32 +void kick_be_domain(void);
    1.33  
    1.34  /* Interrupt handlers. */
    1.35  irqreturn_t blkif_ptbe_int(int irq, void *dev_id, 
     2.1 --- a/linux-2.6.10-xen-sparse/drivers/xen/blktap/blktap_datapath.c	Wed Mar 09 20:35:53 2005 +0000
     2.2 +++ b/linux-2.6.10-xen-sparse/drivers/xen/blktap/blktap_datapath.c	Wed Mar 09 22:27:14 2005 +0000
     2.3 @@ -59,7 +59,7 @@ active_req_t *lookup_active_req(ACTIVE_R
     2.4      return &active_reqs[idx];   
     2.5  }
     2.6  
     2.7 -inline void active_reqs_init(void)
     2.8 +void active_reqs_init(void)
     2.9  {
    2.10      ACTIVE_RING_IDX i;
    2.11      
    2.12 @@ -80,13 +80,6 @@ static inline unsigned long MAKE_ID(domi
    2.13      return ( (fe_dom << 16) | idx );
    2.14  }
    2.15  
    2.16 -inline unsigned int ID_TO_IDX(unsigned long id) 
    2.17 -{ 
    2.18 -        return ( id & 0x0000ffff );
    2.19 -}
    2.20 -
    2.21 -inline domid_t ID_TO_DOM(unsigned long id) { return (id >> 16); }
    2.22 -
    2.23  /*-----[ Ring helpers ]---------------------------------------------------*/
    2.24  
    2.25  inline int write_resp_to_fe_ring(blkif_t *blkif, blkif_response_t *rsp)
    2.26 @@ -127,7 +120,7 @@ inline int write_req_to_be_ring(blkif_re
    2.27      return 0;
    2.28  }
    2.29  
    2.30 -inline void kick_fe_domain(blkif_t *blkif) 
    2.31 +void kick_fe_domain(blkif_t *blkif) 
    2.32  {
    2.33      RING_PUSH_RESPONSES(&blkif->blk_ring);
    2.34      notify_via_evtchn(blkif->evtchn);
    2.35 @@ -135,7 +128,7 @@ inline void kick_fe_domain(blkif_t *blki
    2.36      
    2.37  }
    2.38  
    2.39 -inline void kick_be_domain(void)
    2.40 +void kick_be_domain(void)
    2.41  {
    2.42      if ( blktap_be_state != BLKIF_STATE_CONNECTED ) 
    2.43          return;
     3.1 --- a/xen/common/dom0_ops.c	Wed Mar 09 20:35:53 2005 +0000
     3.2 +++ b/xen/common/dom0_ops.c	Wed Mar 09 22:27:14 2005 +0000
     3.3 @@ -114,7 +114,7 @@ long do_dom0_op(dom0_op_t *u_dom0_op)
     3.4      case DOM0_BUILDDOMAIN:
     3.5      {
     3.6          struct domain *d = find_domain_by_id(op->u.builddomain.domain);
     3.7 -        ret = -EINVAL;
     3.8 +        ret = -ESRCH;
     3.9          if ( d != NULL )
    3.10          {
    3.11              ret = final_setup_guest(d, &op->u.builddomain);
    3.12 @@ -147,7 +147,8 @@ long do_dom0_op(dom0_op_t *u_dom0_op)
    3.13          if ( d != NULL )
    3.14          {
    3.15              ret = -EINVAL;
    3.16 -            if ( test_bit(DF_CONSTRUCTED, &d->d_flags) )
    3.17 +            if ( (d != current->domain) && 
    3.18 +                 test_bit(DF_CONSTRUCTED, &d->d_flags) )
    3.19              {
    3.20                  domain_unpause_by_systemcontroller(d);
    3.21                  ret = 0;
     4.1 --- a/xen/common/grant_table.c	Wed Mar 09 20:35:53 2005 +0000
     4.2 +++ b/xen/common/grant_table.c	Wed Mar 09 22:27:14 2005 +0000
     4.3 @@ -345,7 +345,7 @@ gnttab_map_grant_ref(
     4.4      gnttab_map_grant_ref_t *uop, unsigned int count)
     4.5  {
     4.6      int i, flush = 0;
     4.7 -    unsigned long va;
     4.8 +    unsigned long va = 0;
     4.9  
    4.10      for ( i = 0; i < count; i++ )
    4.11          if ( __gnttab_map_grant_ref(&uop[i], &va) == 0)
    4.12 @@ -353,8 +353,9 @@ gnttab_map_grant_ref(
    4.13  
    4.14      if ( flush == 1 )
    4.15          __flush_tlb_one(va);
    4.16 -    else if ( flush )
    4.17 +    else if ( flush != 0 )
    4.18          local_flush_tlb();
    4.19 +
    4.20      return 0;
    4.21  }
    4.22