|   | 
      | 
  
  
      | 
      | 
  
 
     | 
    | 
  
  
     | 
    | 
  
  
    |   | 
      | 
  
  
    | 
         
xen-devel
[Xen-devel] xenstored misaccounting resource limits
 
Currently xenstored does not account domain->nbentry when a transaction
is aborted (either intentionally or via EAGAIN). We hit this case when
adding a lot of disks to a domU: the limit is reached much earlier than
expected, as a number of clashing transactions cause incorrect inflation
of the value of ->nbentry.
There's been a little discussion internally on the nicest way to fix
this. My current suggestion is along the lines of:
domain_entry_inc()
       d = domain to inc as before
       if (transaction)
               transaction->domain_nbcount[d]++
       else
               d->nbcount++
(same for _dec)
then in transaction end:
       for d in transaction->domains
               d->nbcount += transaction->domain_nbcount[d]
But I thought it wise to ask if somebody has a different suggestion, or
preference, before we cook up a patch.
cheers
john
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
 |   
 
| <Prev in Thread] | 
Current Thread | 
[Next in Thread>
 |  
- [Xen-devel] xenstored misaccounting resource limits,
John Levon <=
 
 
 |  
  
 | 
    | 
  
  
    |   | 
    |