Hide Forgot
Description of problem: Kernel RPM packages built from source fail to install due to wrong requirements: 'kysm' instead of kernel' The issue looks very similar to bugs https://bugzilla.redhat.com/show_bug.cgi?id=642768 and https://bugzilla.redhat.com/show_bug.cgi?id=767738 Version-Release number of selected component (if applicable): 9.0.3-44 How reproducible: always Steps to Reproduce: Set LC_ALL=en_US.UTF-8 and build kmod package from source, eg: rpmbuild --rebuild vmware-tools-pvscsi-1.2.3.0-2.6.32.71.el6.i686.5.el6.src.rpm and try to install the resultin binary rpm. It will fail. Actual results: error: Failed dependencies: ... ksym(free_pages) = 0x4302d0eb is needed by kmod-vmware-tools-pvscsi-0:1.2.3.0-2.6.32.573.el6.x86_64.5.el6.x86_64 ksym(scsi_add_device) = 0x9d8c0f66 is needed by kmod-vmware-tools-pvscsi-0:1.2.3.0-2.6.32.573.el6.x86_64.5.el6.x86_64 Expected results: No failed depenencies on kernel symbols. Additional info: The issue can be fixed easily by replacing all occurrences of LANG=C with LC_ALL=C in /usr/lib/rpm/redhat/find-requires.ksyms
Created attachment 1119548 [details] repclace LANG=C with LC_ALL=C Attaching a patch that fixes the problem. All it does is s/LANG=C/LC_ALL=C/g.
Yes, we can fix it in 6.8.
The real problem here is: LANG=C join -t '\t' -j 1 ... Delimiter '\t' is literally interpreted as '\t' and not as a tabulator. This confuses join command and it is not able to join input data correctly. I replaced '\t' with $'\t' and to be 100% sure, I also added LC_LANG=C. Fixed in redhat-rpm-config-9.0.3-48.el6
s/LC_LANG/LC_ALL/
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://rhn.redhat.com/errata/RHBA-2016-0948.html