Messages in this thread | | | Date | Tue, 26 Oct 2010 11:10:58 +0200 | From | Tejun Heo <> | Subject | Re: [PATCH] MN10300: Fix the PERCPU() alignment to allow for workqueues |
| |
Hello,
On 10/26/2010 12:41 AM, David Howells wrote: > PERCPU() alignment on MN13000, however, is only 32 bytes as set in > vmlinux.lds.S. So we set this to PAGE_SIZE (4096) to match most other arches > and stick a comment in alloc_cwqs() for anyone else who triggers the assertion.
Ah, okay, but I'm not quite sure how that would affect the alignment of dynamically allocated percpu memory. Is this SMP or UP build? Can you please double check the bug doesn't trigger with the section alignment updated?
> - PERCPU(32) > + PERCPU(PAGE_SIZE)
Hmmm... during initialization, the initial percpu memory is re-allocated using bootmem allocator with proper alignment and the output section is just used as data source and discarded once init is complete. So, unless I'm mistaken, I don't think this would affect anything. That said, I think it might be better to just remove the alignment parameter from the macro and force align to PAGE_SIZE. It doesn't really help anything.
Thanks.
-- tejun
| |