Hi, Peter,

On 2023/3/8 下午10:58, Peter Xu wrote:
On Wed, Mar 08, 2023 at 06:03:45AM -0800, Chuang Xu wrote:
IIUC, Do you mean that different ways to get flatview are tricky?
Yes, and properly define when to use which.

As you said, it's slightly beyond what this series does. Maybe it would be
better if we discuss it in a new series and keep this series at v6?
what's your take?
Quotting your test result:

                         time of loading non-iterable vmstate
before                                  112 ms
long's patch applied                    103 ms
my patch applied                         44 ms
both applied                             39 ms
add as_to_flat_rcu                       19 ms

If introducing address_space_to_flatview_rcu() can further half the time,
maybe still worth it?

The thing is the extra _rcu() doesn't bring the major complexity, IMHO.  It
brings some on identifying which is really safe to not reference a latest
flatview (it seems to me only during a commit() hook..).

The major complexity still comes from the nested enforced commit() during
address_space_to_flatview() but that is already in the patchset.

Thanks,

OK, let me continue to finish v7.

Here I list some TODOs in v7:

1. squash fix into patch1 of yours.
2. introduce address_space_to_flatview_rcu()
3. add specific comment to define when to use which as_to_flat()
4. Does enforce commit() need further modification or keep current status?
   Looks like you have some new thoughts on it?

Are there any other missing points?

Thanks!


Reply via email to