• This PCI controller can be found on a number of 4xx SoCs, including the 440EP.
    
    Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
    Acked-by: Anthony Liguori <aliguori@us.ibm.com>
    Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5862 c046a42c-6fe2-441c-8c8c-71466251a162
    aurel32 authored
     
    Browse Code »
  • …ted exit (Gleb Natapov)
    
    Currently the order is this (during cow since it's the interesting case):
    1. Decrement refcount of old clusters
    2. Increment refcount for newly allocated clusters
    3. Copy content of old sectors that will not be rewritten
    4. Update L2 table with pointers to new clusters
    5. Write guest data into new clusters (asynchronously)
    
    There are several problems with this order. The first one is that if qemu
    crashes (or killed or host reboots) after new clusters are linked into L2
    table but before user data is written there, then on the next reboot guest
    will find neither old data nor new one in those sectors and this is not
    what gust expects even when journaling file system is in use.  The other
    problem is that if qemu is killed between steps 1 and 4 then refcount
    of old cluster will be incorrect and may cause snapshot corruption.
    
    The patch change the order to be like this:
    1. Increment refcount for newly allocated clusters
    2. Write guest data into new clusters (asynchronously)
    3. Copy content of old sectors that were not rewritten
    4. Update L2 table with pointers to new clusters
    5. Decrement refcount of old clusters
    
    Unexpected crash may cause cluster leakage, but guest data should be safe.
    
    Signed-off-by: Gleb Natapov <gleb@redhat.com>
    Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
    
    
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5861 c046a42c-6fe2-441c-8c8c-71466251a162
    aliguori authored
     
    Browse Code »
  • Move duplicated code into helper functions.
    
    Signed-off-by: Gleb Natapov <gleb@redhat.com>
    Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
    
    
    
    git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5860 c046a42c-6fe2-441c-8c8c-71466251a162
    aliguori authored
     
    Browse Code »