qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC PATCH] Convert ram_list to RCU DQ V2


From: Mike Day
Subject: Re: [Qemu-devel] [RFC PATCH] Convert ram_list to RCU DQ V2
Date: Tue, 3 Sep 2013 10:19:52 -0400


On Tue, Sep 3, 2013 at 10:09 AM, Paolo Bonzini <address@hidden> wrote:
>
> Il 03/09/2013 15:56, Mike Day ha scritto:
> >> > +    /* this implements a long-running RCU critical section.
> >> > +     * When rcu reclaims in the code start to become numerous
> >> > +     * it will be necessary to reduce the granularity of this critical
> >> > +     * section.
> >> > +     */
> >>
> >> Please add the same comment (and a rcu_read_lock/unlock pair replacing
> >> the ramlist mutex) in ram_save_iterate, too.
> >
> > Just double checking on this particular change. In practice ram_save
> > manipulates the ram_list indirectly through ram_save_block. But I'm
> > assuming you want this change because of the ram state info that
> > persists between calls to ram_save (ram_list version in particular).
>
> ram_list.version is not really a problem, but last_seen_block has to
> persist across ram_save_block calls.

Got it. that's a subtle point.

> > Also, there is potential for the callback functions
> > ram_control_*_iterate to manipulate the ram_list.
>
> I think that's right now not possible (and they could use
> rcu_read_lock/unlock as well).

Yeah. So how about we say for now that the rcu critical section status upon entry to the ram_control_*_iterate functions is undefined. I'll make some updates.

Mike

reply via email to

[Prev in Thread] Current Thread [Next in Thread]