lkml.org 
[lkml]   [2011]   [Nov]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 00/11] virtio: Support for hibernation (S4)
On (Tue) 04 Oct 2011 [10:36:05], Rusty Russell wrote:
> On Sun, 2 Oct 2011 11:49:21 +0200, "Michael S. Tsirkin" <mst@redhat.com> wrote:
> > On Thu, Sep 29, 2011 at 08:55:56PM +0530, Amit Shah wrote:
> > > Hello,
> > >
> > > These patches add support for S4 to virtio (pci) and all drivers. The
> > > patches are based on the virtio-console patch series in Rusty's queue.
> > >
> > > For each driver, all vqs are removed before hibernation, and then
> > > re-created after restore.
> > >
> > > All the drivers in testing work fine:
> > >
> > > * virtio-blk is used for the only disk in the VM, IO works fine before
> > > and after.
>
> I'm not familiar with the suspend code, but:
>
> 1) Does it already ensure there are no outstanding I/O requests? If
> not, we want to restore them when we unfreeze.

For the blk code, I added blk_drain_queue() and related calls to the
freeze handler, that was missed earlier.

> 2) Does it stop more I/O from reaching do_virtblk_request during freeze?
> If not, we need to.

Added blk_stop_queue() and blk_start_queue() calls to ensure this.

> If we need to save and restore requests, I don't think we should do this
> on a per-driver basis, but try to do it in the core.

Agreed, however currently we don't save and restore any pending vq
items. If it is necessary, we should do it in common code (earlier
version of this patchset did that). I think we can get better results
by flushing the vq instead of trying to save/restore elements.

Amit


\
 
 \ /
  Last update: 2011-11-15 13:55    [W:0.032 / U:0.080 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site