!9 [sync] PR-8: Use weak-modules to decouple kernel modules from kernel versions

From: @openeuler-sync-bot 
Reviewed-by: @lixiaomingg 
Signed-off-by: @lixiaomingg
This commit is contained in:
openeuler-ci-bot 2024-07-17 02:59:24 +00:00 committed by Gitee
commit 0839267489
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F

View File

@ -5,7 +5,7 @@
Name : virtCCA_driver Name : virtCCA_driver
Summary : virtCCA driver is some drivers for TEE specific function. Summary : virtCCA driver is some drivers for TEE specific function.
Version : 0.1.3 Version : 0.1.3
Release : 4 Release : 5
ExclusiveArch: aarch64 ExclusiveArch: aarch64
License : GPLV2 License : GPLV2
Group : System/Kernel Group : System/Kernel
@ -13,12 +13,12 @@ URL : https://gitee.com/openeuler/virtCCA_driver.git
Source0 : https://gitee.com/openeuler/virtCCA_driver/repository/archive/%{name}-v%{version}.tar.gz Source0 : https://gitee.com/openeuler/virtCCA_driver/repository/archive/%{name}-v%{version}.tar.gz
BuildRoot : %{_tmppath}/%{name}-v%{release}-build BuildRoot : %{_tmppath}/%{name}-v%{release}-build
BuildRequires: gcc kernel-devel kernel-headers kernel glibc glibc-devel glib2-devel cmake rpm BuildRequires: gcc kernel-devel kernel-headers kernel glibc glibc-devel glib2-devel cmake rpm
Requires : kmod
%global debug_package %{nil} %global debug_package %{nil}
%define kmod_1_name tmm_driver %define kmod_1_name tmm_driver
%define kmod_2_name sealing_key %define kmod_2_name sealing_key
%define kernel %(ver=`rpm -qa|grep kernel-devel`;echo ${ver#*kernel-devel-}) %define kernel %(ver=`rpm -qa|grep kernel-devel`;echo ${ver#*kernel-devel-})
%define drivers_path /usr/lib/modules/%{kernel}/kernel/drivers
%description %description
%{name} module %{name} module
@ -31,27 +31,40 @@ cd %_builddir/%{name}-v%{version}/
make KERNEL_DIR=/usr/src/kernels/%{kernel} make KERNEL_DIR=/usr/src/kernels/%{kernel}
%install %install
mkdir -p %{buildroot}/lib/modules/%{name} mkdir -p %{buildroot}/lib/modules/%{kernel}/extra
install -m 0640 %_builddir/%{name}-v%{version}/%{kmod_1_name}/src/%{kmod_1_name}.ko %{buildroot}/lib/modules/%{name} install -m 0640 %_builddir/%{name}-v%{version}/%{kmod_1_name}/src/%{kmod_1_name}.ko %{buildroot}/lib/modules/%{kernel}/extra
install -m 0640 %_builddir/%{name}-v%{version}/%{kmod_2_name}/src/%{kmod_2_name}.ko %{buildroot}/lib/modules/%{name} install -m 0640 %_builddir/%{name}-v%{version}/%{kmod_2_name}/src/%{kmod_2_name}.ko %{buildroot}/lib/modules/%{kernel}/extra
%clean %clean
rm -rf %{buildroot} rm -rf %{buildroot}
%files %files
%defattr(-,root,root) %defattr(-,root,root)
%attr(0640,root,root) /lib/modules/%{name}/* %attr(0640,root,root) /lib/modules/%{kernel}/extra/*
%post %post
mkdir -p %{drivers_path}/%{name} if [[ "$1" = "1" || "$1" = "2" ]] ; then
cp /lib/modules/%{name}/* %{drivers_path}/%{name} echo "installing %{kmod_1_name}.ko"
depmod %{kernel} if [ -e /sbin/weak-modules ] ; then
echo "/lib/modules/%{kernel}/extra/%{kmod_1_name}.ko" | /sbin/weak-modules --add-module --no-initramfs
fi
echo "installed %{kmod_1_name}.ko"
fi
%postun %postun
rm -rf %{drivers_path}/%{name} if [[ "$1" = "0" ]] ; then
depmod %{kernel} echo "removing %{kmod_1_name}.ko"
if [ -e /sbin/weak-modules ] ; then
echo "/lib/modules/%{kernel}/extra/%{kmod_1_name}.ko" | /sbin/weak-modules --remove-module --no-initramfs
fi
echo "removed %{kmod_1_name}.ko"
fi
%changelog %changelog
* Mon Jul 15 2024 tujipei<tujipei@huawei.com> - 0.1.3-5
- Type:bugfix
- DESC:Use weak-modules to decouple kernel modules from kernel versions
* Mon June 3 2024 tujipei<tujipei@huawei.com> - 0.1.3-4 * Mon June 3 2024 tujipei<tujipei@huawei.com> - 0.1.3-4
- Type:bugfix - Type:bugfix
- DESC:Clean the scanned security problem for the sealing key code - DESC:Clean the scanned security problem for the sealing key code