Bug 591504 - sparse core files performance hit
sparse core files performance hit
Status: CLOSED CURRENTRELEASE
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: abrt (Show other bugs)
6.0
x86_64 Linux
low Severity low
: rc
: ---
Assigned To: Jiri Moskovcak
Michal Nowak
:
Depends On: 588945
Blocks:
  Show dependency treegraph
 
Reported: 2010-05-12 08:35 EDT by Jiri Moskovcak
Modified: 2015-02-01 17:52 EST (History)
15 users (show)

See Also:
Fixed In Version: abrt-1.1.1-1.el6
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 588945
Environment:
Last Closed: 2010-07-02 14:47:35 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Jiri Moskovcak 2010-05-12 08:35:49 EDT
+++ This bug was initially created as a clone of Bug #588945 +++

Description of problem:
When the core file is large and sparse abrtd slows down the system up to 240x.
GDB gdb.base/bigcore.exp explicitly exploits this problem but it can be seen in other real world core dumps.
If nothing else abrtd should at least optimize write(usercorefile,zeroes) to lseek().

Version-Release number of selected component (if applicable):
abrt-1.0.9-2.fc12.x86_64

How reproducible:
Always.

Steps to Reproduce:
Download some gdb.
./configure
make
cd gdb/testsuite
make site.exp
time runtest gdb.base/bigcore.exp
service abrtd stop
time runtest gdb.base/bigcore.exp

Actual results:
real	1m41.021s (Keith Seitz has reported ~8min on his box)
real	0m2.223s

Expected results:
real	<few secs>
real	0m2.223s

Additional info:
read(1, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
write(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096
...
  PID TTY      STAT   TIME COMMAND
   12 ?        S      0:01  \_ [khelper]
21699 ?        D      0:02  |   \_ /usr/libexec/abrt-hook-ccpp /var/cache/abrt 21696 6 502 17179869184
...
/proc/21699/fd/
lr-x------ 1 root root 64 2010-05-04 23:31 0 -> pipe:[11399566]
lrwx------ 1 root root 64 2010-05-04 23:31 1 -> /var/cache/abrt/ccpp-1273008577-21696/coredump\ (deleted)
lrwx------ 1 root root 64 2010-05-04 23:31 2 -> socket:[11401038]
l-wx------ 1 root root 64 2010-05-04 23:31 3 -> /home/.../gdb/testsuite/core.21696

--- Additional comment from jan.kratochvil@redhat.com on 2010-05-04 17:55:56 EDT ---

Maybe some hardlink would also help etc., unaware what abrt does there.

--- Additional comment from dvlasenk@redhat.com on 2010-05-07 08:47:03 EDT ---

Created an attachment (id=412336)
Proposed fix

Run tested.

--- Additional comment from dvlasenk@redhat.com on 2010-05-07 09:15:20 EDT ---

"time runtest gdb.base/bigcore.exp" with this patch went down from 

real	9m23.708s
user	0m0.285s
sys	0m22.819s

to

real	0m35.821s
user	0m0.318s
sys	0m8.738s
Comment 1 RHEL Product and Program Management 2010-05-12 09:17:36 EDT
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux major release.  Product Management has requested further
review of this request by Red Hat Engineering, for potential inclusion in a Red
Hat Enterprise Linux Major release.  This request is not yet committed for
inclusion.
Comment 4 releng-rhel@redhat.com 2010-07-02 14:47:35 EDT
Red Hat Enterprise Linux Beta 2 is now available and should resolve
the problem described in this bug report. This report is therefore being closed
with a resolution of CURRENTRELEASE. You may reopen this bug report if the
solution does not work for you.

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