Xen 
 
Home About Xen.org Xen Xen Summit Wiki Mailing List Bug Tracker Xen Downloads
 
   
 

xen-devel

Re: [Xen-devel] NetBSD port and a couple of remarks

To: Christian Limpach <chris@xxxxxx>
Subject: Re: [Xen-devel] NetBSD port and a couple of remarks
From: Steven Hand <Steven.Hand@xxxxxxxxxxxx>
Date: Wed, 28 Jan 2004 16:38:05 +0000
Cc: Steven Hand <Steven.Hand@xxxxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxxx
Delivery-date: Wed, 28 Jan 2004 16:38:06 +0000
Envelope-to: Steven.Hand@xxxxxxxxxxxx
In-reply-to: Your message of "Wed, 28 Jan 2004 17:23:10 +0100." <031301c3e5bb$05bfb240$070414ac@pin>
> > Well not sure off hand if these problems are fixed (I had a quick scan
> > through the 1.0 world but it seems like ancient history :-) I did notice
> > a somewhat odd behaviour in the pinning case (dropping reference counts)
> > but it's possible that I just misremember how it used to work..
> 
> I use the following patch: (against the xen-1.1 tar.gz)
> diff -pru ../../xeno-1.1.bk/xen/common/domain.c xen/common/domain.c
> --- ../../xeno-1.1.bk/xen/common/domain.c       2003-10-29
> 18:27:39.000000000 +0100
> +++ xen/common/domain.c 2004-01-22 00:43:16.000000000 +0100
> @@ -354,6 +378,7 @@ int final_setup_guestos(struct task_stru
>      net_ring_t *shared_rings;
>      net_vif_t *net_vif;
>      int i;
> +    struct pfn_info *page;
> 
>      if ( (p->flags & PF_CONSTRUCTED) )
>          return -EINVAL;
> @@ -362,6 +387,9 @@ int final_setup_guestos(struct task_stru
>       * mem mappings - set them up.
>       */
>      phys_l2tab = meminfo->l2_pgt_addr;
> +    page = frame_table + (phys_l2tab >> PAGE_SHIFT);
> +    get_page_type(page);
> +    get_page_tot(page);
>      l2tab = map_domain_mem(phys_l2tab);
>      memcpy(&l2tab[DOMAIN_ENTRIES_PER_L2_PAGETABLE],
>          &idle_pg_table[DOMAIN_ENTRIES_PER_L2_PAGETABLE],
> 
> This will result in a $40000001 count and then after a switch to another
> table and an unpin of the initial table, the count will be 0.


Ack ; as I noted in the previous email, the dropping of ref counts
in the unpin code looked suspicious. 


> > It's all free to access, e.g. just type one of
> >
> >    bk clone bk://xen.bkbits.net/xeno-1.2.bk
> >    bk clone bk://xen.bkbits.net/xeno-unstable.bk
> 
> yes, except that I don't want to deal with the bitkeeper licence and figure
> out whether I'm allowed to use it or not.

Ok - I've put a bzball at 

  http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads/xeno-1.2.tar.bz2


cheers, 

S.