1. 19 Mar, 2013 2 commits
  2. 18 Mar, 2013 10 commits
  3. 15 Mar, 2013 8 commits
  4. 14 Mar, 2013 10 commits
  5. 05 Mar, 2013 8 commits
  6. 01 Mar, 2013 2 commits
    • Pavel Emelyanov's avatar
      fd0d3801
    • Pavel Emelyanov's avatar
      mem: Drain memory from parasite before dumping it into file · cf01381c
      Pavel Emelyanov authored
      Currently we dump pages directly from parasite into image files. This
      is bad for several reasons:
      
      1. We cannot use any more-or-less custom format for pages easily, since
         parasite code cannot be linked with any libraries;
      2. We will not be able to optimize migration with preliminary memory
         migration (a.k.a. iterative migration) with it -- if we send pages
         from parasite over network we are not able to let the task we dump
         continue running.
      
      That said, what is done is -- pages from target task are put into a
      page-pipe in one go, then (not in this patch) parasite can be released
      and we can do with pages whatever we want. For now pages are just
      spliced from pipe into image file.
      
      Some numbers:
      In order to drain 1Gb of memory from task we need 1.5M of shared map
      in args (for iovecs) and 4 pipes (8 descriptors) each referencing 128Mb
      of pages, which int turn requires 4 x 640K chunks of sequential kernel
      memory (for pipe_buffer). Not that big I guess.
      Signed-off-by: 's avatarPavel Emelyanov <xemul@parallels.com>
      cf01381c