Bug 796297

Summary: turn off CONFIG_CC_OPTIMIZE_FOR_SIZE
Product: Red Hat Enterprise MRG Reporter: Clark Williams <williams>
Component: realtime-kernelAssignee: John Kacur <jkacur>
Status: CLOSED ERRATA QA Contact: David Sommerseth <davids>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 2.1CC: bhu, lgoncalv, ovasik, srostedt
Target Milestone: 2.1.5   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
* Cause: CONFIG_CC_OPTIMIZE_FOR_SIZE set with assumption that smaller code would yield hot cache lines and good performance * Consequence: this config caused gcc to generate jump-to-jump code which causes cache line bouncing, hurting performance * Fix: turn off CONFIG_CC_OPTIMIZE_FOR_SIZE * Result:slightly larger kernel but better cache utilization
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-04-18 20:04:04 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Clark Williams 2012-02-22 16:18:59 UTC
Description of problem:

Originally this config was set with the assumption that smaller code size would yield hot cache lines and faster code, but that has not been shown to occur.

Comment 3 David Sommerseth 2012-04-04 13:04:34 UTC
Verified through config review.

# grep CONFIG_CC_OPTIMIZE_FOR_SIZE /boot/config-3.0.*
/boot/config-3.0.18-rt34.53.el6rt.x86_64:CONFIG_CC_OPTIMIZE_FOR_SIZE=y
/boot/config-3.0.25-rt44.57.el6rt.x86_64:# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
#

CONFIG_CC_OPTIMIZE_FOR_SIZE is removed in the new kernel
 -> VERIFIED

Comment 4 Clark Williams 2012-04-11 15:08:21 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
* Cause: CONFIG_CC_OPTIMIZE_FOR_SIZE set with assumption that smaller code would yield hot cache lines and good performance
* Consequence: this config caused gcc to generate jump-to-jump code which causes cache line bouncing, hurting performance
* Fix: turn off CONFIG_CC_OPTIMIZE_FOR_SIZE
* Result:slightly larger kernel but better cache utilization

Comment 5 errata-xmlrpc 2012-04-18 20:04:04 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2012-0496.html