mm, treewide: redefine MAX_ORDER sanely
[sfrench/cifs-2.6.git] / kernel / events / ring_buffer.c
index d6bbdb7830b2c8d897a50b99d950ac738e315e9a..a0433f37b0243a334a6bf45a95bd08ab527a0008 100644 (file)
@@ -609,8 +609,8 @@ static struct page *rb_alloc_aux_page(int node, int order)
 {
        struct page *page;
 
-       if (order >= MAX_ORDER)
-               order = MAX_ORDER - 1;
+       if (order > MAX_ORDER)
+               order = MAX_ORDER;
 
        do {
                page = alloc_pages_node(node, PERF_AUX_GFP, order);
@@ -814,7 +814,7 @@ struct perf_buffer *rb_alloc(int nr_pages, long watermark, int cpu, int flags)
        size = sizeof(struct perf_buffer);
        size += nr_pages * sizeof(void *);
 
-       if (order_base_2(size) >= PAGE_SHIFT+MAX_ORDER)
+       if (order_base_2(size) > PAGE_SHIFT+MAX_ORDER)
                goto fail;
 
        node = (cpu == -1) ? cpu : cpu_to_node(cpu);