On 05/13/2019 01:22 PM, Damjan Marion wrote:
On 13 May 2019, at 19:15, Billy <bmcf...@redhat.com
<mailto:bmcf...@redhat.com>> wrote:
On Mon, May 13, 2019 at 10:18 AM Benoit Ganne (bganne) via
Lists.Fd.Io <http://lists.fd.io/> <bganne=cisco....@lists.fd.io
<mailto:cisco....@lists.fd.io>> wrote:
Hi Thomas,
> The external rdma driver includes parts of ib-verbs which are
provided as
> part of the fedora 30 such as /usr/include/rdma/ib_user_verbs.h.
> This prevents installation of vpp on Fedora 30 and upgraded
Fedora 29.
I think I am trying to understand a similar issue with CentOS
packaging.
Just to make sure I understand correctly: what you see is
vpp-deps RPM conflicting on installation with kernel-headers RPM
because it is trying to install
/usr/include/rdma/ib_user_verbs.h, which is already provided by
kernel-headers. Correct?
I don't think this is a problem in the rdma ext driver.
I think that stuff that used to be in rdma-devel rpm is now in
kernel-headers as of Fed30. Let me research further.
I think Fedora 30 has moved some headers that used to be in the
rdma rpm into the kernel-devel package as the Mellanox drivers
have been mainstreamed. I suspect that this same problem will
appear with CentOS 8.
Yes, that is correct.
$ sudo rpm -i build-root/*.rpm
file /usr/include/rdma from install of
vpp-devel-19.08-rc0~196_g7fe470a54.x86_64 conflicts with file from
package kernel-headers-5.0.9-200.fc29.x86_64
file /usr/include/rdma/ib_user_verbs.h from install of
vpp-devel-19.08-rc0~196_g7fe470a54.x86_64 conflicts with file from
package kernel-headers-5.0.9-200.fc29.x86_64
If so, I am a little puzzled because packagecloud RPMs for CentOS
do not include /usr/include/rdma/* files, and the same is true
when I build those package myself.
Fedora packages are different (and newer) than CentOS. So the
difference is not unusual.
Could you document the steps to reproduce the issue in VPP jira:
https://jira.fd.io/projects/VPP/
https://jira.fd.io/browse/VPP-1674
Right solution to this problem will be that VPP RPM packaging stops
blindly packaging all *.h files into vpp-devel package and it starts
using CMake components instead.
This particular section in extras/rpm/vpp.spec:
for dir in $(find %{_mu_build_dir}/%{_vpp_install_dir}/*/include/
-maxdepth 0 -type d -print | grep -v dpdk)
do
for subdir in $(cd ${dir} && find . -type d -print)
do
mkdir -p -m755 %{buildroot}/usr/include/${subdir}
done
for file in $(cd ${dir} && find . -type f -print)
do
install -p -m 644 $dir/$file
%{buildroot}%{_includedir}/$file
done
done
I agree on this point. This is legacy code in the spec file that scrapes
up all the header files is not the best way of doing things.
Ideally, the RPM packaging the RPM packaging from the cmake files to
build separate packages for exts and plugins each with its own devel rpm.
I think the solution to Ben's problem is above though.
--
*Thomas F Herbert*
NFV and Fast Data Planes
Networking Group Office of the CTO
*Red Hat*
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#13010): https://lists.fd.io/g/vpp-dev/message/13010
Mute This Topic: https://lists.fd.io/mt/31607407/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-