Bug 2293022
Summary: | warning: posix.fork(): .fork(), .exec(), .wait() and .redirect2null() are deprecated, use rpm.execute() instead | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Zhang Yi <yizhan> |
Component: | glibc | Assignee: | Carlos O'Donell <codonell> |
Status: | CLOSED DUPLICATE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | unspecified | ||
Version: | rawhide | CC: | arjun.is, codonell, dj, fberat, fweimer, igor.raits, jlaw, josmyers, mcermak, mcoufal, mdomonko, mfabian, packaging-team-maint, petersen, pfrankli, pmatilai, sipoyare, skolosov, suraj.ghimire7 |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2024-06-19 15:31:18 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
Zhang Yi
2024-06-19 02:25:34 UTC
I think this is glibc-common's %transfiletriggerpostun (which does call posix.fork() etc) firing on /lib/modules: %transfiletriggerin common -P 2000000 -p <lua> -- /lib /usr/lib /lib64 /usr/lib64 A deprecation warning is not a bug. Reassiging to glibc where these originate from. But, I also see this in glibc.spec, added last December according to git: -- We must not use rpm.execute because this is a RPM 4.15 features and -- we must still support downstream bootstrap with RPM 4.14 and missing -- containerized boostrap. So it's a bit of a bind here, and we'll need to figure out something. Is the rpm 4.14 version requirement from RHEL 8 or something else, and how long do you need to maintain this compatibility? Panu, The rpm 4.14 version requirement comes from the CentOS Stream 10 and RHEL10 bootstrap effort. See https://issues.redhat.com/browse/RHEL-19045 I expect that we should be able to clean this up for Rawhide and Fedora 41 in short order. Marking this as a duplicate of an earlier issue we have for tracking this cleanup. *** This bug has been marked as a duplicate of bug 2291869 *** Ack, that's good news then, thanks for the clarification. The main thing is that this is more of a temporary need for a while more, and not "until RHEL 8 goes out of support" kind of thing. FWIW, I'm open to temporarily silencing the warning in Fedora if it starts getting on your nerves in the meanwhile. (In reply to Panu Matilainen from comment #1) > I think this is glibc-common's %transfiletriggerpostun (which does call > posix.fork() etc) firing on /lib/modules: > > %transfiletriggerin common -P 2000000 -p <lua> -- /lib /usr/lib /lib64 > /usr/lib64 > > A deprecation warning is not a bug. Reassiging to glibc where these > originate from. > > But, I also see this in glibc.spec, added last December according to git: > > -- We must not use rpm.execute because this is a RPM 4.15 features and > -- we must still support downstream bootstrap with RPM 4.14 and missing > -- containerized boostrap. > > So it's a bit of a bind here, and we'll need to figure out something. Is the > rpm 4.14 version requirement from RHEL 8 or something else, and how long do > you need to maintain this compatibility? That's the easy part, we can just use rpm.execute if it's available for that. The hard part is this one: -- (4) On upgrades, restart systemd if installed. "systemctl -q" does -- not suppress the error message (which is common in chroots), so -- open-code rpm.execute with standard error suppressed. if tonumber(arg[2]) >= 2 and posix.access("%{_prefix}/bin/systemctl", "x") then local pid = posix.fork() if pid == 0 then posix.redirect2null(2) posix.exec("%{_prefix}/bin/systemctl", "daemon-reexec") elseif pid > 0 then posix.wait(pid) end end We really want that posix.redirect2null(2) part, and we can't get that with rpm.execute today. Reported here as well: posix.redirect2null deprecated without replacement <https://github.com/rpm-software-management/rpm/issues/3192> |