Messages in this thread | | | Date | Tue, 4 Jan 2005 16:34:21 -0800 (PST) | From | Linus Torvalds <> | Subject | Re: Prezeroing V3 [1/4]: Allow request for zeroed memory |
| |
On Tue, 4 Jan 2005, Christoph Lameter wrote: > > This patch introduces __GFP_ZERO as an additional gfp_mask element to allow > to request zeroed pages from the page allocator.
Ok, let's start merging this slowly, and in particular, this 1/4 one looks pretty much like a cleanup regardless of whatever else happen, so let's just do it. However, for it to really be a cleanup, how about making _this_ part:
> + > + if (gfp_flags & __GFP_ZERO) { > +#ifdef CONFIG_HIGHMEM > + if (PageHighMem(page)) { > + int n = 1 << order; > + > + while (n-- >0) > + clear_highpage(page + n); > + } else > +#endif > + clear_page(page_address(page), order); > + }
Match the existing previous part:
> if (order && (gfp_flags & __GFP_COMP)) > prep_compound_page(page, order);
and just split it up into a "prep_zero_page(page, order)"? I dislike #ifdef's in the middle of deep functions. In the middle of a _trivial_ function it's much more palatable.
At that point at least part 1 ends up being a nice clean patch on its own, and should even shrink the code-size a bit. IOW, it not only is a cleanup, there is even a technical argument for it (even without worrying about the next stages).
Hmm?
Linus - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |