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 463320 - [LTC 6.0 FEAT] 201443:Support barrier synchronization facility in POWER5 and POWER6 CPUs
Summary: [LTC 6.0 FEAT] 201443:Support barrier synchronization facility in POWER5 and ...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: kernel
Version: 6.0
Hardware: ppc64
OS: All
high
high
Target Milestone: alpha
: 6.0
Assignee: Ameet Paranjape
QA Contact: Martin Jenner
URL:
Whiteboard:
Depends On:
Blocks: 356741 RHEL6Kernel2.6.27
TreeView+ depends on / blocked
 
Reported: 2008-09-22 21:31 UTC by IBM Bug Proxy
Modified: 2010-10-18 14:26 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-11-12 23:20:59 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description IBM Bug Proxy 2008-09-22 21:31:03 UTC
=Comment: #0=================================================
Emily J. Ratliff <emilyr.com> - 2008-09-16 18:28 EDT
1. Feature Overview:
Feature Id:	[201443]
a. Name of Feature:	Support barrier synchronization facility in POWER5 and POWER6 CPUs
b. Feature Description
Kernel and library support for making the POWER5/6 barrier synchronization (BSR) facility available
to applications.  The BSR facility provides low-latency barrier synchronization, which is useful for
HPC and other multi-threaded applications that wish to wait until all threads have reached a certain
point in the program.  The kernel support will be a device driver for a /dev/bsr device (or
/dev/misc/bsr) which supports mmap and ioctl calls.  The ioctl call will be used to allocate a
section of the BSR facility, and mmap will be used to map the allocated BSR registers into
userspace.  A userspace library will provide an API similar to that provided by the AIX bsr_alloc,
bsr_query and bsr_free calls.

2. Feature Details:
Sponsor:	PPC
Architectures:
ppc64

Arch Specificity: Purely Arch Specific Code
Affects Core Kernel: Yes
Delivery Mechanism: Direct from community
Category:	Power
Request Type:	Kernel - Enhancement from IBM
d. Upstream Acceptance:	Accepted
Sponsor Priority	1
f. Severity: High
IBM Confidential:	no
Code Contribution:	IBM code
g. Component Version Target:	2.6.27

3. Business Case
HPC improvement. This will be needed for  parallel-processing applications so that the application
uses a BSR to perform barrier synchronization, which is a method for synchronizing the threads in
the parallel-processing application.

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

IBM Manager:
Pat Gaughen, gaughen.com

Comment 1 Bill Nottingham 2008-10-02 15:43:48 UTC
Is there a reason this isn't done via libc support in pthread_barrier_*?

Comment 2 IBM Bug Proxy 2008-10-15 16:21:26 UTC
pthread_barrier_* could use BSR, but with some major restrictions.

There is only one BSR per system and it has a limited size,

so it'd have to fall back on a normal implementation if

more than N threads used it (very tricky to detect that ahead of time

I think).

BSR is really too restrictive to be used in a general barrier

implementation like in the pthreads library.

Comment 3 Bill Nottingham 2008-10-15 16:57:01 UTC
Wouldn't this mean that the userspace library (or the app that called it) would have to do the exact same tests?

Comment 4 IBM Bug Proxy 2008-10-21 18:20:45 UTC
Yes, the library would have to acquire exclusive access to some or all of the BSR and fall back to a conventional barrier if it weren't available.  We're planning on using libbsr to handle exclusion for user's who want to access the BSR.  The expectation though it that on HPC machines there would be a single -- or at most a few apps -- which run at the same time, and there would not be heavy contention on the BSR in that environment.

Comment 5 IBM Bug Proxy 2009-03-02 21:11:08 UTC
this is in 2.6.27
sha1 id: fe9e8d53772b5ea9ccf8ea4e8f0f009a6885eb70

Comment 6 Bill Nottingham 2009-03-03 22:22:09 UTC
OK, marking as MODIFIED.

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 7 Kevin W Monroe 2009-11-12 23:20:59 UTC
Closing as support is available in current release.


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