'atom_size' configuration when a generic setup_per_cpu_ares() is used

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Greetings,

Nowadays I'm working on 'IRQ Stack' on ARM64 [1]. Like x86, I'd like to
utilize percpu infrastructure for stack allocation, but I've got a challenge.

ARM64 uses a generic setup_per_cpu_areas() described in mm/percpu.c. IOW,
__per_cpu_offset[] is PAGE_SIZE aligned, and it is not possible to allocate
stack with an alignment which is bigger than PAGE_SIZE. At first glance,
the alignment of __per_cpu_offset[] looks controlled by 'atom_size' argument
of pcpu_embed_first_chunk(), but I soon realize that the 'atom_size' is not
configurable in this case.

It would be redundant to introduce ARM64-specific setup_per_cpu_areas() for
a single parameter, atom_size, change. At the same time, it is doubtable to
define an interface, like PERCPU_ENOUGH_ROOM [2], for a single arch support.
I'm not sure which approach is better than the other.

Any comments are greatly welcome.

Thanks in advance!

[1] https://lkml.org/lkml/2015/10/17/75
[2] Since no code uses PERCPU_ENOUGH_ROOM, it could be dropped as clean-up.

--
Best Regards
Jungseok Lee

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]