8dbd4fbcf8
This commit upgrades the ixgbe and ixgbevf drivers to the latest versions. ixgbe is upversioned to 5.5.5 from 5.5.3 ixgbevf is upversioned to 4.5.3 from 4.5.1 For ixgbe, Intel has noted that RHEL 7.6 support is introduced in version 5.5.5, whereas only RHEL 7.5 support is present in version 5.5.3. The 5.5.5 version will also pick up a bug fix needed for SR-IOV operations. For ixgbevf, Intel has verified RHEL 7.6 support in version 4.5.3, while they have verified only RHEL 7.5 in version 4.5.1. Depends-On: https://review.opendev.org/#/c/664280 Change-Id: Ic7e0089a7b218094f3367cdce17ec950359cedae Closes-Bug: #1830636 Signed-off-by: Steven Webster <steven.webster@windriver.com>
125 lines
4.5 KiB
RPMSpec
125 lines
4.5 KiB
RPMSpec
%if "%{?_tis_build_type}" == "rt"
|
|
%define bt_ext -rt
|
|
%else
|
|
%undefine bt_ext
|
|
%endif
|
|
|
|
# Define the kmod package name here.
|
|
%define kmod_name ixgbe
|
|
|
|
Name: %{kmod_name}-kmod%{?bt_ext}
|
|
Version: 5.5.5
|
|
Release: 0%{?_tis_dist}.%{tis_patch_ver}
|
|
Group: System Environment/Kernel
|
|
License: GPLv2
|
|
Summary: %{kmod_name} kernel module(s)
|
|
URL: http://www.intel.com/
|
|
|
|
BuildRequires: kernel%{?bt_ext}-devel, redhat-rpm-config, perl, openssl
|
|
ExclusiveArch: x86_64
|
|
|
|
# Sources.
|
|
Source0: %{kmod_name}-%{version}.tar.gz
|
|
Source5: GPL-v2.0.txt
|
|
Source11: modules-load.conf
|
|
|
|
#Patch01: first-patch-would-go-here.patch
|
|
|
|
%define kversion %(rpm -q kernel%{?bt_ext}-devel | sort --version-sort | tail -1 | sed 's/kernel%{?bt_ext}-devel-//')
|
|
|
|
%package -n kmod-ixgbe%{?bt_ext}
|
|
Summary: ixgbe kernel module(s)
|
|
Group: System Environment/Kernel
|
|
%global _use_internal_dependency_generator 0
|
|
Provides: kernel-modules >= %{kversion}
|
|
Provides: ixgbe-kmod = %{?epoch:%{epoch}:}%{version}-%{release}
|
|
Requires(post): /usr/sbin/depmod
|
|
Requires(postun): /usr/sbin/depmod
|
|
BuildRequires: kernel%{?bt_ext}-devel
|
|
%description -n kmod-ixgbe%{?bt_ext}
|
|
This package provides the ixgbe kernel module(s) built
|
|
for the Linux kernel using the %{_target_cpu} family of processors.
|
|
%post -n kmod-ixgbe%{?bt_ext}
|
|
echo "Working. This may take some time ..."
|
|
if [ -e "/boot/System.map-%{kversion}" ]; then
|
|
/usr/sbin/depmod -aeF "/boot/System.map-%{kversion}" "%{kversion}" > /dev/null || :
|
|
fi
|
|
modules=( $(find /lib/modules/%{kversion}/extra/ixgbe | grep '\.ko$') )
|
|
if [ -x "/sbin/weak-modules" ]; then
|
|
printf '%s\n' "${modules[@]}" | /sbin/weak-modules --add-modules
|
|
fi
|
|
echo "Done."
|
|
%preun -n kmod-ixgbe%{?bt_ext}
|
|
rpm -ql kmod-ixgbe%{?bt_ext}-%{version}-%{release}.x86_64 | grep '\.ko$' > /var/run/rpm-kmod-ixgbe%{?bt_ext}-modules
|
|
%postun -n kmod-ixgbe%{?bt_ext}
|
|
echo "Working. This may take some time ..."
|
|
if [ -e "/boot/System.map-%{kversion}" ]; then
|
|
/usr/sbin/depmod -aeF "/boot/System.map-%{kversion}" "%{kversion}" > /dev/null || :
|
|
fi
|
|
modules=( $(cat /var/run/rpm-kmod-ixgbe%{?bt_ext}-modules) )
|
|
rm /var/run/rpm-kmod-ixgbe%{?bt_ext}-modules
|
|
if [ -x "/sbin/weak-modules" ]; then
|
|
printf '%s\n' "${modules[@]}" | /sbin/weak-modules --remove-modules
|
|
fi
|
|
echo "Done."
|
|
%files -n kmod-ixgbe%{?bt_ext}
|
|
%defattr(644,root,root,755)
|
|
/lib/modules/%{kversion}/
|
|
%config(noreplace)/etc/depmod.d/kmod-ixgbe.conf
|
|
%doc /usr/share/doc/kmod-ixgbe-%{version}/
|
|
%doc /usr/share/man/man7/
|
|
%{_sysconfdir}/modules-load.d/ixgbe.conf
|
|
|
|
|
|
# Disable the building of the debug package(s).
|
|
%define debug_package %{nil}
|
|
|
|
%description
|
|
This package provides the %{kmod_name} kernel module(s).
|
|
It is built to depend upon the specific ABI provided by a range of releases
|
|
of the same variant of the Linux kernel and not on any one specific build.
|
|
|
|
%prep
|
|
%autosetup -p 1 -n %{kmod_name}-%{version}
|
|
%{__gzip} %{kmod_name}.7
|
|
echo "override %{kmod_name} * weak-updates/%{kmod_name}" > kmod-%{kmod_name}.conf
|
|
|
|
%build
|
|
pushd src >/dev/null
|
|
%{__make} KSRC=%{_usrsrc}/kernels/%{kversion}
|
|
popd >/dev/null
|
|
|
|
%install
|
|
%{__install} -d %{buildroot}/lib/modules/%{kversion}/extra/%{kmod_name}/
|
|
%{__install} src/%{kmod_name}.ko %{buildroot}/lib/modules/%{kversion}/extra/%{kmod_name}/
|
|
%{__install} -d %{buildroot}%{_sysconfdir}/depmod.d/
|
|
%{__install} kmod-%{kmod_name}.conf %{buildroot}%{_sysconfdir}/depmod.d/
|
|
%{__install} -d %{buildroot}%{_defaultdocdir}/kmod-%{kmod_name}-%{version}/
|
|
%{__install} %{SOURCE5} %{buildroot}%{_defaultdocdir}/kmod-%{kmod_name}-%{version}/
|
|
%{__install} pci.updates %{buildroot}%{_defaultdocdir}/kmod-%{kmod_name}-%{version}/
|
|
%{__install} README %{buildroot}%{_defaultdocdir}/kmod-%{kmod_name}-%{version}/
|
|
%{__install} -d %{buildroot}%{_mandir}/man7/
|
|
%{__install} %{kmod_name}.7.gz %{buildroot}%{_mandir}/man7/
|
|
%{__install} -d %{buildroot}%{_sysconfdir}/modules-load.d
|
|
%{__install} -m 644 %{SOURCE11} %{buildroot}%{_sysconfdir}/modules-load.d/ixgbe.conf
|
|
|
|
# Strip the modules(s).
|
|
find %{buildroot} -type f -name \*.ko -exec %{__strip} --strip-debug \{\} \;
|
|
|
|
# Always Sign the modules(s).
|
|
# If the module signing keys are not defined, define them here.
|
|
%{!?privkey: %define privkey /usr/src/kernels/%{kversion}/signing_key.priv}
|
|
%{!?pubkey: %define pubkey /usr/src/kernels/%{kversion}/signing_key.x509}
|
|
for module in $(find %{buildroot} -type f -name \*.ko);
|
|
do %{__perl} /usr/src/kernels/%{kversion}/scripts/sign-file \
|
|
sha256 %{privkey} %{pubkey} $module;
|
|
done
|
|
|
|
%clean
|
|
%{__rm} -rf %{buildroot}
|
|
|
|
%changelog
|
|
* Thu Feb 11 2016 Matthias Saou <matthias@saou.eu> 1.4.25-1
|
|
- Initial RPM package, based on elrepo.org's ixgbe one.
|
|
|