| Summary: | highmem support with preempt-rt for powerpc | ||
|---|---|---|---|
| Product: | [Yocto Project Subprojects] Kernel | Reporter: | Vasudevan <inbox.vasu> |
| Component: | kernel-configuration | Assignee: | Bruce Ashfield <bruce.ashfield> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | enhancement | ||
| Priority: | Undecided | CC: | yp.kernel.watcher, yp.watcher |
| Version: | 2.0 | ||
| Target Milestone: | --- | ||
| Hardware: | Other | ||
| OS: | ppc | ||
| Whiteboard: | |||
| OS type for building Yocto: | --- | Type of Regression: | --- |
| Verified: | Documentation change: | Don't know | |
|
Description
Vasudevan
2014-05-28 09:46:30 UTC
HIGHMEM has periodically been a problem for preempt-rt, due to the locking semantics in the allocator, kmap_atomic and a number of migration issues. While it was sometimes enabled on pre 3.0-rt kernel's, it caused issues when used under load. I'm sure you've seen the mailing list posts on the topic, but I'll reference a few here, just for completeness sake. HIGHMEM was disabled for all architectures in the 3.0-rt release, due to the hacked implementation and the amount of runtime issues it was causing, this thread has the details: https://lkml.org/lkml/2011/7/27/428 It stayed disabled for all architectures until the 3.6-rt release, where it was re-enabled for ARM and x86 due to some fixes in the impacted code: https://lkml.org/lkml/2013/2/4/377 There have been other discussions specifically about preempt-rt, powerpc and highmem: http://marc.info/?l=linux-rt-users&m=134271352628041&w=3, with no resolution to the issues in sight. Only doing a different high/low mem split has currently been offered as a workaround. There are better chances to get this working in the latest 3.10 or 3.14 -rt releases, but I don't know of any active development to get it working for ppc32, but there of course is a reference in the ARM and x86 changes. |