RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 463281 - [LTC 6.0 FEAT] 201201:Large page flexibility for POWER
Summary: [LTC 6.0 FEAT] 201201:Large page flexibility for POWER
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: kernel
Version: 6.0
Hardware: ppc64
OS: All
medium
medium
Target Milestone: alpha
: 6.0
Assignee: Kevin W Monroe
QA Contact: Martin Jenner
URL:
Whiteboard:
Depends On:
Blocks: 356741 RHEL6Kernel2.6.27
TreeView+ depends on / blocked
 
Reported: 2008-09-22 20:10 UTC by IBM Bug Proxy
Modified: 2010-05-06 15:53 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-09-23 22:13:38 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description IBM Bug Proxy 2008-09-22 20:10:55 UTC
=Comment: #0=================================================
Emily J. Ratliff <emilyr.com> - 2008-09-16 18:24 EDT
1. Feature Overview:
Feature Id:	[201201]
a. Name of Feature:	Large page flexibility for POWER
b. Feature Description
The ability to flexibly support large pages for POWER

2. Feature Details:
Sponsor:	PPC - P
Architectures:
ppc64

Arch Specificity: Both
Affects Core Kernel: Yes
Delivery Mechanism: Direct from community
Category:	Performance
Request Type:	Kernel - Enhancement from IBM
d. Upstream Acceptance:	Accepted
Sponsor Priority	2
f. Severity: Medium
IBM Confidential:	no
Code Contribution:	IBM code
g. Component Version Target:	2.6.27
Performance Assistance:	yes

3. Business Case
Large pages enhance performance, but are not optimal for all circumstances.  Customers need the
ability to deploy this feature flexibly.

4. Primary contact at Red Hat: 
John Jarvis
jjarvis

5. Primary contacts at Partner:
Project Management Contact:
Michael Hohnbaum, hbaum.com, 503-578-5486

Technical contact(s):

Paul Mackerras, pmac.com

Comment 1 Bill Nottingham 2008-10-01 20:53:08 UTC
Is there any userspace component to this feature? What do you mean by 'flexibly'?

Comment 2 IBM Bug Proxy 2008-10-02 10:15:56 UTC
The userspace component of this feature is the libhugetlbfs library. For RHEL, we would like to use libhugetlbfs 2.1 (not released yet) as a basis. That library is used to back text/data, heap and shared memory with hugepages automatically without application awareness if requested by the user. The library also has a basic API for developers to easily get regions of memory backed by hugepages.

The "flexibility" aspect refers to the kernel features which are
o Anti-fragmentation (enabled automatically)
o Contiguity-aware page reclaim (sometimes referred to as lumpy reclaim)
o Memory partitioning (kernelcore= and movablecore= boot parameters)
o Dynamic hugepage pool resizing (enabled via proc)
o Reliable MAP_PRIVATE behaviour (no SIGKILLs for the process that called mmap())

In older kernels, hugepages had to be reserved at boot-time and the pool couldn't be shrunk and regrown later with any degree of reliability. Our expection is that the sizing of the pool will be much more flexible for an administrator in 2.6.27. The dynamic hugepage pool will allow an administrator to set a hard and soft size to the hugepage pool and the memory partitioning can be used to very reliably predict what the pool can grow to no matter what the workload is.

"Flexibly" refers to the expectation that large pages can be used in more situations with less grief than previous kernels where the pool sizes were relatively static and mistakes could result in killed applications.

Comment 3 Bill Nottingham 2008-10-02 14:05:12 UTC
Can you update this bug when the new libhugetlbfs is released?

Comment 4 IBM Bug Proxy 2008-10-02 16:16:41 UTC
Note that the userspace component is tracked via IBM bugzilla 48000, RH bugzilla 463613

[LTC 6.0 FEAT] 201194:libhugetlbfs package update

Comment 5 Bill Nottingham 2008-10-02 16:23:03 UTC
OK then, setting to MODIFIED as RHEL 6 will ship a new enough kernel for the kernel side of this feature.

The feature requested has already been accepted into the upstream code base
planned for the next major release of Red Hat Enterprise Linux.

When the next milestone release of Red Hat Enterprise Linux 6 is available,
please verify that the feature requested is present and functioning as
desired.

Comment 6 IBM Bug Proxy 2009-03-02 21:30:49 UTC
This is upstream in 2.6.27
sha1 id: 0d9ea75443dc7e37843e656b8ebc947a6d16d618

Comment 7 Kevin W Monroe 2009-09-23 22:13:38 UTC
Closing - included in Red Hat Enterprise Linux 6.

Comment 8 IBM Bug Proxy 2009-11-16 16:20:35 UTC
------- Comment From luciojhc.com 2009-11-16 11:10 EDT-------
Here are the results summary for libhugetlbfs-2.6-2 tests on PPC64:

********** TEST SUMMARY
*                      16M
*     Total testcases:    95     98
*             Skipped:    20      0
*                PASS:    75     94
*                FAIL:     0      2
*    Killed by signal:     0      2
*   Bad configuration:     0      0
*       Expected FAIL:     0      0
*     Unexpected PASS:     0      0
* Strange test result:     0      0
**********

And the failures are these:

HUGETLB_VERBOSE=0 HUGETLB_MINIMAL_COPY=no xBDT.linkhuge_nofd (16M: 64): Failed
to map hugepage segment 1: 12000000-20000000 (errno=12)

HUGETLB_MINIMAL_COPY=no xBDT.linkhuge (16M: 64):        Failed to map hugepage
segment 1: 12000000-20000000 (errno=12)

HUGETLB_SHARE=1 xBDT.linkshare (16M: 64):       Failed to map hugepage segment
1: 12000000-20000000 (errno=12)
FAIL    Child 1 killed by signal: Aborted
HUGETLB_SHARE=1 xBDT.linkshare (16M: 64):       Failed to map hugepage segment
1: 12000000-20000000 (errno=12)
FAIL    Child 1 killed by signal: Aborted

Mel, are these failures expected?

Comment 9 IBM Bug Proxy 2009-11-17 12:30:43 UTC
------- Comment From luciojhc.com 2009-11-17 07:26 EDT-------
Ok, just verified these are expected failures.

So feature is verified and working fine.

Comment 10 IBM Bug Proxy 2010-05-06 15:53:32 UTC
------- Comment From ebmunson.com 2010-05-06 11:49 EDT-------
Verified with RHEL 6 Snap 1


Note You need to log in before you can comment on or make changes to this bug.