Bug 539685
Summary: | [Intel 5.5 FEAT] Fix spinlock issue which causes performance impact on large systems [rhel-5.4.z] | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 5 | Reporter: | Benjamin Kahn <bkahn> |
Component: | kernel | Assignee: | Jiri Pirko <jpirko> |
Status: | CLOSED ERRATA | QA Contact: | Red Hat Kernel QE team <kernel-qe> |
Severity: | high | Docs Contact: | |
Priority: | urgent | ||
Version: | 5.5 | CC: | anton, cward, dhoward, dzickus, emcnabb, hjia, jane.lv, jpirko, jtluka, jvillalo, ltroan, luyu, lwoodman, pm-eus, qcai, rkhan, rpacheco, syeghiay |
Target Milestone: | rc | Keywords: | FutureFeature, OtherQA, ZStream |
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | kernel-2.6.18-164.7.1.el5 | Doc Type: | Enhancement |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2009-12-15 17:20:35 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: | |||
Bug Depends On: | 526078 | ||
Bug Blocks: |
Description
Benjamin Kahn
2009-11-20 20:19:19 UTC
in kernel-2.6.18-164.7.1.el5 Please do NOT transition this bugzilla state to VERIFIED until our QE team has sent specific instructions indicating when to do so. This the correct patch for this issue. It resolves a performance problem seen running AIM7 as well as several other large benchmarks that do lots of forking, mmap()ing, munmap()ing and exit()ing while the system is under memory pressure. This patch was introduced in the upstream kernel in 2.6.32. ----------------------------------------------------------------------------- diff --git a/mm/mmap.c b/mm/mmap.c index 04dfc7e..d80fa9d 100644 --- a/mm/mmap.c +++ b/mm/mmap.c @@ -559,9 +559,9 @@ again: remove_next = 1 + (end > next->vm_end); /* * When changing only vma->vm_end, we don't really need - * anon_vma lock: but is that case worth optimizing out? + * anon_vma lock. */ - if (vma->anon_vma) + if (vma->anon_vma && (insert || importer || start != vma->vm_start)) anon_vma = vma->anon_vma; if (anon_vma) { spin_lock(&anon_vma->lock); ------------------------------------------------------------------------------- Larry Woodman An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHSA-2009-1670.html |