Messages in this thread | | | Date | Thu, 15 Apr 2010 17:00:15 +0900 | Subject | Re: [PATCH 2/6] change alloc function in pcpu_alloc_pages | From | Minchan Kim <> |
| |
On Thu, Apr 15, 2010 at 4:21 PM, Tejun Heo <tj@kernel.org> wrote: > Hello, > > On 04/15/2010 10:31 AM, Minchan Kim wrote: >> Hi, Tejun. >>> This being a pretty cold path, I don't really see much benefit in >>> converting it to alloc_pages_node_exact(). It ain't gonna make any >>> difference. I'd rather stay with the safer / boring one unless >>> there's a pressing reason to convert. >> >> Actually, It's to weed out not-good API usage as well as some >> performance gain. But I don't think to need it strongly. >> Okay. Please keep in mind about this and correct it if you confirms >> it in future. :) > > Hmm... if most users are converting over to alloc_pages_node_exact(), > I think it would be better to convert percpu too. I thought it was a > performance optimization (of rather silly kind too). So, this is to > weed out -1 node id usage? Wouldn't it be better to update > alloc_pages_node() such that it whines once per each caller if it's > called with -1 node id and after updating most users convert the > warning into WARN_ON_ONCE()? Having two variants for this seems > rather extreme to me.
Yes. I don't like it. With it, someone who does care about API usage uses alloc_pages_exact_node but someone who don't have a time or careless uses alloc_pages_node. It would make API fragmentation and not good. Maybe we can weed out -1 and make new API which is more clear.
* struct page *alloc_pages_any_node(gfp_t gfp_mask, unsigned int order); * struct page *alloc_pages_exact_node(int nid, gfp_mask, unsigned int order);
So firstly we have to make sure users who use alloc_pages_node can change alloc_pages_node with alloc_pages_exact_node.
After all of it was weed out, I will change alloc_pages_node with alloc_pages_any_node.
-- Kind regards, Minchan Kim -- 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/
| |