Bug 1714657
Summary: | Valgrind reports errors and lost memory when running rpm -Uvh with rpm-plugin-systemd-inhibit | |||
---|---|---|---|---|
Product: | Red Hat Enterprise Linux 8 | Reporter: | Jan Pazdziora <jpazdziora> | |
Component: | rpm | Assignee: | Panu Matilainen <pmatilai> | |
Status: | CLOSED ERRATA | QA Contact: | Eva Mrakova <emrakova> | |
Severity: | medium | Docs Contact: | ||
Priority: | medium | |||
Version: | 8.0 | CC: | awilliam, emrakova, ffesti, pmatilai | |
Target Milestone: | rc | Keywords: | Triaged | |
Target Release: | 8.0 | |||
Hardware: | Unspecified | |||
OS: | Unspecified | |||
Whiteboard: | ||||
Fixed In Version: | rpm-4.14.2-25.el8 | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | ||
Clone Of: | ||||
: | 1798401 (view as bug list) | Environment: | ||
Last Closed: | 2019-11-05 22:22:37 UTC | Type: | Bug | |
Regression: | --- | Mount Type: | --- | |
Documentation: | --- | CRM: | ||
Verified Versions: | Category: | --- | ||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
Cloudforms Team: | --- | Target Upstream Version: | ||
Embargoed: |
Description
Jan Pazdziora
2019-05-28 14:15:49 UTC
Right, there are actually multiple leaks in there: - the ones from systemd-inhibit are not rpm leaks as such, its dbus internal memory but we should be calling dbus_shutdown() to mop it up - while looking at this, spotted an unrelated memleak from file triggers on erasure - one related to verification, already fixed upstream but not yet in rhel First two are fixed in https://github.com/rpm-software-management/rpm/pull/718, the verication thing (which is by far the worst one) in https://github.com/rpm-software-management/rpm/commit/788935c9ea9d2f469f24be10a9fa998594046731. All of these should be fixed, so the "expected result" output here is bogus, no definitely/indirectly/possibly lost bytes should ever be present. Some amount of "still reachable" is to be expected with librpm though. devel_ack+ for fixing all three leaks. *** Bug 1714652 has been marked as a duplicate of this bug. *** I don't believe this is a safe change. After a bunch of debugging, it seems that it breaks dnfdaemon in Fedora: https://bugzilla.redhat.com/show_bug.cgi?id=1750575#c30 I don't think RHEL 8 ships dnfdaemon, but I believe that at least theoretically any process that both uses dbus itself and uses the RPM Python bindings (or I guess librpm directly) could run into this problem if it happens to do anything that triggers this `dbus_shutdown()` call. (In reply to Adam Williamson from comment #13) > I don't believe this is a safe change. After a bunch of debugging, it seems > that it breaks dnfdaemon in Fedora: There are multiple other "normal" leaks being fixed via this bug as well, so we need to be careful with what "this change" means: yes, we'll need to revert (or rather, drop) the part that dbus_shutdown(). To be exact, the 0001-Fully-shutdown-DBUS-on-systemd_inhibit-cleanup-RhBug.patch patch. yep, sorry, I was pretty tired after an all-day debugging session so I didn't notice this was actually two commits! Indeed that's what I meant. 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. https://access.redhat.com/errata/RHBA-2019:3584 |