New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix segfault in repo_internalize_trigger (RhBug:1375895) #596
Conversation
this may also fix https://bugzilla.redhat.com/show_bug.cgi?id=1444262 , https://bugzilla.redhat.com/show_bug.cgi?id=1434283 and/or https://bugzilla.redhat.com/show_bug.cgi?id=1480846 ; those are all similar crashes in the same place, but reached via different paths from PackageKit. Whether this fixes them or not depends whether the problem is that |
@AdamWill I'm trying to find out what happened in the other bugs. Basically looking for possibility, that in dnf exists libsolv repo with appdata (hawkey repo) set to null. But without success so far. |
yeah, that was the same path I went down, but I just can't find any case - the obvious possibilities are the repo creation bits, where a libsolv repo might get created, then hawkey repo init fail somehow, then the libsolv repo not get properly removed...but I can't see anything like that, at least not unless there's some subtle bug in freeing on the libsolv side. The other obvious possibility would be the hawkey repo somehow getting freed before the libsolv repo did, but I don't see that happening either. There were two less obvious possibilities I could see. One is the path that runs through The other is PackageKit sack caching. PackageKit actually has this mechanism for caching and reusing sacks. It's implemented in PK's dnf backend, in https://github.com/hughsie/PackageKit/blob/master/backends/dnf/pk-backend-dnf.c#L668-L685 and I think all the crashes I identified run through that. So it's possible that's related. I haven't dug into how those cached sacks could wind up with stale/broken repos, though. |
Re the sack cache in packagekit, I just played a bit with removing the cache and that made gnome-software noticeably slower. I'd rather avoid removing it if possible. |
I believe that the problem was caused by incored freeing of memory that was fixed by @jrohel, but I cannot find the commit. The code looks fine, therefore we can merge it. |
📌 Commit 81594e9 has been approved by |
https://bugzilla.redhat.com/show_bug.cgi?id=1375895 Closes: #596 Approved by: j-mracek
💥 Test timed out |
It'd be really good if we could find it, as then we could backport that for F27 and F28... |
Was it this? |
https://bugzilla.redhat.com/show_bug.cgi?id=1375895