Skip to content

Commits

Permalink
orbit-wp4-colo…
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Commits on Feb 23, 2016

  1. Create README.md

    dagrh committed Feb 23, 2016
    Copy the full SHA
    9eca139 View commit details
    Browse the repository at this point in the history
  2. Change state handler/flush

    Packets that are sent to the filter queue are usually
    sent onwards straight away, but if they can't be
    (e.g. the guest is stopped) they sit in the queue until
    something causes them to be sent.  Flush the queue
    when teh guest restarts.
    
    TODO: I think in a lot of these cases the packets the
    queue system stops being sent, should be allowed to be sent when
    the guest is stopped.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    26386ff View commit details
    Browse the repository at this point in the history
  3. debug

    Just debug enable/disable etc
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    793b6ae View commit details
    Browse the repository at this point in the history
  4. mutex the packet lists

    The packet lists are accessed by:
       a) The main thread for incoming packets on the socket and network
       b) the compare thread
       c) The migration/colo thread (when it calls flush)
    
    Mutex them to stop multiple threads changing the lists at the same
    time.
    
    These probably need to turn into RCU lists that would avoid the locks?
    
    TODO: Hmm some deadlock potential between the big lock when taken for
    the monitor commands and the packet lists as we read them in info
    colo-proxy; anywhere else?
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    852f344 View commit details
    Browse the repository at this point in the history
  5. colo-proxy: Fixup sequence numbers on secondary

    Based on the technique in the earlier kernel colo-proxy.
    This only handles inbound connections;  when it sees
    the guest send the syn/ack and then the outside world
    respond with the ack, it uses the number in the ack
    to figure out the sequence number hte primary was using.
    Then we have an offset that gets applied to all packets
    until the next checkpoint comes in.
    This is also applied to incoming ACKs on these connections
    so that the secondary guest sees a consistent view.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    
    More packet stuff; has ack rework
    dagrh committed Feb 23, 2016
    Copy the full SHA
    2f8687e View commit details
    Browse the repository at this point in the history
  6. colo: Shorten proxy thread name

    Thread names limit at about 14 chars, and if they're longer they're
    ignored.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    8198ab2 View commit details
    Browse the repository at this point in the history
  7. Ignore sequence mismatches on primary for syn/ack

    On an incoming connection ignore the sequence numbers
    on the syn/ack when doing the compare; the secondary
    will fix up all future packets to match the primary
    after it receives the 'ack' from the outside world.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    848ca11 View commit details
    Browse the repository at this point in the history
  8. colo: Add checkpoint numbering to packets

    Add a checkpoint index before each packet sent over the socket
    between the VMs.  This is mostly as a sanity check, but it
    allows the primary to discard packets that are from the previous
    checkpoint.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    178fdfd View commit details
    Browse the repository at this point in the history
  9. info colo-proxy

    Add an info command to dump out the state of the proxy; for debug.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    b687523 View commit details
    Browse the repository at this point in the history
  10. Endian fixes for ports

    Packets read off the wire are big endian; we don't actually
    need them to be the correct endian ness internally, but
    getting it right makes debug a lot easier.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    9f111f0 View commit details
    Browse the repository at this point in the history
  11. colo+RDMA: Remap in pin-all mode when switching to COLO

    When switching to COLO mode force rmeap of all RAM using the new
    host addresses.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    35f45b2 View commit details
    Browse the repository at this point in the history
  12. md5 check for sync

    dagrh committed Feb 23, 2016
    Copy the full SHA
    eefa5f9 View commit details
    Browse the repository at this point in the history
  13. COLO: Add fine grained stats (secondary side)

    Add fine grain stats so we can see where the time goes.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    b3659ac View commit details
    Browse the repository at this point in the history
  14. COLO: Add fine grain stats (primary side)

    Add finer grained stats to the primary side to see where the time
    goes in each checkpoint.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    432e6df View commit details
    Browse the repository at this point in the history
  15. Copy the full SHA
    9dc1e2d View commit details
    Browse the repository at this point in the history
  16. COLO: Add stats

    Used the TimedAverage type to hold min/max/avg sizes for colo stats
    and present them through info migrate.
    
    Based partially on zhanghailiang's earlier stats patches.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    7d69dbf View commit details
    Browse the repository at this point in the history
  17. COLO: Hybrid mode

    Automatically switch into a passive checkpoint mode when checkpoints are
    repeatedly short.  This saves CPU time on the SVM (since it's not running)
    and the network traffic and PVM CPU time for the comparison processing.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    248641d View commit details
    Browse the repository at this point in the history
  18. COLO: Minimum checkpoint time

    If the rate of miscompares is very quick we don't make much forward
    progress;  start off by limiting the minimum checkpoint period
    by adding a delay after we tell the secondary we're going to want
    a checkpoint.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    11a0cc3 View commit details
    Browse the repository at this point in the history
  19. use condition variable to signal miscompare

    Instead of polling colo_proxy's miscompare variable, use a
    condition variable and signal it; using timedwait this means the waiting
    is free. (Note we haven't got a wrapper for posix_cond_timedwait
    possibly because it's not portable?)
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    c8a9101 View commit details
    Browse the repository at this point in the history
  20. Disable packet dumping

    dagrh committed Feb 23, 2016
    Copy the full SHA
    6c242e2 View commit details
    Browse the repository at this point in the history
  21. Migration: Emit event at start of pass

    Emit an event each time we sync the dirty bitmap on the source;
    this helps libvirt use postcopy by giving it a kick when it
    might be a good idea to start the postcopy.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    Reviewed-by: Juan Quintela <quintela@redhat.com>
    Reviewed-by: Eric Blake <eblake@redhat.com>
    Reviewed-by: Amit Shah <amit.shah@redhat.com>
    Message-Id: <1450266458-3178-5-git-send-email-dgilbert@redhat.com>
    Signed-off-by: Amit Shah <amit.shah@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    fa6df8d View commit details
    Browse the repository at this point in the history
  22. Postcopy: Send events/change state on incoming side

    I missed the calls to send migration events on the destination side
    as we enter postcopy.
    Take care when adding them not to do it after state has been freed.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    Reviewed-by: zhanghailiang <zhang.zhanghailiang@huawei.com>
    Reviewed-by: Juan Quintela <quintela@redhat.com>
    Reviewed-by: Amit Shah <amit.shah@redhat.com>
    Message-Id: <1450266458-3178-4-git-send-email-dgilbert@redhat.com>
    Signed-off-by: Amit Shah <amit.shah@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    c19b84f View commit details
    Browse the repository at this point in the history
  23. Hack colo-proxy into colo module

    This is part of Li Zhijian's 'integrate colo proxy to colo module'
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    5abb4bd View commit details
    Browse the repository at this point in the history
  24. Remove netfilter related code

    Minimal verison of Li Zhijian's 'remove netfilter related code'
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 23, 2016
    Copy the full SHA
    1ae532f View commit details
    Browse the repository at this point in the history
  25. start kvm dirty log

    Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
    zhijianli88 authored and dagrh committed Feb 23, 2016
    Copy the full SHA
    ffb81e3 View commit details
    Browse the repository at this point in the history
  26. make secondary running

    Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
    zhijianli88 authored and dagrh committed Feb 23, 2016
    Copy the full SHA
    ca6453c View commit details
    Browse the repository at this point in the history
  27. flush host dirty

    Signed-off-by: Li Zhijian <lizhijian@cn.fujitsu.com>
    dgilbert: merged
    zhijianli88 authored and dagrh committed Feb 23, 2016
    Copy the full SHA
    4c078ea View commit details
    Browse the repository at this point in the history
  28. quorum: fix segfault when read fails in fifo mode

    Signed-off-by: Wen Congyang <wency@cn.fujitsu.com>
    wencongyang authored and dagrh committed Feb 23, 2016
    Copy the full SHA
    83c1570 View commit details
    Browse the repository at this point in the history

Commits on Feb 18, 2016

  1. quorum: Change vote rules for 64 bits hash

    If quorum has two children(A, B). A do flush sucessfully, but B flush failed.
    We MUST choice A as winner rather than just pick anyone of them. Otherwise
    the filesystem of guest will become read-only with following errors:
    
    end_request: I/O error, dev vda, sector 11159960
    Aborting journal on device vda3-8
    EXT4-fs error (device vda3): ext4_journal_start_sb:327: Detected abort journal
    EXT4-fs (vda3): Remounting filesystem read-only
    
    Signed-off-by: Wen Congyang <wency@cn.fujitsu.com>
    Signed-off-by: Changlong Xie <xiecl.fnst@cn.fujitsu.com>
    Changlong Xie authored and dagrh committed Feb 18, 2016
    Copy the full SHA
    bedbd0f View commit details
    Browse the repository at this point in the history

Commits on Feb 5, 2016

  1. trace: fix PRIx64 constants in trace-events

    Commit c8ee0a4 introduced new events containing PRIx64 constants without
    including the % prefix in the preceding string. This results in a compile
    error during build if --enable-trace-backends is passed to configure.
    
    Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
    Message-id: 1450566522-6003-1-git-send-email-mark.cave-ayland@ilande.co.uk
    Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
    mcayland authored and dagrh committed Feb 5, 2016
    Copy the full SHA
    dd1bffa View commit details
    Browse the repository at this point in the history
  2. rdma: shutdown

    Implement a 'shutdown' like function.
    RDMA doesn't have a direct equivalent of the shutdown call;
    so set low timeouts and try and force the connection into an error
    state.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 5, 2016
    Copy the full SHA
    67fb121 View commit details
    Browse the repository at this point in the history
  3. Multiple write notifications at a time

    Group write notifications into a single message for multiple
    notifications to reduce overhead.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 5, 2016
    Copy the full SHA
    d4bd7f6 View commit details
    Browse the repository at this point in the history

Commits on Feb 2, 2016

  1. Debug: Sequence number control 'ready' messages

    For debug only; the 'ready' messages sent on the control
    path currently contain no data; adding a sequencer counter
    helps in debugging.
    
    TODO: Make this safe if receiving a stream from an older
    QEMU.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 2, 2016
    Copy the full SHA
    1fd52b7 View commit details
    Browse the repository at this point in the history
  2. RDMA: write notify, wire up RAM code

    When RDMA receives write-notify messages, inform the ram code.
    This interface also gets called where RDMA places a zero page.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 2, 2016
    Copy the full SHA
    63253c9 View commit details
    Browse the repository at this point in the history
  3. rdma: Send notification of page write to source

    RDMA has the advantage that data written to the destination
    just appears in the destination memory space; the downside of this is
    for COLO (and postcopy) where they have to do something to the
    received data.  Here they need a notification that pages have been
    updated.
    
    Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
    dagrh committed Feb 2, 2016
    Copy the full SHA
    8e4556d View commit details
    Browse the repository at this point in the history
Older