Bug 1659055

Summary: v4l-utils: Work around rpm bug corrupting BPF files
Product: [Fedora] Fedora Reporter: Florian Weimer <fweimer>
Component: v4l-utilsAssignee: Hans de Goede <hdegoede>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 29CC: hdegoede, mchehab
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: v4l-utils-1.16.3-1.fc29 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-12-21 19:39:45 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:
Bug Depends On: 1659047, 1716380    
Bug Blocks:    
Attachments:
Description Flags
spec file patch none

Description Florian Weimer 2018-12-13 13:38:35 UTC
Created attachment 1514059 [details]
spec file patch

The BPF files in v4l-utils-1.16.2-2.fc29 (e.g., /usr/lib/udev/rc_keymaps/protocols/grundig.o) are corrupt.  For example, the section names shown by “readelf -SW” are wrong or missing.

The root cause is a bug in debugedit, see bug 1659047.  As a workaround, it is possible to remove the executable bit from the .o files.  See the attached patch (but I have not verified that the .o files will still be loaded by udev).

Comment 1 Florian Weimer 2018-12-14 17:02:44 UTC
I will install the workaround next week if there aren't any objections.

Comment 2 Mauro Carvalho Chehab 2018-12-14 17:49:48 UTC
I suspect that the core issue is a bug at rpm, as reported on this issue:

    https://github.com/rpm-software-management/rpm/pull/604

It seems that the fix reached rpm upstream 3 days ago. It should be noticed that on non-x86 archs it isn't even possible to build the BPF files because of the executable flag.

So, I suspect that a better solution would be to port back this patch to rpm package:

https://github.com/rpm-software-management/rpm/pull/604/commits/37d2a0b033bceb53a6a89fe1714c8fe3830c504b

Comment 3 Mauro Carvalho Chehab 2018-12-14 17:56:57 UTC
(In reply to Florian Weimer from comment #1)
> I will install the workaround next week if there aren't any objections.

No objections from my side, but I guess applying the fix at the rpm package would be better. Btw, once applied either solution, we can probably enable BPF for non-x86 archs as well.

Comment 4 Mauro Carvalho Chehab 2018-12-17 13:56:21 UTC
v4l-utils version 1.16.3 now comes with the patch suggested at:

   https://github.com/kamomil/v4l-utils/commit/6155b042ee7541944173b1947ddbc038a2f544bf

That should likely solve the issue. I'll do a scratch build in order to test it, enabling BPF on all archs.

Comment 5 Fedora Update System 2018-12-19 03:36:50 UTC
v4l-utils-1.16.3-1.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-c6d68bd1f0

Comment 6 Fedora Update System 2018-12-21 19:39:45 UTC
v4l-utils-1.16.3-1.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.