Re: [PATCH -next 1/2] PM: hibernate: fix spelling mistake for annotation

From: Rafael J. Wysocki
Date: Sat Nov 05 2022 - 14:10:16 EST


On Fri, Nov 4, 2022 at 8:31 AM TGSP <tgsp002@xxxxxxxxx> wrote:
>
> 在 2022/11/4 00:25, Rafael J. Wysocki 写道:
> > On Tue, Nov 1, 2022 at 3:28 AM TGSP <tgsp002@xxxxxxxxx> wrote:
> >>
> >> From: xiongxin <xiongxin@xxxxxxxxxx>
> >>
> >> The actual calculation formula in the code below is:
> >>
> >> max_size = (count - (size + PAGES_FOR_IO)) / 2
> >> - 2 * DIV_ROUND_UP(reserved_size, PAGE_SIZE);
> >>
> >> But function comments are written differently, the comment is wrong?
> >
> > It is, and it is more serious than just a spelling mistake.
> >
> >> By the way, what exactly do the "/ 2" and "2 *" mean?
> >
> > Every page in the image is a copy of an existing allocated page, so
> > room needs to be made for the two, except for the "IO pages" and
> > metadata pages that are not copied. Hence, the division by 2.
> >
> > Now, the "reserved_size" pages will be allocated right before creating
> > the image and there will be a copy of each of them in the image, so
> > there needs to be room for twice as many.
>
> According to your interpretation, the formula should be:
> max_size = (count - 2 * DIV_ROUND_UP(reserved_size, PAGE_SIZE)
> - (size + PAGES_FOR_IO)) / 2
>
> Am I right?

No, you aren't.

The formula is fine. I've attempted to explain it to you, but perhaps
it's not been clear enough, sorry about that.