On Sat, Dec 28, 2013 at 10:30:24PM -0800, Christoffer Dall wrote:
> > +
> > + if (s != (s & ~(pagesize - 1))) {
>
> you're just testing 'if (s & (pagesize -1))' right?
yeah, I'll simplify that.
>
> > + s += pagesize;
> > + s &= ~(pagesize - 1);
> > + p = (void *)s;
> > + }
>
> a one-line comment on this block saying 'page-align start of heap would
> be nice.
added
>
> > +
> > + while (size >= pagesize) {
> > + *(void **)p = free_head;
> > + free_head = p;
> > + p += pagesize;
> > + size -= pagesize;
> > + }
>
> you could also be nice and comment this block of code, saying something
> like "set up linked list of free pages using the pages themselves as the
> data structure" if you should feel so inclined.
added "link free pages"
>
> why are you not trusting start to be page aligned but you are trusting
> size to be? If size is smaller than pagesize then this loop will go
> nuts won't it?
I don't see how. As soon as size is less than pagesize we won't
[re]enter the loop, and thus it can never go negative (big positive).
drew
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html