@@ -13,7 +13,7 @@
|
||||
<Summary>Kernel module allowing to switch dedicated graphics card on Optimus laptops</Summary>
|
||||
<Description>kernel module allowing to switch dedicated graphics card on Optimus laptops</Description>
|
||||
<BuildDependencies>
|
||||
<Dependency version="5.10.78">kernel-module-headers</Dependency>
|
||||
<Dependency version="5.15.1">kernel-module-headers</Dependency>
|
||||
</BuildDependencies>
|
||||
<Archive sha1sum="e282ee682d794e3962baa4dead01917c42571e78" type="targz">https://github.com/Bumblebee-Project/bbswitch/archive/v0.8.tar.gz</Archive>
|
||||
<Patches>
|
||||
@@ -24,7 +24,7 @@
|
||||
<Package>
|
||||
<Name>module-bbswitch</Name>
|
||||
<RuntimeDependencies>
|
||||
<Dependency version="5.10.78">kernel</Dependency>
|
||||
<Dependency version="5.15.1">kernel</Dependency>
|
||||
<Dependency release="current">bbswitch-common</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
@@ -62,6 +62,13 @@
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="56">
|
||||
<Date>2021-11-10</Date>
|
||||
<Version>0.8</Version>
|
||||
<Comment>Rebuild</Comment>
|
||||
<Name>İdris Kalp</Name>
|
||||
<Email>idriskalp@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="55">
|
||||
<Date>2021-11-08</Date>
|
||||
<Version>0.8</Version>
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
<Archive sha1sum="8acbdbb4ab4ab4123d1773b616904798fbef9277" type="targz" target="i686">https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/hybrid-v35-nodebug-pcoem-6_30_223_271.tar.gz</Archive>
|
||||
<Archive sha1sum="1f568bb989d175813c5631c6629d9479eae6f3be" type="targz" target="x86_64">https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-6_30_223_271.tar.gz</Archive>
|
||||
<BuildDependencies>
|
||||
<Dependency version="5.10.78">kernel-module-headers</Dependency>
|
||||
<Dependency version="5.15.1">kernel-module-headers</Dependency>
|
||||
</BuildDependencies>
|
||||
<Patches>
|
||||
<Patch level="1">broadcom-wl-6.30.223.271-debian-fix-kernel-warnings.patch</Patch>
|
||||
@@ -41,7 +41,7 @@
|
||||
<Package>
|
||||
<Name>module-broadcom-wl</Name>
|
||||
<RuntimeDependencies>
|
||||
<Dependency version="5.10.78">kernel</Dependency>
|
||||
<Dependency version="5.15.1">kernel</Dependency>
|
||||
<Dependency release="current">module-broadcom-wl-userspace</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
@@ -70,6 +70,13 @@
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="55">
|
||||
<Date>2021-11-10</Date>
|
||||
<Version>6.30.223.271</Version>
|
||||
<Comment>Rebuild</Comment>
|
||||
<Name>İdris Kalp</Name>
|
||||
<Email>idriskalp@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="54">
|
||||
<Date>2021-11-08</Date>
|
||||
<Version>6.30.223.271</Version>
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<Description>This package provides the kernel modules needed for mouse integration and shared folder support between VirtualBox host and guest systems.</Description>
|
||||
<Archive sha1sum="7476bf384ee27bccd8c2f5b1a4991a5bb4c15c46" type="tarxz">https://sourceforge.net/projects/pisilinux/files/source/module-virtualbox-guest-6.1.28.tar.xz</Archive>
|
||||
<BuildDependencies>
|
||||
<Dependency version="5.10.78">kernel-module-headers</Dependency>
|
||||
<Dependency version="5.15.1">kernel-module-headers</Dependency>
|
||||
</BuildDependencies>
|
||||
<Patches>
|
||||
<!-- <Patch>vboxsf-make.patch</Patch> -->
|
||||
@@ -24,7 +24,7 @@
|
||||
<Package>
|
||||
<Name>module-virtualbox-guest</Name>
|
||||
<RuntimeDependencies>
|
||||
<Dependency version="5.10.78">kernel</Dependency>
|
||||
<Dependency version="5.15.1">kernel</Dependency>
|
||||
<Dependency>baselayout</Dependency>
|
||||
<Dependency version="current">module-virtualbox-guest-userspace</Dependency>
|
||||
</RuntimeDependencies>
|
||||
@@ -55,6 +55,13 @@
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="85">
|
||||
<Date>2021-11-11</Date>
|
||||
<Version>6.1.28</Version>
|
||||
<Comment>Version bump.</Comment>
|
||||
<Name>İdris Kalp</Name>
|
||||
<Email>idriskalp@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="84">
|
||||
<Date>2021-11-08</Date>
|
||||
<Version>6.1.28</Version>
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
<Description>This package provides the kernel support for VirtualBox.</Description>
|
||||
<Archive sha1sum="b46a9e803a55654fa276c2e0c4db917eb085de92" type="tarxz">https://sourceforge.net/projects/pisilinux/files/source/module-virtualbox-6.1.28.tar.xz</Archive>
|
||||
<BuildDependencies>
|
||||
<Dependency version="5.10.78">kernel-module-headers</Dependency>
|
||||
<Dependency version="5.15.1">kernel-module-headers</Dependency>
|
||||
</BuildDependencies>
|
||||
<Patches>
|
||||
<!--Patch level="2">fixes_for_5.6.patch</Patch>
|
||||
@@ -25,7 +25,7 @@
|
||||
<Package>
|
||||
<Name>module-virtualbox</Name>
|
||||
<RuntimeDependencies>
|
||||
<Dependency version="5.10.78">kernel</Dependency>
|
||||
<Dependency version="5.15.1">kernel</Dependency>
|
||||
<Dependency version="current">module-virtualbox-userspace</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
@@ -51,6 +51,13 @@
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="85">
|
||||
<Date>2021-11-11</Date>
|
||||
<Version>6.1.28</Version>
|
||||
<Comment>Rebuild.</Comment>
|
||||
<Name>İdris Kalp</Name>
|
||||
<Email>idriskalp@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="84">
|
||||
<Date>2021-11-08</Date>
|
||||
<Version>6.1.28</Version>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -16,38 +16,42 @@ Signed-off-by: Thomas Backlund <tmb@mageia.org>
|
||||
arch/x86/Kconfig | 2 ++
|
||||
4 files changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
--- linux-5.8/arch/arm64/Kconfig.orig 2020-08-05 16:08:02.466740952 +0200
|
||||
+++ linux-5.8/arch/arm64/Kconfig 2020-08-05 16:08:13.368741815 +0200
|
||||
@@ -1910,3 +1910,5 @@ source "arch/arm64/kvm/Kconfig"
|
||||
if CRYPTO
|
||||
source "arch/arm64/crypto/Kconfig"
|
||||
endif
|
||||
+
|
||||
+source "3rdparty/Kconfig"
|
||||
--- linux-5.8/Makefile.orig 2020-08-05 16:09:32.265748061 +0200
|
||||
+++ linux-5.8/Makefile 2020-08-05 16:10:02.553750458 +0200
|
||||
@@ -651,7 +651,7 @@ endif
|
||||
ifeq ($(KBUILD_EXTMOD),)
|
||||
# Objects we will link into vmlinux / subdirs we need to visit
|
||||
core-y := init/ usr/
|
||||
-drivers-y := drivers/ sound/
|
||||
+drivers-y := drivers/ sound/ 3rdparty/
|
||||
drivers-$(CONFIG_SAMPLES) += samples/
|
||||
drivers-y += net/ virt/
|
||||
libs-y := lib/
|
||||
--- linux-5.8/arch/x86/Kconfig.orig 2020-08-05 16:10:48.805754119 +0200
|
||||
+++ linux-5.8/arch/x86/Kconfig 2020-08-05 16:11:04.602755370 +0200
|
||||
@@ -2913,3 +2913,5 @@ source "drivers/firmware/Kconfig"
|
||||
source "arch/x86/kvm/Kconfig"
|
||||
|
||||
source "arch/x86/Kconfig.assembler"
|
||||
+
|
||||
+source "3rdparty/Kconfig"
|
||||
--- linux-5.8/arch/arm/Kconfig.orig 2020-08-05 16:12:08.314760413 +0200
|
||||
+++ linux-5.8/arch/arm/Kconfig 2020-08-05 16:12:22.786761559 +0200
|
||||
@@ -2064,3 +2064,5 @@ source "arch/arm/crypto/Kconfig"
|
||||
diff -Nurp linux-5.12/arch/arm/Kconfig linux-5.12-3rd/arch/arm/Kconfig
|
||||
--- linux-5.12/arch/arm/Kconfig 2021-04-25 23:49:08.000000000 +0300
|
||||
+++ linux-5.12-3rd/arch/arm/Kconfig 2021-04-26 18:10:06.513775304 +0300
|
||||
@@ -2016,3 +2016,5 @@ source "arch/arm/crypto/Kconfig"
|
||||
endif
|
||||
|
||||
source "arch/arm/Kconfig.assembler"
|
||||
+
|
||||
+source "3rdparty/Kconfig"
|
||||
diff -Nurp linux-5.12/arch/arm64/Kconfig linux-5.12-3rd/arch/arm64/Kconfig
|
||||
--- linux-5.12/arch/arm64/Kconfig 2021-04-25 23:49:08.000000000 +0300
|
||||
+++ linux-5.12-3rd/arch/arm64/Kconfig 2021-04-26 18:10:06.512775257 +0300
|
||||
@@ -1959,3 +1959,5 @@ source "arch/arm64/kvm/Kconfig"
|
||||
if CRYPTO
|
||||
source "arch/arm64/crypto/Kconfig"
|
||||
endif
|
||||
+
|
||||
+source "3rdparty/Kconfig"
|
||||
diff -Nurp linux-5.12/arch/x86/Kconfig linux-5.12-3rd/arch/x86/Kconfig
|
||||
--- linux-5.12/arch/x86/Kconfig 2021-04-25 23:49:08.000000000 +0300
|
||||
+++ linux-5.12-3rd/arch/x86/Kconfig 2021-04-26 18:10:06.512775257 +0300
|
||||
@@ -2909,3 +2909,5 @@ source "drivers/firmware/Kconfig"
|
||||
source "arch/x86/kvm/Kconfig"
|
||||
|
||||
source "arch/x86/Kconfig.assembler"
|
||||
+
|
||||
+source "3rdparty/Kconfig"
|
||||
diff -Nurp linux-5.14/Makefile linux-5.14-3rd/Makefile
|
||||
--- linux-5.14/Makefile
|
||||
+++ linux-5.14-3rd/Makefile
|
||||
@@ -670,7 +670,7 @@ endif
|
||||
ifeq ($(KBUILD_EXTMOD),)
|
||||
# Objects we will link into vmlinux / subdirs we need to visit
|
||||
core-y := init/ usr/ arch/$(SRCARCH)/
|
||||
-drivers-y := drivers/ sound/
|
||||
+drivers-y := drivers/ sound/ 3rdparty/
|
||||
drivers-$(CONFIG_SAMPLES) += samples/
|
||||
drivers-$(CONFIG_NET) += net/
|
||||
drivers-y += virt/
|
||||
|
||||
@@ -8,7 +8,7 @@ diff -up ./3rdparty/rtl8723de/Kconfig.tv ./3rdparty/rtl8723de/Kconfig
|
||||
- ---help---
|
||||
+ help
|
||||
Help message of RTL8723DE
|
||||
|
||||
|
||||
diff -up ./3rdparty/rtl8821ce/Kconfig.tv ./3rdparty/rtl8821ce/Kconfig
|
||||
--- ./3rdparty/rtl8821ce/Kconfig.tv 2020-10-13 16:09:11.157856145 +0200
|
||||
+++ ./3rdparty/rtl8821ce/Kconfig 2020-10-13 20:58:17.242118685 +0200
|
||||
@@ -19,7 +19,7 @@ diff -up ./3rdparty/rtl8821ce/Kconfig.tv ./3rdparty/rtl8821ce/Kconfig
|
||||
- ---help---
|
||||
+ help
|
||||
Help message of RTL8821CE
|
||||
|
||||
|
||||
diff -up ./3rdparty/viahss/Kconfig.tv ./3rdparty/viahss/Kconfig
|
||||
--- ./3rdparty/viahss/Kconfig.tv 2020-10-13 21:02:44.844168369 +0200
|
||||
+++ ./3rdparty/viahss/Kconfig 2020-10-13 20:59:19.875488718 +0200
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
diff -urp linux/3rdparty/rtl8812au.orig/os_dep/linux/recv_linux.c linux/3rdparty/rtl8812au/os_dep/linux/recv_linux.c
|
||||
--- linux/3rdparty/rtl8812au.orig/os_dep/linux/recv_linux.c 2021-04-26 18:35:37.411027594 +0300
|
||||
+++ linux/3rdparty/rtl8812au/os_dep/linux/recv_linux.c 2021-04-26 18:53:13.502814526 +0300
|
||||
@@ -353,7 +353,7 @@ static int napi_recv(_adapter *padapter,
|
||||
|
||||
rx_ok = _FALSE;
|
||||
|
||||
-#ifdef CONFIG_RTW_GRO
|
||||
+#if defined(CONFIG_RTW_GRO) && LINUX_VERSION_CODE < KERNEL_VERSION(5, 12, 0)
|
||||
if (pregistrypriv->en_gro) {
|
||||
if (rtw_napi_gro_receive(&padapter->napi, pskb) != GRO_DROP)
|
||||
rx_ok = _TRUE;
|
||||
@@ -0,0 +1,66 @@
|
||||
|
||||
From:
|
||||
https://github.com/aircrack-ng/rtl8812au/commit/47a38b7c736dd9e9baac9eb07a6dceb83429fb49
|
||||
|
||||
diff -Nurp linux-5.15/3rdparty/rtl8812au.orig/core/rtw_br_ext.c linux-5.15/3rdparty/rtl8812au/core/rtw_br_ext.c
|
||||
--- linux-5.15/3rdparty/rtl8812au.orig/core/rtw_br_ext.c 2021-11-08 23:40:48.236272741 +0200
|
||||
+++ linux-5.15/3rdparty/rtl8812au/core/rtw_br_ext.c 2021-11-08 23:49:12.118046953 +0200
|
||||
@@ -17,7 +17,10 @@
|
||||
#ifdef __KERNEL__
|
||||
#include <linux/if_arp.h>
|
||||
#include <net/ip.h>
|
||||
+ #include <linux/version.h>
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0)
|
||||
#include <net/ipx.h>
|
||||
+#endif
|
||||
#include <linux/atalk.h>
|
||||
#include <linux/udp.h>
|
||||
#include <linux/if_pppox.h>
|
||||
@@ -169,6 +172,7 @@ static __inline__ void __nat25_generate_
|
||||
}
|
||||
|
||||
|
||||
+#ifdef _NET_INET_IPX_H_
|
||||
static __inline__ void __nat25_generate_ipx_network_addr_with_node(unsigned char *networkAddr,
|
||||
unsigned int *ipxNetAddr, unsigned char *ipxNodeAddr)
|
||||
{
|
||||
@@ -189,6 +193,7 @@ static __inline__ void __nat25_generate_
|
||||
memcpy(networkAddr + 1, (unsigned char *)ipxNetAddr, 4);
|
||||
memcpy(networkAddr + 5, (unsigned char *)ipxSocketAddr, 2);
|
||||
}
|
||||
+#endif
|
||||
|
||||
|
||||
static __inline__ void __nat25_generate_apple_network_addr(unsigned char *networkAddr,
|
||||
@@ -330,6 +335,7 @@ static __inline__ int __nat25_network_ha
|
||||
x = networkAddr[7] ^ networkAddr[8] ^ networkAddr[9] ^ networkAddr[10];
|
||||
|
||||
return x & (NAT25_HASH_SIZE - 1);
|
||||
+#ifdef _NET_INET_IPX_H_
|
||||
} else if (networkAddr[0] == NAT25_IPX) {
|
||||
unsigned long x;
|
||||
|
||||
@@ -337,6 +343,7 @@ static __inline__ int __nat25_network_ha
|
||||
networkAddr[6] ^ networkAddr[7] ^ networkAddr[8] ^ networkAddr[9] ^ networkAddr[10];
|
||||
|
||||
return x & (NAT25_HASH_SIZE - 1);
|
||||
+#endif
|
||||
} else if (networkAddr[0] == NAT25_APPLE) {
|
||||
unsigned long x;
|
||||
|
||||
@@ -889,6 +896,7 @@ int nat25_db_handle(_adapter *priv, stru
|
||||
}
|
||||
}
|
||||
|
||||
+#ifdef _NET_INET_IPX_H_
|
||||
/*---------------------------------------------------*/
|
||||
/* Handle IPX and Apple Talk frame */
|
||||
/*---------------------------------------------------*/
|
||||
@@ -1109,6 +1117,7 @@ int nat25_db_handle(_adapter *priv, stru
|
||||
|
||||
return -1;
|
||||
}
|
||||
+#endif
|
||||
|
||||
/*---------------------------------------------------*/
|
||||
/* Handle PPPoE frame */
|
||||
@@ -0,0 +1,12 @@
|
||||
diff -urp linux/3rdparty/rtl8821ce.orig/os_dep/linux/recv_linux.c linux/3rdparty/rtl8821ce/os_dep/linux/recv_linux.c
|
||||
--- linux/3rdparty/rtl8821ce.orig/os_dep/linux/recv_linux.c 2021-04-26 18:35:37.690041052 +0300
|
||||
+++ linux/3rdparty/rtl8821ce/os_dep/linux/recv_linux.c 2021-04-26 18:53:23.534295732 +0300
|
||||
@@ -353,7 +353,7 @@ static int napi_recv(_adapter *padapter,
|
||||
|
||||
rx_ok = _FALSE;
|
||||
|
||||
-#ifdef CONFIG_RTW_GRO
|
||||
+#if defined(CONFIG_RTW_GRO) && LINUX_VERSION_CODE < KERNEL_VERSION(5, 12, 0)
|
||||
if (pregistrypriv->en_gro) {
|
||||
if (rtw_napi_gro_receive(&padapter->napi, pskb) != GRO_DROP)
|
||||
rx_ok = _TRUE;
|
||||
@@ -0,0 +1,66 @@
|
||||
|
||||
From:
|
||||
https://github.com/aircrack-ng/rtl8812au/commit/47a38b7c736dd9e9baac9eb07a6dceb83429fb49
|
||||
|
||||
diff -Nurp linux-5.15/3rdparty/rtl8821ce.orig/core/rtw_br_ext.c linux-5.15/3rdparty/rtl8821ce/core/rtw_br_ext.c
|
||||
--- linux-5.15/3rdparty/rtl8821ce.orig/core/rtw_br_ext.c 2021-11-08 23:40:48.236272741 +0200
|
||||
+++ linux-5.15/3rdparty/rtl8821ce/core/rtw_br_ext.c 2021-11-08 23:49:12.118046953 +0200
|
||||
@@ -17,7 +17,10 @@
|
||||
#ifdef __KERNEL__
|
||||
#include <linux/if_arp.h>
|
||||
#include <net/ip.h>
|
||||
+ #include <linux/version.h>
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0)
|
||||
#include <net/ipx.h>
|
||||
+#endif
|
||||
#include <linux/atalk.h>
|
||||
#include <linux/udp.h>
|
||||
#include <linux/if_pppox.h>
|
||||
@@ -169,6 +172,7 @@ static __inline__ void __nat25_generate_
|
||||
}
|
||||
|
||||
|
||||
+#ifdef _NET_INET_IPX_H_
|
||||
static __inline__ void __nat25_generate_ipx_network_addr_with_node(unsigned char *networkAddr,
|
||||
unsigned int *ipxNetAddr, unsigned char *ipxNodeAddr)
|
||||
{
|
||||
@@ -189,6 +193,7 @@ static __inline__ void __nat25_generate_
|
||||
memcpy(networkAddr + 1, (unsigned char *)ipxNetAddr, 4);
|
||||
memcpy(networkAddr + 5, (unsigned char *)ipxSocketAddr, 2);
|
||||
}
|
||||
+#endif
|
||||
|
||||
|
||||
static __inline__ void __nat25_generate_apple_network_addr(unsigned char *networkAddr,
|
||||
@@ -330,6 +335,7 @@ static __inline__ int __nat25_network_ha
|
||||
x = networkAddr[7] ^ networkAddr[8] ^ networkAddr[9] ^ networkAddr[10];
|
||||
|
||||
return x & (NAT25_HASH_SIZE - 1);
|
||||
+#ifdef _NET_INET_IPX_H_
|
||||
} else if (networkAddr[0] == NAT25_IPX) {
|
||||
unsigned long x;
|
||||
|
||||
@@ -337,6 +343,7 @@ static __inline__ int __nat25_network_ha
|
||||
networkAddr[6] ^ networkAddr[7] ^ networkAddr[8] ^ networkAddr[9] ^ networkAddr[10];
|
||||
|
||||
return x & (NAT25_HASH_SIZE - 1);
|
||||
+#endif
|
||||
} else if (networkAddr[0] == NAT25_APPLE) {
|
||||
unsigned long x;
|
||||
|
||||
@@ -889,6 +896,7 @@ int nat25_db_handle(_adapter *priv, stru
|
||||
}
|
||||
}
|
||||
|
||||
+#ifdef _NET_INET_IPX_H_
|
||||
/*---------------------------------------------------*/
|
||||
/* Handle IPX and Apple Talk frame */
|
||||
/*---------------------------------------------------*/
|
||||
@@ -1109,6 +1117,7 @@ int nat25_db_handle(_adapter *priv, stru
|
||||
|
||||
return -1;
|
||||
}
|
||||
+#endif
|
||||
|
||||
/*---------------------------------------------------*/
|
||||
/* Handle PPPoE frame */
|
||||
@@ -0,0 +1,284 @@
|
||||
|
||||
fs/dcache.c | 2 ++
|
||||
fs/exec.c | 1 +
|
||||
fs/fcntl.c | 1 +
|
||||
fs/file_table.c | 2 ++
|
||||
fs/inode.c | 1 +
|
||||
fs/namespace.c | 3 +++
|
||||
fs/notify/group.c | 1 +
|
||||
fs/open.c | 1 +
|
||||
fs/read_write.c | 2 ++
|
||||
fs/splice.c | 2 ++
|
||||
fs/sync.c | 1 +
|
||||
fs/xattr.c | 1 +
|
||||
kernel/locking/lockdep.c | 1 +
|
||||
kernel/task_work.c | 1 +
|
||||
security/security.c | 8 ++++++++
|
||||
15 files changed, 28 insertions(+)
|
||||
|
||||
diff -Nurp linux-5.15.1-aufs/fs/dcache.c linux-5.15.1-aufs-mod/fs/dcache.c
|
||||
--- linux-5.15.1-aufs/fs/dcache.c 2021-11-08 23:01:48.275645778 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/dcache.c 2021-11-08 23:02:45.270309130 +0200
|
||||
@@ -1425,6 +1425,7 @@ rename_retry:
|
||||
seq = 1;
|
||||
goto again;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(d_walk);
|
||||
|
||||
struct check_mount {
|
||||
struct vfsmount *mnt;
|
||||
@@ -2970,6 +2971,7 @@ void d_exchange(struct dentry *dentry1,
|
||||
|
||||
write_sequnlock(&rename_lock);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(d_exchange);
|
||||
|
||||
/**
|
||||
* d_ancestor - search for an ancestor
|
||||
diff -Nurp linux-5.15.1-aufs/fs/exec.c linux-5.15.1-aufs-mod/fs/exec.c
|
||||
--- linux-5.15.1-aufs/fs/exec.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/exec.c 2021-11-08 23:02:45.270309130 +0200
|
||||
@@ -111,6 +111,7 @@ bool path_noexec(const struct path *path
|
||||
return (path->mnt->mnt_flags & MNT_NOEXEC) ||
|
||||
(path->mnt->mnt_sb->s_iflags & SB_I_NOEXEC);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(path_noexec);
|
||||
|
||||
#ifdef CONFIG_USELIB
|
||||
/*
|
||||
diff -Nurp linux-5.15.1-aufs/fs/fcntl.c linux-5.15.1-aufs-mod/fs/fcntl.c
|
||||
--- linux-5.15.1-aufs/fs/fcntl.c 2021-11-08 23:01:48.275645778 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/fcntl.c 2021-11-08 23:02:45.270309130 +0200
|
||||
@@ -86,6 +86,7 @@ int setfl(int fd, struct file *filp, uns
|
||||
out:
|
||||
return error;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(setfl);
|
||||
|
||||
static void f_modown(struct file *filp, struct pid *pid, enum pid_type type,
|
||||
int force)
|
||||
diff -Nurp linux-5.15.1-aufs/fs/file_table.c linux-5.15.1-aufs-mod/fs/file_table.c
|
||||
--- linux-5.15.1-aufs/fs/file_table.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/file_table.c 2021-11-08 23:02:45.270309130 +0200
|
||||
@@ -161,6 +161,7 @@ over:
|
||||
}
|
||||
return ERR_PTR(-ENFILE);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(alloc_empty_file);
|
||||
|
||||
/*
|
||||
* Variant of alloc_empty_file() that doesn't check and modify nr_files.
|
||||
@@ -375,6 +376,7 @@ void __fput_sync(struct file *file)
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(fput);
|
||||
+EXPORT_SYMBOL_GPL(__fput_sync);
|
||||
|
||||
void __init files_init(void)
|
||||
{
|
||||
diff -Nurp linux-5.15.1-aufs/fs/inode.c linux-5.15.1-aufs-mod/fs/inode.c
|
||||
--- linux-5.15.1-aufs/fs/inode.c 2021-11-08 23:01:48.275645778 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/inode.c 2021-11-08 23:02:45.270309130 +0200
|
||||
@@ -1788,6 +1788,7 @@ int update_time(struct inode *inode, str
|
||||
return inode->i_op->update_time(inode, time, flags);
|
||||
return generic_update_time(inode, time, flags);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(update_time);
|
||||
|
||||
/**
|
||||
* atime_needs_update - update the access time
|
||||
diff -Nurp linux-5.15.1-aufs/fs/namespace.c linux-5.15.1-aufs-mod/fs/namespace.c
|
||||
--- linux-5.15.1-aufs/fs/namespace.c 2021-11-08 23:01:48.276645825 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/namespace.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -439,6 +439,7 @@ void __mnt_drop_write(struct vfsmount *m
|
||||
mnt_dec_writers(real_mount(mnt));
|
||||
preempt_enable();
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(__mnt_drop_write);
|
||||
|
||||
/**
|
||||
* mnt_drop_write - give up write access to a mount
|
||||
@@ -813,6 +814,7 @@ int is_current_mnt_ns(struct vfsmount *m
|
||||
{
|
||||
return check_mnt(real_mount(mnt));
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(is_current_mnt_ns);
|
||||
|
||||
/*
|
||||
* vfsmount lock must be held for write
|
||||
@@ -2011,6 +2013,7 @@ int iterate_mounts(int (*f)(struct vfsmo
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(iterate_mounts);
|
||||
|
||||
static void lock_mnt_tree(struct mount *mnt)
|
||||
{
|
||||
diff -Nurp linux-5.15.1-aufs/fs/notify/group.c linux-5.15.1-aufs-mod/fs/notify/group.c
|
||||
--- linux-5.15.1-aufs/fs/notify/group.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/notify/group.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -100,6 +100,7 @@ void fsnotify_get_group(struct fsnotify_
|
||||
{
|
||||
refcount_inc(&group->refcnt);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(fsnotify_get_group);
|
||||
|
||||
/*
|
||||
* Drop a reference to a group. Free it if it's through.
|
||||
diff -Nurp linux-5.15.1-aufs/fs/open.c linux-5.15.1-aufs-mod/fs/open.c
|
||||
--- linux-5.15.1-aufs/fs/open.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/open.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -65,6 +65,7 @@ int do_truncate(struct user_namespace *m
|
||||
inode_unlock(dentry->d_inode);
|
||||
return ret;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(do_truncate);
|
||||
|
||||
long vfs_truncate(const struct path *path, loff_t length)
|
||||
{
|
||||
diff -Nurp linux-5.15.1-aufs/fs/read_write.c linux-5.15.1-aufs-mod/fs/read_write.c
|
||||
--- linux-5.15.1-aufs/fs/read_write.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/read_write.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -492,6 +492,7 @@ ssize_t vfs_read(struct file *file, char
|
||||
inc_syscr(current);
|
||||
return ret;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(vfs_read);
|
||||
|
||||
static ssize_t new_sync_write(struct file *filp, const char __user *buf, size_t len, loff_t *ppos)
|
||||
{
|
||||
@@ -602,6 +603,7 @@ ssize_t vfs_write(struct file *file, con
|
||||
file_end_write(file);
|
||||
return ret;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(vfs_write);
|
||||
|
||||
/* file_ppos returns &file->f_pos or NULL if file is stream */
|
||||
static inline loff_t *file_ppos(struct file *file)
|
||||
diff -Nurp linux-5.15.1-aufs/fs/splice.c linux-5.15.1-aufs-mod/fs/splice.c
|
||||
--- linux-5.15.1-aufs/fs/splice.c 2021-11-08 23:01:48.276645825 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/splice.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -766,6 +766,7 @@ long do_splice_from(struct pipe_inode_in
|
||||
return warn_unsupported(out, "write");
|
||||
return out->f_op->splice_write(pipe, out, ppos, len, flags);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(do_splice_from);
|
||||
|
||||
/*
|
||||
* Attempt to initiate a splice from a file to a pipe.
|
||||
@@ -795,6 +796,7 @@ long do_splice_to(struct file *in, loff_
|
||||
return warn_unsupported(in, "read");
|
||||
return in->f_op->splice_read(in, ppos, pipe, len, flags);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(do_splice_to);
|
||||
|
||||
/**
|
||||
* splice_direct_to_actor - splices data directly between two non-pipes
|
||||
diff -Nurp linux-5.15.1-aufs/fs/sync.c linux-5.15.1-aufs-mod/fs/sync.c
|
||||
--- linux-5.15.1-aufs/fs/sync.c 2021-11-08 23:01:48.276645825 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/sync.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -39,6 +39,7 @@ int __sync_filesystem(struct super_block
|
||||
sb->s_op->sync_fs(sb, wait);
|
||||
return __sync_blockdev(sb->s_bdev, wait);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(__sync_filesystem);
|
||||
|
||||
/*
|
||||
* Write out and wait upon all dirty data associated with this
|
||||
diff -Nurp linux-5.15.1-aufs/fs/xattr.c linux-5.15.1-aufs-mod/fs/xattr.c
|
||||
--- linux-5.15.1-aufs/fs/xattr.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/xattr.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -384,6 +384,7 @@ vfs_getxattr_alloc(struct user_namespace
|
||||
*xattr_value = value;
|
||||
return error;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(vfs_getxattr_alloc);
|
||||
|
||||
ssize_t
|
||||
__vfs_getxattr(struct dentry *dentry, struct inode *inode, const char *name,
|
||||
diff -Nurp linux-5.15.1-aufs/kernel/locking/lockdep.c linux-5.15.1-aufs-mod/kernel/locking/lockdep.c
|
||||
--- linux-5.15.1-aufs/kernel/locking/lockdep.c 2021-11-08 23:01:48.277645871 +0200
|
||||
+++ linux-5.15.1-aufs-mod/kernel/locking/lockdep.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -210,6 +210,7 @@ inline struct lock_class *lockdep_hlock_
|
||||
*/
|
||||
return lock_classes + class_idx;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(lockdep_hlock_class);
|
||||
#define hlock_class(hlock) lockdep_hlock_class(hlock)
|
||||
|
||||
#ifdef CONFIG_LOCK_STAT
|
||||
diff -Nurp linux-5.15.1-aufs/kernel/task_work.c linux-5.15.1-aufs-mod/kernel/task_work.c
|
||||
--- linux-5.15.1-aufs/kernel/task_work.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/kernel/task_work.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -167,3 +167,4 @@ void task_work_run(void)
|
||||
} while (work);
|
||||
}
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(task_work_run);
|
||||
diff -Nurp linux-5.15.1-aufs/security/security.c linux-5.15.1-aufs-mod/security/security.c
|
||||
--- linux-5.15.1-aufs/security/security.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/security/security.c 2021-11-08 23:02:45.272309224 +0200
|
||||
@@ -1147,6 +1147,7 @@ int security_path_rmdir(const struct pat
|
||||
return 0;
|
||||
return call_int_hook(path_rmdir, 0, dir, dentry);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_rmdir);
|
||||
|
||||
int security_path_unlink(const struct path *dir, struct dentry *dentry)
|
||||
{
|
||||
@@ -1163,6 +1164,7 @@ int security_path_symlink(const struct p
|
||||
return 0;
|
||||
return call_int_hook(path_symlink, 0, dir, dentry, old_name);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_symlink);
|
||||
|
||||
int security_path_link(struct dentry *old_dentry, const struct path *new_dir,
|
||||
struct dentry *new_dentry)
|
||||
@@ -1171,6 +1173,7 @@ int security_path_link(struct dentry *ol
|
||||
return 0;
|
||||
return call_int_hook(path_link, 0, old_dentry, new_dir, new_dentry);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_link);
|
||||
|
||||
int security_path_rename(const struct path *old_dir, struct dentry *old_dentry,
|
||||
const struct path *new_dir, struct dentry *new_dentry,
|
||||
@@ -1198,6 +1201,7 @@ int security_path_truncate(const struct
|
||||
return 0;
|
||||
return call_int_hook(path_truncate, 0, path);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_truncate);
|
||||
|
||||
int security_path_chmod(const struct path *path, umode_t mode)
|
||||
{
|
||||
@@ -1205,6 +1209,7 @@ int security_path_chmod(const struct pat
|
||||
return 0;
|
||||
return call_int_hook(path_chmod, 0, path, mode);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_chmod);
|
||||
|
||||
int security_path_chown(const struct path *path, kuid_t uid, kgid_t gid)
|
||||
{
|
||||
@@ -1212,6 +1217,7 @@ int security_path_chown(const struct pat
|
||||
return 0;
|
||||
return call_int_hook(path_chown, 0, path, uid, gid);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_chown);
|
||||
|
||||
int security_path_chroot(const struct path *path)
|
||||
{
|
||||
@@ -1312,6 +1318,7 @@ int security_inode_permission(struct ino
|
||||
return 0;
|
||||
return call_int_hook(inode_permission, 0, inode, mask);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_inode_permission);
|
||||
|
||||
int security_inode_setattr(struct dentry *dentry, struct iattr *attr)
|
||||
{
|
||||
@@ -1509,6 +1516,7 @@ int security_file_permission(struct file
|
||||
|
||||
return fsnotify_perm(file, mask);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_file_permission);
|
||||
|
||||
int security_file_alloc(struct file *file)
|
||||
{
|
||||
+725
-567
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,36 @@
|
||||
From 435664ed44c4a17e6715d007061e2b155d3535c8 Mon Sep 17 00:00:00 2001
|
||||
From: Florian Weimer <fweimer@redhat.com>
|
||||
Date: Fri, 1 Oct 2021 13:38:15 +1000
|
||||
Subject: procfs: do not list TID 0 in /proc/<pid>/task
|
||||
|
||||
If a task exits concurrently, task_pid_nr_ns may return 0.
|
||||
|
||||
Link: https://lkml.kernel.org/r/8735pn5dx7.fsf@oldenburg.str.redhat.com
|
||||
Signed-off-by: Florian Weimer <fweimer@redhat.com>
|
||||
Acked-by: Christian Brauner <christian.brauner@ubuntu.com>
|
||||
Cc: Kees Cook <keescook@chromium.org>
|
||||
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
|
||||
Cc: Alexey Dobriyan <adobriyan@gmail.com>
|
||||
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
|
||||
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
|
||||
---
|
||||
fs/proc/base.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/fs/proc/base.c b/fs/proc/base.c
|
||||
index 533d5836eb9a4..54f29399088f0 100644
|
||||
--- a/fs/proc/base.c
|
||||
+++ b/fs/proc/base.c
|
||||
@@ -3800,6 +3800,9 @@ static int proc_task_readdir(struct file *file, struct dir_context *ctx)
|
||||
char name[10 + 1];
|
||||
unsigned int len;
|
||||
tid = task_pid_nr_ns(task, ns);
|
||||
+ if (!tid)
|
||||
+ /* The task has just exited. */
|
||||
+ continue;
|
||||
len = snprintf(name, sizeof(name), "%u", tid);
|
||||
if (!proc_fill_cache(file, ctx, name, len,
|
||||
proc_task_instantiate, task, NULL)) {
|
||||
--
|
||||
cgit 1.2.3-1.el7
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,30 @@
|
||||
|
||||
sparse_keymap_free() is now obsolete.
|
||||
|
||||
Signed-off-by: Thomas Backlund <tmb@mageia.org>
|
||||
|
||||
--- linux/drivers/platform/x86/shuttle-wmi.c.orig 2017-10-15 00:39:53.041395980 +0300
|
||||
+++ linux/drivers/platform/x86/shuttle-wmi.c 2017-10-15 01:05:37.008662881 +0300
|
||||
@@ -763,14 +763,9 @@ static int shuttle_wmi_input_init(struct
|
||||
goto err_free_dev;
|
||||
|
||||
rc = input_register_device(input);
|
||||
- if (rc)
|
||||
- goto err_free_keymap;
|
||||
|
||||
priv->inputdev = input;
|
||||
return 0;
|
||||
-
|
||||
-err_free_keymap:
|
||||
- sparse_keymap_free(input);
|
||||
err_free_dev:
|
||||
input_free_device(input);
|
||||
return rc;
|
||||
@@ -780,7 +775,6 @@ static void shuttle_wmi_input_remove(str
|
||||
{
|
||||
struct input_dev *input = priv->inputdev;
|
||||
|
||||
- sparse_keymap_free(input);
|
||||
input_unregister_device(input);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
--- linux/drivers/platform/x86/shuttle-wmi.c.orig 2015-09-30 00:51:13.000000000 +0300
|
||||
+++ linux/drivers/platform/x86/shuttle-wmi.c 2015-09-30 02:04:20.808458393 +0300
|
||||
@@ -26,6 +26,7 @@
|
||||
#include <linux/input/sparse-keymap.h>
|
||||
#include <linux/backlight.h>
|
||||
#include <linux/fb.h>
|
||||
+#include <acpi/video.h>
|
||||
|
||||
MODULE_AUTHOR("Herton Ronaldo Krzesinski");
|
||||
MODULE_DESCRIPTION("Shuttle WMI Extras Driver");
|
||||
@@ -1161,7 +1162,7 @@ static int shuttle_wmi_probe(struct plat
|
||||
goto err_notify;
|
||||
}
|
||||
|
||||
- if (!acpi_video_backlight_support()) {
|
||||
+ if (acpi_video_get_backlight_type() == acpi_backlight_vendor) {
|
||||
rc = shuttle_wmi_backlight_init(priv);
|
||||
if (rc)
|
||||
goto err_backlight;
|
||||
@@ -0,0 +1,38 @@
|
||||
--- ./drivers/platform/x86/shuttle-wmi.c.orig 2013-01-16 18:13:57.000000000 +0200
|
||||
+++ ./drivers/platform/x86/shuttle-wmi.c 2013-01-16 18:41:13.676433242 +0200
|
||||
@@ -294,7 +294,7 @@ static struct dmi_system_id shuttle_dmi_
|
||||
{}
|
||||
};
|
||||
|
||||
-static struct dmi_system_id __devinitdata shuttle_quirk_bl_dmi_ids[] = {
|
||||
+static struct dmi_system_id shuttle_quirk_bl_dmi_ids[] = {
|
||||
{
|
||||
.ident = "Positivo M13",
|
||||
.matches = {
|
||||
@@ -1105,7 +1105,7 @@ fn_init_err:
|
||||
return rc;
|
||||
}
|
||||
|
||||
-static int __devinit shuttle_wmi_probe(struct platform_device *pdev)
|
||||
+static int shuttle_wmi_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct shuttle_wmi *priv;
|
||||
int rc, i;
|
||||
@@ -1181,7 +1181,7 @@ err_debugfs:
|
||||
return rc;
|
||||
}
|
||||
|
||||
-static int __devexit shuttle_wmi_remove(struct platform_device *pdev)
|
||||
+static int shuttle_wmi_remove(struct platform_device *pdev)
|
||||
{
|
||||
struct shuttle_wmi *priv = platform_get_drvdata(pdev);
|
||||
|
||||
@@ -1211,7 +1211,7 @@ static struct platform_driver shuttle_wm
|
||||
.pm = &shuttle_wmi_pm_ops,
|
||||
},
|
||||
.probe = shuttle_wmi_probe,
|
||||
- .remove = __devexit_p(shuttle_wmi_remove),
|
||||
+ .remove = shuttle_wmi_remove,
|
||||
};
|
||||
|
||||
static struct platform_device *shuttle_wmi_device;
|
||||
@@ -0,0 +1,35 @@
|
||||
|
||||
pr_warning is now pr_warn
|
||||
|
||||
Signed-off-by: Thomas Backlund <tmb@mageia.org>
|
||||
|
||||
|
||||
--- ./drivers/platform/x86/shuttle-wmi.c.orig 2020-02-03 17:22:16.374611323 +0200
|
||||
+++ ./drivers/platform/x86/shuttle-wmi.c 2020-02-03 18:19:03.663898669 +0200
|
||||
@@ -379,7 +379,7 @@ static int wmi_setget_mtd(struct shuttle
|
||||
kfree(obj);
|
||||
} else {
|
||||
if (res) {
|
||||
- pr_warning("No result from WMI method (%s)", __func__);
|
||||
+ pr_warn("No result from WMI method (%s)", __func__);
|
||||
res = NULL;
|
||||
}
|
||||
}
|
||||
@@ -628,7 +628,7 @@ static void shuttle_wmi_notify(u32 value
|
||||
|
||||
status = wmi_get_event_data(value, &res);
|
||||
if (status != AE_OK) {
|
||||
- pr_warning("unable to retrieve wmi event status"
|
||||
+ pr_warn("unable to retrieve wmi event status"
|
||||
" (error=0x%x)\n", status);
|
||||
return;
|
||||
}
|
||||
@@ -678,7 +678,7 @@ static void shuttle_wmi_notify(u32 value
|
||||
break;
|
||||
case 0xec: /* Lost event */
|
||||
if (printk_ratelimit())
|
||||
- pr_warning("lost event because of buggy BIOS");
|
||||
+ pr_warn("lost event because of buggy BIOS");
|
||||
break;
|
||||
default:
|
||||
pr_info("unknown wmi notification type (0x%02x)\n", type);
|
||||
+29
-6
@@ -12,7 +12,7 @@
|
||||
<IsA>kernel</IsA>
|
||||
<Summary>The Linux kernel (the core of the Linux operating system) for Pisi Linux</Summary>
|
||||
<Description>kernel contains the Linux kernel, the core of any Linux operating system. The kernel handles the basic functions of the operating system: memory allocation, process allocation, device input and output, etc.</Description>
|
||||
<Archive sha1sum="baa841f624f6cfdafe01026963dcd32b334a3752" type="targz">https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.10.tar.gz</Archive>
|
||||
<Archive sha1sum="01961045127c21f8a9dbaa9e7705dbb9e4cffbaa" type="targz">https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.15.tar.gz</Archive>
|
||||
<AdditionalFiles>
|
||||
<AdditionalFile target="configs/kernel-x86_64-config">configs/kernel-x86_64-config</AdditionalFile>
|
||||
<AdditionalFile permission="0755" target="generate-module-list">scripts/generate-module-list</AdditionalFile>
|
||||
@@ -33,13 +33,22 @@
|
||||
</BuildDependencies>
|
||||
<Patches>
|
||||
<!-- Linux patches -->
|
||||
<Patch level="1" compressionType="xz">patches/linux/patch-5.10.78.xz</Patch>
|
||||
<Patch level="1" compressionType="xz">patches/linux/patch-5.15.1.xz</Patch>
|
||||
<!-- Mageia Linux patches-->
|
||||
<Patch level="1">patches/mageia/fs-aufs5.10.patch</Patch>
|
||||
<Patch level="1">patches/mageia/fs-aufs5.10-symbol-exports.patch</Patch>
|
||||
<Patch level="1">patches/mageia/fs-aufs5.10-tristate.patch</Patch>
|
||||
<Patch level="1">patches/mageia/fs-aufs5.15.patch</Patch>
|
||||
<Patch level="1">patches/mageia/fs-aufs5.15-symbol-exports.patch</Patch>
|
||||
<Patch level="1">patches/mageia/fs-aufs5.15-tristate.patch</Patch>
|
||||
|
||||
<Patch level="1">patches/mageia/fs-procfs-do-not-list-TID-0-in-proc-pid-task.patch</Patch>
|
||||
|
||||
<Patch level="1">patches/mageia/CVE-2019-12379.patch</Patch>
|
||||
<Patch level="1">patches/mageia/CVE-2020-16119-DCCP-CCID-structure-use-after-free.patch</Patch>
|
||||
|
||||
<Patch level="1">patches/mageia/platform-x86-add-shuttle-wmi-driver.patch</Patch>
|
||||
<Patch level="1">patches/mageia/platform-x86-shuttle-wmi-drop-devinit-exit.patch</Patch>
|
||||
<Patch level="1">patches/mageia/platform-x86-shuttle-wmi-4.2-buildfix.patch</Patch>
|
||||
<Patch level="1">patches/mageia/platform-x86-shuttle-wmi-4.13-buildfix.patch</Patch>
|
||||
<Patch level="1">patches/mageia/platform-x86-shuttle-wmi-kernel-5.5.patch</Patch>
|
||||
|
||||
<Patch level="1">patches/mageia/3rd-3rdparty-tree.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-3rdparty-merge.patch</Patch>
|
||||
@@ -52,7 +61,8 @@
|
||||
<Patch level="1">patches/mageia/3rd-rtl8812au.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8812au-Kconfig-Makefile.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8812au-rename.patch</Patch>
|
||||
<!-- <Patch level="1">patches/mageia/3rd-rtl8812au-kernel-5.10.patch</Patch> -->
|
||||
<Patch level="1">patches/mageia/3rd-rtl8812au-kernel-5.12.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8812au-kernel-5.15.patch</Patch>
|
||||
|
||||
<Patch level="1">patches/mageia/3rd-rtl8723de.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8723de-Kconfig-Makefile.patch</Patch>
|
||||
@@ -72,6 +82,8 @@
|
||||
<Patch level="1">patches/mageia/3rd-rtl8821ce-Kconfig-Makefile.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8821ce-5.8-fix.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8821ce-kernel-5.10.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8821ce-kernel-5.12.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8821ce-kernel-5.15.patch</Patch>
|
||||
|
||||
<Patch level="1">patches/mageia/3rd-fix-kconfig.patch</Patch>
|
||||
|
||||
@@ -142,6 +154,17 @@
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="63">
|
||||
<Date>2021-11-10</Date>
|
||||
<Version>5.15.1</Version>
|
||||
<Comment>Version bump.</Comment>
|
||||
<Type package="kernel">security</Type>
|
||||
<Requires>
|
||||
<Action package="kernel">systemRestart</Action>
|
||||
</Requires>
|
||||
<Name>İdris Kalp</Name>
|
||||
<Email>idriskalp@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="62">
|
||||
<Date>2021-11-08</Date>
|
||||
<Version>5.10.78</Version>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -16,38 +16,42 @@ Signed-off-by: Thomas Backlund <tmb@mageia.org>
|
||||
arch/x86/Kconfig | 2 ++
|
||||
4 files changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
--- linux-5.8/arch/arm64/Kconfig.orig 2020-08-05 16:08:02.466740952 +0200
|
||||
+++ linux-5.8/arch/arm64/Kconfig 2020-08-05 16:08:13.368741815 +0200
|
||||
@@ -1910,3 +1910,5 @@ source "arch/arm64/kvm/Kconfig"
|
||||
if CRYPTO
|
||||
source "arch/arm64/crypto/Kconfig"
|
||||
endif
|
||||
+
|
||||
+source "3rdparty/Kconfig"
|
||||
--- linux-5.8/Makefile.orig 2020-08-05 16:09:32.265748061 +0200
|
||||
+++ linux-5.8/Makefile 2020-08-05 16:10:02.553750458 +0200
|
||||
@@ -651,7 +651,7 @@ endif
|
||||
ifeq ($(KBUILD_EXTMOD),)
|
||||
# Objects we will link into vmlinux / subdirs we need to visit
|
||||
core-y := init/ usr/
|
||||
-drivers-y := drivers/ sound/
|
||||
+drivers-y := drivers/ sound/ 3rdparty/
|
||||
drivers-$(CONFIG_SAMPLES) += samples/
|
||||
drivers-y += net/ virt/
|
||||
libs-y := lib/
|
||||
--- linux-5.8/arch/x86/Kconfig.orig 2020-08-05 16:10:48.805754119 +0200
|
||||
+++ linux-5.8/arch/x86/Kconfig 2020-08-05 16:11:04.602755370 +0200
|
||||
@@ -2913,3 +2913,5 @@ source "drivers/firmware/Kconfig"
|
||||
source "arch/x86/kvm/Kconfig"
|
||||
|
||||
source "arch/x86/Kconfig.assembler"
|
||||
+
|
||||
+source "3rdparty/Kconfig"
|
||||
--- linux-5.8/arch/arm/Kconfig.orig 2020-08-05 16:12:08.314760413 +0200
|
||||
+++ linux-5.8/arch/arm/Kconfig 2020-08-05 16:12:22.786761559 +0200
|
||||
@@ -2064,3 +2064,5 @@ source "arch/arm/crypto/Kconfig"
|
||||
diff -Nurp linux-5.12/arch/arm/Kconfig linux-5.12-3rd/arch/arm/Kconfig
|
||||
--- linux-5.12/arch/arm/Kconfig 2021-04-25 23:49:08.000000000 +0300
|
||||
+++ linux-5.12-3rd/arch/arm/Kconfig 2021-04-26 18:10:06.513775304 +0300
|
||||
@@ -2016,3 +2016,5 @@ source "arch/arm/crypto/Kconfig"
|
||||
endif
|
||||
|
||||
source "arch/arm/Kconfig.assembler"
|
||||
+
|
||||
+source "3rdparty/Kconfig"
|
||||
diff -Nurp linux-5.12/arch/arm64/Kconfig linux-5.12-3rd/arch/arm64/Kconfig
|
||||
--- linux-5.12/arch/arm64/Kconfig 2021-04-25 23:49:08.000000000 +0300
|
||||
+++ linux-5.12-3rd/arch/arm64/Kconfig 2021-04-26 18:10:06.512775257 +0300
|
||||
@@ -1959,3 +1959,5 @@ source "arch/arm64/kvm/Kconfig"
|
||||
if CRYPTO
|
||||
source "arch/arm64/crypto/Kconfig"
|
||||
endif
|
||||
+
|
||||
+source "3rdparty/Kconfig"
|
||||
diff -Nurp linux-5.12/arch/x86/Kconfig linux-5.12-3rd/arch/x86/Kconfig
|
||||
--- linux-5.12/arch/x86/Kconfig 2021-04-25 23:49:08.000000000 +0300
|
||||
+++ linux-5.12-3rd/arch/x86/Kconfig 2021-04-26 18:10:06.512775257 +0300
|
||||
@@ -2909,3 +2909,5 @@ source "drivers/firmware/Kconfig"
|
||||
source "arch/x86/kvm/Kconfig"
|
||||
|
||||
source "arch/x86/Kconfig.assembler"
|
||||
+
|
||||
+source "3rdparty/Kconfig"
|
||||
diff -Nurp linux-5.14/Makefile linux-5.14-3rd/Makefile
|
||||
--- linux-5.14/Makefile
|
||||
+++ linux-5.14-3rd/Makefile
|
||||
@@ -670,7 +670,7 @@ endif
|
||||
ifeq ($(KBUILD_EXTMOD),)
|
||||
# Objects we will link into vmlinux / subdirs we need to visit
|
||||
core-y := init/ usr/ arch/$(SRCARCH)/
|
||||
-drivers-y := drivers/ sound/
|
||||
+drivers-y := drivers/ sound/ 3rdparty/
|
||||
drivers-$(CONFIG_SAMPLES) += samples/
|
||||
drivers-$(CONFIG_NET) += net/
|
||||
drivers-y += virt/
|
||||
|
||||
@@ -9,17 +9,6 @@ diff -up ./3rdparty/rtl8723de/Kconfig.tv ./3rdparty/rtl8723de/Kconfig
|
||||
+ help
|
||||
Help message of RTL8723DE
|
||||
|
||||
diff -up ./3rdparty/rtl8812au/Kconfig.tv ./3rdparty/rtl8812au/Kconfig
|
||||
--- ./3rdparty/rtl8812au/Kconfig.tv 2020-10-13 21:02:36.391016614 +0200
|
||||
+++ ./3rdparty/rtl8812au/Kconfig 2020-10-13 20:59:07.421226249 +0200
|
||||
@@ -1,6 +1,6 @@
|
||||
config RTL8812AU
|
||||
tristate "Realtek 8812au USB WiFi"
|
||||
depends on USB
|
||||
- ---help---
|
||||
+ help
|
||||
Help message of 8812au
|
||||
|
||||
diff -up ./3rdparty/rtl8821ce/Kconfig.tv ./3rdparty/rtl8821ce/Kconfig
|
||||
--- ./3rdparty/rtl8821ce/Kconfig.tv 2020-10-13 16:09:11.157856145 +0200
|
||||
+++ ./3rdparty/rtl8821ce/Kconfig 2020-10-13 20:58:17.242118685 +0200
|
||||
|
||||
@@ -50102,7 +50102,7 @@ diff -Nurp linux-5.6.3/3rdparty/rtl8723de/core/rtw_mlme_ext.c linux-5.6.3-rtl872
|
||||
+
|
||||
+ rtw_phydm_ability_backup(padapter);
|
||||
+
|
||||
+ sitesurvey_set_ici(padapter);
|
||||
+ sitesurvey_set_igi(padapter);
|
||||
+
|
||||
+ /* config dynamic functions for off channel */
|
||||
+ rtw_phydm_func_for_offchannel(padapter);
|
||||
|
||||
@@ -1,281 +0,0 @@
|
||||
From ee9619ba0c8840db6d59d11989c31e24a8f0d806 Mon Sep 17 00:00:00 2001
|
||||
From: Carlos <CGarces@users.noreply.github.com>
|
||||
Date: Sun, 8 Nov 2020 12:25:43 +0000
|
||||
Subject: [PATCH] Fix kernel 5.10-rc1
|
||||
|
||||
---
|
||||
3rdparty/rtl8812au/core/rtw_btcoex.c | 7 ++++++-
|
||||
3rdparty/rtl8812au/core/rtw_wlan_util.c | 10 ++++++----
|
||||
3rdparty/rtl8812au/os_dep/linux/os_intfs.c | 19 +++++++++++++-----
|
||||
3rdparty/rtl8812au/os_dep/osdep_service.c | 43 +++++++++++++++++++++++++++--------------
|
||||
4 files changed, 54 insertions(+), 25 deletions(-)
|
||||
|
||||
diff --git a/3rdparty/rtl8812au/core/rtw_btcoex.c b/3rdparty/rtl8812au/core/rtw_btcoex.c
|
||||
index d5b89bdc..f5e0f567 100644
|
||||
--- a/3rdparty/rtl8812au/core/rtw_btcoex.c
|
||||
+++ b/3rdparty/rtl8812au/core/rtw_btcoex.c
|
||||
@@ -1443,7 +1443,9 @@ u8 rtw_btcoex_sendmsgbysocket(_adapter *padapter, u8 *msg, u8 msg_size, bool for
|
||||
{
|
||||
u8 error;
|
||||
struct msghdr udpmsg;
|
||||
+#ifdef set_fs
|
||||
mm_segment_t oldfs;
|
||||
+#endif
|
||||
struct iovec iov;
|
||||
struct bt_coex_info *pcoex_info = &padapter->coex_info;
|
||||
|
||||
@@ -1473,15 +1475,18 @@ u8 rtw_btcoex_sendmsgbysocket(_adapter *padapter, u8 *msg, u8 msg_size, bool for
|
||||
udpmsg.msg_control = NULL;
|
||||
udpmsg.msg_controllen = 0;
|
||||
udpmsg.msg_flags = MSG_DONTWAIT | MSG_NOSIGNAL;
|
||||
+#ifdef set_fs
|
||||
oldfs = get_fs();
|
||||
set_fs(KERNEL_DS);
|
||||
-
|
||||
+#endif
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0))
|
||||
error = sock_sendmsg(pcoex_info->udpsock, &udpmsg);
|
||||
#else
|
||||
error = sock_sendmsg(pcoex_info->udpsock, &udpmsg, msg_size);
|
||||
#endif
|
||||
+#ifdef set_fs
|
||||
set_fs(oldfs);
|
||||
+#endif
|
||||
if (error < 0) {
|
||||
RTW_INFO("Error when sendimg msg, error:%d\n", error);
|
||||
return _FAIL;
|
||||
diff --git a/3rdparty/rtl8812au/core/rtw_wlan_util.c b/3rdparty/rtl8812au/core/rtw_wlan_util.c
|
||||
index b4cecd11..e465e9b5 100644
|
||||
--- a/3rdparty/rtl8812au/core/rtw_wlan_util.c
|
||||
+++ b/3rdparty/rtl8812au/core/rtw_wlan_util.c
|
||||
@@ -4744,7 +4744,9 @@ int rtw_dev_nlo_info_set(struct pno_nlo_info *nlo_info, pno_ssid_t *ssid,
|
||||
|
||||
int i = 0;
|
||||
struct file *fp;
|
||||
+#ifdef set_fs
|
||||
mm_segment_t fs;
|
||||
+#endif
|
||||
loff_t pos = 0;
|
||||
u8 *source = NULL;
|
||||
long len = 0;
|
||||
@@ -4780,10 +4782,10 @@ int rtw_dev_nlo_info_set(struct pno_nlo_info *nlo_info, pno_ssid_t *ssid,
|
||||
RTW_INFO("Error, cipher array using default value.\n");
|
||||
return 0;
|
||||
}
|
||||
-
|
||||
+#ifdef set_fs
|
||||
fs = get_fs();
|
||||
set_fs(KERNEL_DS);
|
||||
-
|
||||
+#endif
|
||||
source = rtw_zmalloc(2048);
|
||||
|
||||
if (source != NULL) {
|
||||
@@ -4791,10 +4793,10 @@ int rtw_dev_nlo_info_set(struct pno_nlo_info *nlo_info, pno_ssid_t *ssid,
|
||||
rtw_parse_cipher_list(nlo_info, source);
|
||||
rtw_mfree(source, 2048);
|
||||
}
|
||||
-
|
||||
+#ifdef set_fs
|
||||
set_fs(fs);
|
||||
filp_close(fp, NULL);
|
||||
-
|
||||
+#endif
|
||||
RTW_INFO("-%s-\n", __func__);
|
||||
return 0;
|
||||
}
|
||||
diff --git a/3rdparty/rtl8812au/os_dep/linux/os_intfs.c b/3rdparty/rtl8812au/os_dep/linux/os_intfs.c
|
||||
index 1085d6cd..a37e488b 100644
|
||||
--- a/3rdparty/rtl8812au/os_dep/linux/os_intfs.c
|
||||
+++ b/3rdparty/rtl8812au/os_dep/linux/os_intfs.c
|
||||
@@ -4029,7 +4029,9 @@ static int route_dump(u32 *gw_addr , int *gw_index)
|
||||
struct msghdr msg;
|
||||
struct iovec iov;
|
||||
struct sockaddr_nl nladdr;
|
||||
+#ifdef set_fs
|
||||
mm_segment_t oldfs;
|
||||
+#endif
|
||||
char *pg;
|
||||
int size = 0;
|
||||
|
||||
@@ -4067,16 +4069,18 @@ static int route_dump(u32 *gw_addr , int *gw_index)
|
||||
msg.msg_control = NULL;
|
||||
msg.msg_controllen = 0;
|
||||
msg.msg_flags = MSG_DONTWAIT;
|
||||
-
|
||||
+#ifdef set_fs
|
||||
oldfs = get_fs();
|
||||
set_fs(KERNEL_DS);
|
||||
+#endif
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0))
|
||||
err = sock_sendmsg(sock, &msg);
|
||||
#else
|
||||
err = sock_sendmsg(sock, &msg, sizeof(req));
|
||||
#endif
|
||||
+#ifdef set_fs
|
||||
set_fs(oldfs);
|
||||
-
|
||||
+#endif
|
||||
if (err < 0)
|
||||
goto out_sock;
|
||||
|
||||
@@ -4099,16 +4103,18 @@ static int route_dump(u32 *gw_addr , int *gw_index)
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 19, 0))
|
||||
iov_iter_init(&msg.msg_iter, READ, &iov, 1, PAGE_SIZE);
|
||||
#endif
|
||||
-
|
||||
+#ifdef set_fs
|
||||
oldfs = get_fs();
|
||||
set_fs(KERNEL_DS);
|
||||
+#endif
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 7, 0))
|
||||
err = sock_recvmsg(sock, &msg, MSG_DONTWAIT);
|
||||
#else
|
||||
err = sock_recvmsg(sock, &msg, PAGE_SIZE, MSG_DONTWAIT);
|
||||
#endif
|
||||
+#ifdef set_fs
|
||||
set_fs(oldfs);
|
||||
-
|
||||
+#endif
|
||||
if (err < 0)
|
||||
goto out_sock_pg;
|
||||
|
||||
@@ -4178,15 +4184,18 @@ static int route_dump(u32 *gw_addr , int *gw_index)
|
||||
msg.msg_controllen = 0;
|
||||
msg.msg_flags = MSG_DONTWAIT;
|
||||
|
||||
+#ifdef set_fs
|
||||
oldfs = get_fs();
|
||||
set_fs(KERNEL_DS);
|
||||
+#endif
|
||||
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0))
|
||||
err = sock_sendmsg(sock, &msg);
|
||||
#else
|
||||
err = sock_sendmsg(sock, &msg, sizeof(req));
|
||||
#endif
|
||||
+#ifdef set_fs
|
||||
set_fs(oldfs);
|
||||
-
|
||||
+#endif
|
||||
if (err > 0)
|
||||
goto restart;
|
||||
}
|
||||
diff --git a/3rdparty/rtl8812au/os_dep/osdep_service.c b/3rdparty/rtl8812au/os_dep/osdep_service.c
|
||||
index 7c6d1208..0769b49d 100644
|
||||
--- a/3rdparty/rtl8812au/os_dep/osdep_service.c
|
||||
+++ b/3rdparty/rtl8812au/os_dep/osdep_service.c
|
||||
@@ -2164,11 +2164,21 @@ static int writeFile(struct file *fp, char *buf, int len)
|
||||
{
|
||||
int wlen = 0, sum = 0;
|
||||
|
||||
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0))
|
||||
+ if (!(fp->f_mode & FMODE_CAN_WRITE))
|
||||
+#else
|
||||
if (!fp->f_op || !fp->f_op->write)
|
||||
+#endif
|
||||
return -EPERM;
|
||||
|
||||
while (sum < len) {
|
||||
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 14, 0))
|
||||
+ wlen = kernel_write(fp, buf + sum, len - sum, &fp->f_pos);
|
||||
+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 1, 0))
|
||||
+ wlen = __vfs_write(fp, buf + sum, len - sum, &fp->f_pos);
|
||||
+#else
|
||||
wlen = fp->f_op->write(fp, buf + sum, len - sum, &fp->f_pos);
|
||||
+#endif
|
||||
if (wlen > 0)
|
||||
sum += wlen;
|
||||
else if (0 != wlen)
|
||||
@@ -2191,19 +2201,19 @@ static int isFileReadable(const char *path, u32 *sz)
|
||||
{
|
||||
struct file *fp;
|
||||
int ret = 0;
|
||||
+#ifdef set_fs
|
||||
mm_segment_t oldfs;
|
||||
+#endif
|
||||
char buf;
|
||||
|
||||
fp = filp_open(path, O_RDONLY, 0);
|
||||
if (IS_ERR(fp))
|
||||
ret = PTR_ERR(fp);
|
||||
else {
|
||||
+#ifdef set_fs
|
||||
oldfs = get_fs();
|
||||
- #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 1, 0))
|
||||
set_fs(KERNEL_DS);
|
||||
- #else
|
||||
- set_fs(get_ds());
|
||||
- #endif
|
||||
+#endif
|
||||
|
||||
if (1 != readFile(fp, &buf, 1))
|
||||
ret = PTR_ERR(fp);
|
||||
@@ -2215,8 +2225,9 @@ static int isFileReadable(const char *path, u32 *sz)
|
||||
*sz = i_size_read(fp->f_dentry->d_inode);
|
||||
#endif
|
||||
}
|
||||
-
|
||||
+#ifdef set_fs
|
||||
set_fs(oldfs);
|
||||
+#endif
|
||||
filp_close(fp, NULL);
|
||||
}
|
||||
return ret;
|
||||
@@ -2232,22 +2243,23 @@ static int isFileReadable(const char *path, u32 *sz)
|
||||
static int retriveFromFile(const char *path, u8 *buf, u32 sz)
|
||||
{
|
||||
int ret = -1;
|
||||
+#ifdef set_fs
|
||||
mm_segment_t oldfs;
|
||||
+#endif
|
||||
struct file *fp;
|
||||
|
||||
if (path && buf) {
|
||||
ret = openFile(&fp, path, O_RDONLY, 0);
|
||||
if (0 == ret) {
|
||||
RTW_INFO("%s openFile path:%s fp=%p\n", __FUNCTION__, path , fp);
|
||||
-
|
||||
+#ifdef set_fs
|
||||
oldfs = get_fs();
|
||||
- #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 1, 0))
|
||||
set_fs(KERNEL_DS);
|
||||
- #else
|
||||
- set_fs(get_ds());
|
||||
- #endif
|
||||
ret = readFile(fp, buf, sz);
|
||||
set_fs(oldfs);
|
||||
+#else
|
||||
+ ret = readFile(fp, buf, sz);
|
||||
+#endif
|
||||
closeFile(fp);
|
||||
|
||||
RTW_INFO("%s readFile, ret:%d\n", __FUNCTION__, ret);
|
||||
@@ -2271,22 +2283,23 @@ static int retriveFromFile(const char *path, u8 *buf, u32 sz)
|
||||
static int storeToFile(const char *path, u8 *buf, u32 sz)
|
||||
{
|
||||
int ret = 0;
|
||||
+#ifdef set_fs
|
||||
mm_segment_t oldfs;
|
||||
+#endif
|
||||
struct file *fp;
|
||||
|
||||
if (path && buf) {
|
||||
ret = openFile(&fp, path, O_CREAT | O_WRONLY, 0666);
|
||||
if (0 == ret) {
|
||||
RTW_INFO("%s openFile path:%s fp=%p\n", __FUNCTION__, path , fp);
|
||||
-
|
||||
+#ifdef set_fs
|
||||
oldfs = get_fs();
|
||||
- #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 1, 0))
|
||||
set_fs(KERNEL_DS);
|
||||
- #else
|
||||
- set_fs(get_ds());
|
||||
- #endif
|
||||
ret = writeFile(fp, buf, sz);
|
||||
set_fs(oldfs);
|
||||
+#else
|
||||
+ ret = writeFile(fp, buf, sz);
|
||||
+#endif
|
||||
closeFile(fp);
|
||||
|
||||
RTW_INFO("%s writeFile, ret:%d\n", __FUNCTION__, ret);
|
||||
@@ -0,0 +1,12 @@
|
||||
diff -urp linux/3rdparty/rtl8812au.orig/os_dep/linux/recv_linux.c linux/3rdparty/rtl8812au/os_dep/linux/recv_linux.c
|
||||
--- linux/3rdparty/rtl8812au.orig/os_dep/linux/recv_linux.c 2021-04-26 18:35:37.411027594 +0300
|
||||
+++ linux/3rdparty/rtl8812au/os_dep/linux/recv_linux.c 2021-04-26 18:53:13.502814526 +0300
|
||||
@@ -353,7 +353,7 @@ static int napi_recv(_adapter *padapter,
|
||||
|
||||
rx_ok = _FALSE;
|
||||
|
||||
-#ifdef CONFIG_RTW_GRO
|
||||
+#if defined(CONFIG_RTW_GRO) && LINUX_VERSION_CODE < KERNEL_VERSION(5, 12, 0)
|
||||
if (pregistrypriv->en_gro) {
|
||||
if (rtw_napi_gro_receive(&padapter->napi, pskb) != GRO_DROP)
|
||||
rx_ok = _TRUE;
|
||||
@@ -0,0 +1,66 @@
|
||||
|
||||
From:
|
||||
https://github.com/aircrack-ng/rtl8812au/commit/47a38b7c736dd9e9baac9eb07a6dceb83429fb49
|
||||
|
||||
diff -Nurp linux-5.15/3rdparty/rtl8812au.orig/core/rtw_br_ext.c linux-5.15/3rdparty/rtl8812au/core/rtw_br_ext.c
|
||||
--- linux-5.15/3rdparty/rtl8812au.orig/core/rtw_br_ext.c 2021-11-08 23:40:48.236272741 +0200
|
||||
+++ linux-5.15/3rdparty/rtl8812au/core/rtw_br_ext.c 2021-11-08 23:49:12.118046953 +0200
|
||||
@@ -17,7 +17,10 @@
|
||||
#ifdef __KERNEL__
|
||||
#include <linux/if_arp.h>
|
||||
#include <net/ip.h>
|
||||
+ #include <linux/version.h>
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0)
|
||||
#include <net/ipx.h>
|
||||
+#endif
|
||||
#include <linux/atalk.h>
|
||||
#include <linux/udp.h>
|
||||
#include <linux/if_pppox.h>
|
||||
@@ -169,6 +172,7 @@ static __inline__ void __nat25_generate_
|
||||
}
|
||||
|
||||
|
||||
+#ifdef _NET_INET_IPX_H_
|
||||
static __inline__ void __nat25_generate_ipx_network_addr_with_node(unsigned char *networkAddr,
|
||||
unsigned int *ipxNetAddr, unsigned char *ipxNodeAddr)
|
||||
{
|
||||
@@ -189,6 +193,7 @@ static __inline__ void __nat25_generate_
|
||||
memcpy(networkAddr + 1, (unsigned char *)ipxNetAddr, 4);
|
||||
memcpy(networkAddr + 5, (unsigned char *)ipxSocketAddr, 2);
|
||||
}
|
||||
+#endif
|
||||
|
||||
|
||||
static __inline__ void __nat25_generate_apple_network_addr(unsigned char *networkAddr,
|
||||
@@ -330,6 +335,7 @@ static __inline__ int __nat25_network_ha
|
||||
x = networkAddr[7] ^ networkAddr[8] ^ networkAddr[9] ^ networkAddr[10];
|
||||
|
||||
return x & (NAT25_HASH_SIZE - 1);
|
||||
+#ifdef _NET_INET_IPX_H_
|
||||
} else if (networkAddr[0] == NAT25_IPX) {
|
||||
unsigned long x;
|
||||
|
||||
@@ -337,6 +343,7 @@ static __inline__ int __nat25_network_ha
|
||||
networkAddr[6] ^ networkAddr[7] ^ networkAddr[8] ^ networkAddr[9] ^ networkAddr[10];
|
||||
|
||||
return x & (NAT25_HASH_SIZE - 1);
|
||||
+#endif
|
||||
} else if (networkAddr[0] == NAT25_APPLE) {
|
||||
unsigned long x;
|
||||
|
||||
@@ -889,6 +896,7 @@ int nat25_db_handle(_adapter *priv, stru
|
||||
}
|
||||
}
|
||||
|
||||
+#ifdef _NET_INET_IPX_H_
|
||||
/*---------------------------------------------------*/
|
||||
/* Handle IPX and Apple Talk frame */
|
||||
/*---------------------------------------------------*/
|
||||
@@ -1109,6 +1117,7 @@ int nat25_db_handle(_adapter *priv, stru
|
||||
|
||||
return -1;
|
||||
}
|
||||
+#endif
|
||||
|
||||
/*---------------------------------------------------*/
|
||||
/* Handle PPPoE frame */
|
||||
@@ -4,15 +4,15 @@ Adjust driver bits so it keeps the name of the replaced driver
|
||||
Signed-off-by: Thomas Backlund <tmb@mageia.org>
|
||||
|
||||
---
|
||||
3rdparty/rtl8812au/Kconfig | 6 +++---
|
||||
3rdparty/rtl8812au/Kconfig | 7 +++----
|
||||
3rdparty/rtl8812au/Makefile | 8 ++++----
|
||||
3rdparty/rtl8812au/hal/hal_com.c | 2 +-
|
||||
3rdparty/rtl8812au/os_dep/linux/ioctl_cfg80211.c | 2 +-
|
||||
4 files changed, 9 insertions(+), 9 deletions(-)
|
||||
4 files changed, 9 insertions(+), 10 deletions(-)
|
||||
|
||||
diff -Nurp linux-5.5/3rdparty/rtl8812au.orig/hal/hal_com.c linux-5.5/3rdparty/rtl8812au/hal/hal_com.c
|
||||
--- linux-5.5/3rdparty/rtl8812au.orig/hal/hal_com.c 2020-03-09 01:46:04.750166543 +0200
|
||||
+++ linux-5.5/3rdparty/rtl8812au/hal/hal_com.c 2020-03-11 18:23:33.839805026 +0200
|
||||
diff -Nurp linux-5.11/3rdparty/rtl8812au.orig/hal/hal_com.c linux-5.11/3rdparty/rtl8812au/hal/hal_com.c
|
||||
--- linux-5.11/3rdparty/rtl8812au.orig/hal/hal_com.c 2021-03-07 18:43:20.313672664 +0200
|
||||
+++ linux-5.11/3rdparty/rtl8812au/hal/hal_com.c 2021-03-07 18:43:51.392141299 +0200
|
||||
@@ -12879,7 +12879,7 @@ bypass_hw_pg:
|
||||
_rtw_memset(hal_data->EEPROMMACAddr, 0, ETH_ALEN);
|
||||
ret = _FAIL;
|
||||
@@ -22,25 +22,25 @@ diff -Nurp linux-5.5/3rdparty/rtl8812au.orig/hal/hal_com.c linux-5.5/3rdparty/rt
|
||||
return ret;
|
||||
}
|
||||
|
||||
diff -Nurp linux-5.5/3rdparty/rtl8812au.orig/Kconfig linux-5.5/3rdparty/rtl8812au/Kconfig
|
||||
--- linux-5.5/3rdparty/rtl8812au.orig/Kconfig 2020-03-09 01:46:04.682163430 +0200
|
||||
+++ linux-5.5/3rdparty/rtl8812au/Kconfig 2020-03-11 18:21:33.457357175 +0200
|
||||
@@ -1,6 +1,6 @@
|
||||
diff -Nurp linux-5.11/3rdparty/rtl8812au.orig/Kconfig linux-5.11/3rdparty/rtl8812au/Kconfig
|
||||
--- linux-5.11/3rdparty/rtl8812au.orig/Kconfig 2021-03-07 18:43:20.369675309 +0200
|
||||
+++ linux-5.11/3rdparty/rtl8812au/Kconfig 2021-03-07 18:45:22.910465892 +0200
|
||||
@@ -1,6 +1,5 @@
|
||||
-config 88XXAU
|
||||
- tristate "Realtek 88XXau USB WiFi"
|
||||
+config RTL8812AU
|
||||
+ tristate "Realtek 8812au USB WiFi"
|
||||
depends on USB
|
||||
---help---
|
||||
help
|
||||
- Help message of 88XXau
|
||||
-
|
||||
+ Help message of 8812au
|
||||
diff -Nurp linux-5.11/3rdparty/rtl8812au.orig/Makefile linux-5.11/3rdparty/rtl8812au/Makefile
|
||||
--- linux-5.11/3rdparty/rtl8812au.orig/Makefile 2021-03-07 18:43:20.370675357 +0200
|
||||
+++ linux-5.11/3rdparty/rtl8812au/Makefile 2021-03-07 18:43:51.401141725 +0200
|
||||
@@ -180,9 +180,9 @@ endif
|
||||
|
||||
diff -Nurp linux-5.5/3rdparty/rtl8812au.orig/Makefile linux-5.5/3rdparty/rtl8812au/Makefile
|
||||
--- linux-5.5/3rdparty/rtl8812au.orig/Makefile 2020-03-09 01:46:04.682163430 +0200
|
||||
+++ linux-5.5/3rdparty/rtl8812au/Makefile 2020-03-11 18:22:16.769317077 +0200
|
||||
@@ -179,9 +179,9 @@ endif
|
||||
|
||||
ifeq ($(CONFIG_RTL8812A)_$(CONFIG_RTL8821A)_$(CONFIG_RTL8814A), y_y_y)
|
||||
ifeq ($(CONFIG_RTL8812A)_$(CONFIG_RTL8821A)_$(CONFIG_RTL8814A), y_y_n)
|
||||
|
||||
-EXTRA_CFLAGS += -DDRV_NAME=\"rtl88XXau\"
|
||||
+EXTRA_CFLAGS += -DDRV_NAME=\"rtl8812au\"
|
||||
@@ -50,7 +50,7 @@ diff -Nurp linux-5.5/3rdparty/rtl8812au.orig/Makefile linux-5.5/3rdparty/rtl8812
|
||||
endif
|
||||
else
|
||||
EXTRA_CFLAGS += -DDRV_NAME=\"rtl8812au\"
|
||||
@@ -2233,11 +2233,11 @@ $(MODULE_NAME)-y += $(_PLATFORM_FILES)
|
||||
@@ -2232,11 +2232,11 @@ $(MODULE_NAME)-y += $(_PLATFORM_FILES)
|
||||
|
||||
$(MODULE_NAME)-$(CONFIG_MP_INCLUDED) += core/rtw_mp.o
|
||||
|
||||
@@ -64,10 +64,10 @@ diff -Nurp linux-5.5/3rdparty/rtl8812au.orig/Makefile linux-5.5/3rdparty/rtl8812
|
||||
|
||||
all: modules
|
||||
|
||||
diff -Nurp linux-5.5/3rdparty/rtl8812au.orig/os_dep/linux/ioctl_cfg80211.c linux-5.5/3rdparty/rtl8812au/os_dep/linux/ioctl_cfg80211.c
|
||||
--- linux-5.5/3rdparty/rtl8812au.orig/os_dep/linux/ioctl_cfg80211.c 2020-03-09 01:46:04.798168741 +0200
|
||||
+++ linux-5.5/3rdparty/rtl8812au/os_dep/linux/ioctl_cfg80211.c 2020-03-11 18:24:09.196405329 +0200
|
||||
@@ -2639,7 +2639,7 @@ void rtw_cfg80211_unlink_bss(_adapter *p
|
||||
diff -Nurp linux-5.11/3rdparty/rtl8812au.orig/os_dep/linux/ioctl_cfg80211.c linux-5.11/3rdparty/rtl8812au/os_dep/linux/ioctl_cfg80211.c
|
||||
--- linux-5.11/3rdparty/rtl8812au.orig/os_dep/linux/ioctl_cfg80211.c 2021-03-07 18:43:20.371675404 +0200
|
||||
+++ linux-5.11/3rdparty/rtl8812au/os_dep/linux/ioctl_cfg80211.c 2021-03-07 18:43:51.402141772 +0200
|
||||
@@ -2646,7 +2646,7 @@ void rtw_cfg80211_unlink_bss(_adapter *p
|
||||
#endif
|
||||
|
||||
if (!wiphy) {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,12 @@
|
||||
diff -urp linux/3rdparty/rtl8821ce.orig/os_dep/linux/recv_linux.c linux/3rdparty/rtl8821ce/os_dep/linux/recv_linux.c
|
||||
--- linux/3rdparty/rtl8821ce.orig/os_dep/linux/recv_linux.c 2021-04-26 18:35:37.690041052 +0300
|
||||
+++ linux/3rdparty/rtl8821ce/os_dep/linux/recv_linux.c 2021-04-26 18:53:23.534295732 +0300
|
||||
@@ -353,7 +353,7 @@ static int napi_recv(_adapter *padapter,
|
||||
|
||||
rx_ok = _FALSE;
|
||||
|
||||
-#ifdef CONFIG_RTW_GRO
|
||||
+#if defined(CONFIG_RTW_GRO) && LINUX_VERSION_CODE < KERNEL_VERSION(5, 12, 0)
|
||||
if (pregistrypriv->en_gro) {
|
||||
if (rtw_napi_gro_receive(&padapter->napi, pskb) != GRO_DROP)
|
||||
rx_ok = _TRUE;
|
||||
@@ -0,0 +1,66 @@
|
||||
|
||||
From:
|
||||
https://github.com/aircrack-ng/rtl8812au/commit/47a38b7c736dd9e9baac9eb07a6dceb83429fb49
|
||||
|
||||
diff -Nurp linux-5.15/3rdparty/rtl8821ce.orig/core/rtw_br_ext.c linux-5.15/3rdparty/rtl8821ce/core/rtw_br_ext.c
|
||||
--- linux-5.15/3rdparty/rtl8821ce.orig/core/rtw_br_ext.c 2021-11-08 23:40:48.236272741 +0200
|
||||
+++ linux-5.15/3rdparty/rtl8821ce/core/rtw_br_ext.c 2021-11-08 23:49:12.118046953 +0200
|
||||
@@ -17,7 +17,10 @@
|
||||
#ifdef __KERNEL__
|
||||
#include <linux/if_arp.h>
|
||||
#include <net/ip.h>
|
||||
+ #include <linux/version.h>
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0)
|
||||
#include <net/ipx.h>
|
||||
+#endif
|
||||
#include <linux/atalk.h>
|
||||
#include <linux/udp.h>
|
||||
#include <linux/if_pppox.h>
|
||||
@@ -169,6 +172,7 @@ static __inline__ void __nat25_generate_
|
||||
}
|
||||
|
||||
|
||||
+#ifdef _NET_INET_IPX_H_
|
||||
static __inline__ void __nat25_generate_ipx_network_addr_with_node(unsigned char *networkAddr,
|
||||
unsigned int *ipxNetAddr, unsigned char *ipxNodeAddr)
|
||||
{
|
||||
@@ -189,6 +193,7 @@ static __inline__ void __nat25_generate_
|
||||
memcpy(networkAddr + 1, (unsigned char *)ipxNetAddr, 4);
|
||||
memcpy(networkAddr + 5, (unsigned char *)ipxSocketAddr, 2);
|
||||
}
|
||||
+#endif
|
||||
|
||||
|
||||
static __inline__ void __nat25_generate_apple_network_addr(unsigned char *networkAddr,
|
||||
@@ -330,6 +335,7 @@ static __inline__ int __nat25_network_ha
|
||||
x = networkAddr[7] ^ networkAddr[8] ^ networkAddr[9] ^ networkAddr[10];
|
||||
|
||||
return x & (NAT25_HASH_SIZE - 1);
|
||||
+#ifdef _NET_INET_IPX_H_
|
||||
} else if (networkAddr[0] == NAT25_IPX) {
|
||||
unsigned long x;
|
||||
|
||||
@@ -337,6 +343,7 @@ static __inline__ int __nat25_network_ha
|
||||
networkAddr[6] ^ networkAddr[7] ^ networkAddr[8] ^ networkAddr[9] ^ networkAddr[10];
|
||||
|
||||
return x & (NAT25_HASH_SIZE - 1);
|
||||
+#endif
|
||||
} else if (networkAddr[0] == NAT25_APPLE) {
|
||||
unsigned long x;
|
||||
|
||||
@@ -889,6 +896,7 @@ int nat25_db_handle(_adapter *priv, stru
|
||||
}
|
||||
}
|
||||
|
||||
+#ifdef _NET_INET_IPX_H_
|
||||
/*---------------------------------------------------*/
|
||||
/* Handle IPX and Apple Talk frame */
|
||||
/*---------------------------------------------------*/
|
||||
@@ -1109,6 +1117,7 @@ int nat25_db_handle(_adapter *priv, stru
|
||||
|
||||
return -1;
|
||||
}
|
||||
+#endif
|
||||
|
||||
/*---------------------------------------------------*/
|
||||
/* Handle PPPoE frame */
|
||||
@@ -1,284 +0,0 @@
|
||||
SPDX-License-Identifier: GPL-2.0
|
||||
aufs5.x-rcN standalone patch
|
||||
|
||||
diff --git a/fs/dcache.c b/fs/dcache.c
|
||||
index ddca6240e0db4..30dec552278dc 100644
|
||||
--- a/fs/dcache.c
|
||||
+++ b/fs/dcache.c
|
||||
@@ -1390,6 +1390,7 @@ void d_walk(struct dentry *parent, void *data,
|
||||
seq = 1;
|
||||
goto again;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(d_walk);
|
||||
|
||||
struct check_mount {
|
||||
struct vfsmount *mnt;
|
||||
@@ -2935,6 +2936,7 @@ void d_exchange(struct dentry *dentry1, struct dentry *dentry2)
|
||||
|
||||
write_sequnlock(&rename_lock);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(d_exchange);
|
||||
|
||||
/**
|
||||
* d_ancestor - search for an ancestor
|
||||
diff --git a/fs/exec.c b/fs/exec.c
|
||||
index 547a2390baf54..18d51d0face68 100644
|
||||
--- a/fs/exec.c
|
||||
+++ b/fs/exec.c
|
||||
@@ -113,6 +113,7 @@ bool path_noexec(const struct path *path)
|
||||
return (path->mnt->mnt_flags & MNT_NOEXEC) ||
|
||||
(path->mnt->mnt_sb->s_iflags & SB_I_NOEXEC);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(path_noexec);
|
||||
|
||||
#ifdef CONFIG_USELIB
|
||||
/*
|
||||
diff --git a/fs/fcntl.c b/fs/fcntl.c
|
||||
index 073ca6af500f3..b18afdf81e762 100644
|
||||
--- a/fs/fcntl.c
|
||||
+++ b/fs/fcntl.c
|
||||
@@ -85,6 +85,7 @@ int setfl(int fd, struct file *filp, unsigned long arg)
|
||||
out:
|
||||
return error;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(setfl);
|
||||
|
||||
static void f_modown(struct file *filp, struct pid *pid, enum pid_type type,
|
||||
int force)
|
||||
diff --git a/fs/file_table.c b/fs/file_table.c
|
||||
index 709ada3151da5..27a3e3c9f2a82 100644
|
||||
--- a/fs/file_table.c
|
||||
+++ b/fs/file_table.c
|
||||
@@ -162,6 +162,7 @@ struct file *alloc_empty_file(int flags, const struct cred *cred)
|
||||
}
|
||||
return ERR_PTR(-ENFILE);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(alloc_empty_file);
|
||||
|
||||
/*
|
||||
* Variant of alloc_empty_file() that doesn't check and modify nr_files.
|
||||
@@ -376,6 +377,7 @@ void __fput_sync(struct file *file)
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(fput);
|
||||
+EXPORT_SYMBOL_GPL(__fput_sync);
|
||||
|
||||
void __init files_init(void)
|
||||
{
|
||||
diff --git a/fs/inode.c b/fs/inode.c
|
||||
index e7f0c614a58f3..6fe0a92a4c93c 100644
|
||||
--- a/fs/inode.c
|
||||
+++ b/fs/inode.c
|
||||
@@ -1776,6 +1776,7 @@ int update_time(struct inode *inode, struct timespec64 *time, int flags)
|
||||
return inode->i_op->update_time(inode, time, flags);
|
||||
return generic_update_time(inode, time, flags);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(update_time);
|
||||
|
||||
/**
|
||||
* touch_atime - update the access time
|
||||
diff --git a/fs/namespace.c b/fs/namespace.c
|
||||
index 451dee24a546a..38078cbede431 100644
|
||||
--- a/fs/namespace.c
|
||||
+++ b/fs/namespace.c
|
||||
@@ -431,6 +431,7 @@ void __mnt_drop_write(struct vfsmount *mnt)
|
||||
mnt_dec_writers(real_mount(mnt));
|
||||
preempt_enable();
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(__mnt_drop_write);
|
||||
|
||||
/**
|
||||
* mnt_drop_write - give up write access to a mount
|
||||
@@ -797,6 +798,7 @@ int is_current_mnt_ns(struct vfsmount *mnt)
|
||||
{
|
||||
return check_mnt(real_mount(mnt));
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(is_current_mnt_ns);
|
||||
|
||||
/*
|
||||
* vfsmount lock must be held for write
|
||||
@@ -1961,6 +1963,7 @@ int iterate_mounts(int (*f)(struct vfsmount *, void *), void *arg,
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(iterate_mounts);
|
||||
|
||||
static void lock_mnt_tree(struct mount *mnt)
|
||||
{
|
||||
diff --git a/fs/notify/group.c b/fs/notify/group.c
|
||||
index a4a4b1c64d32a..86dc2efb1850c 100644
|
||||
--- a/fs/notify/group.c
|
||||
+++ b/fs/notify/group.c
|
||||
@@ -100,6 +100,7 @@ void fsnotify_get_group(struct fsnotify_group *group)
|
||||
{
|
||||
refcount_inc(&group->refcnt);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(fsnotify_get_group);
|
||||
|
||||
/*
|
||||
* Drop a reference to a group. Free it if it's through.
|
||||
diff --git a/fs/open.c b/fs/open.c
|
||||
index 9af548fb841b0..2ff09b709f7bf 100644
|
||||
--- a/fs/open.c
|
||||
+++ b/fs/open.c
|
||||
@@ -65,6 +65,7 @@ int do_truncate(struct dentry *dentry, loff_t length, unsigned int time_attrs,
|
||||
inode_unlock(dentry->d_inode);
|
||||
return ret;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(do_truncate);
|
||||
|
||||
long vfs_truncate(const struct path *path, loff_t length)
|
||||
{
|
||||
diff --git a/fs/read_write.c b/fs/read_write.c
|
||||
index 75f764b434184..7582bb3fb634b 100644
|
||||
--- a/fs/read_write.c
|
||||
+++ b/fs/read_write.c
|
||||
@@ -503,6 +503,7 @@ ssize_t vfs_read(struct file *file, char __user *buf, size_t count, loff_t *pos)
|
||||
inc_syscr(current);
|
||||
return ret;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(vfs_read);
|
||||
|
||||
static ssize_t new_sync_write(struct file *filp, const char __user *buf, size_t len, loff_t *ppos)
|
||||
{
|
||||
@@ -613,6 +614,7 @@ ssize_t vfs_write(struct file *file, const char __user *buf, size_t count, loff_
|
||||
file_end_write(file);
|
||||
return ret;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(vfs_write);
|
||||
|
||||
/* file_ppos returns &file->f_pos or NULL if file is stream */
|
||||
static inline loff_t *file_ppos(struct file *file)
|
||||
diff --git a/fs/splice.c b/fs/splice.c
|
||||
index 55b5356262085..c13ac0fbac318 100644
|
||||
--- a/fs/splice.c
|
||||
+++ b/fs/splice.c
|
||||
@@ -763,6 +763,7 @@ long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
|
||||
return warn_unsupported(out, "write");
|
||||
return out->f_op->splice_write(pipe, out, ppos, len, flags);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(do_splice_from);
|
||||
|
||||
/*
|
||||
* Attempt to initiate a splice from a file to a pipe.
|
||||
@@ -787,6 +788,7 @@ long do_splice_to(struct file *in, loff_t *ppos,
|
||||
return warn_unsupported(in, "read");
|
||||
return in->f_op->splice_read(in, ppos, pipe, len, flags);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(do_splice_to);
|
||||
|
||||
/**
|
||||
* splice_direct_to_actor - splices data directly between two non-pipes
|
||||
diff --git a/fs/sync.c b/fs/sync.c
|
||||
index b7b5a0a0df6ff..fa5c7fba7f1ba 100644
|
||||
--- a/fs/sync.c
|
||||
+++ b/fs/sync.c
|
||||
@@ -39,6 +39,7 @@ int __sync_filesystem(struct super_block *sb, int wait)
|
||||
sb->s_op->sync_fs(sb, wait);
|
||||
return __sync_blockdev(sb->s_bdev, wait);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(__sync_filesystem);
|
||||
|
||||
/*
|
||||
* Write out and wait upon all dirty data associated with this
|
||||
diff --git a/fs/xattr.c b/fs/xattr.c
|
||||
index cd7a563e8bcd4..7d989d57b0f0d 100644
|
||||
--- a/fs/xattr.c
|
||||
+++ b/fs/xattr.c
|
||||
@@ -360,6 +360,7 @@ vfs_getxattr_alloc(struct dentry *dentry, const char *name, char **xattr_value,
|
||||
*xattr_value = value;
|
||||
return error;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(vfs_getxattr_alloc);
|
||||
|
||||
ssize_t
|
||||
__vfs_getxattr(struct dentry *dentry, struct inode *inode, const char *name,
|
||||
diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
|
||||
index 7f006a47790cf..be002c3a30833 100644
|
||||
--- a/kernel/locking/lockdep.c
|
||||
+++ b/kernel/locking/lockdep.c
|
||||
@@ -209,6 +209,7 @@ inline struct lock_class *lockdep_hlock_class(struct held_lock *hlock)
|
||||
*/
|
||||
return lock_classes + class_idx;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(lockdep_hlock_class);
|
||||
#define hlock_class(hlock) lockdep_hlock_class(hlock)
|
||||
|
||||
#ifdef CONFIG_LOCK_STAT
|
||||
diff --git a/kernel/task_work.c b/kernel/task_work.c
|
||||
index 8d6e1217c451c..0e73637adda86 100644
|
||||
--- a/kernel/task_work.c
|
||||
+++ b/kernel/task_work.c
|
||||
@@ -154,3 +154,4 @@ void task_work_run(void)
|
||||
} while (work);
|
||||
}
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(task_work_run);
|
||||
diff --git a/security/security.c b/security/security.c
|
||||
index a28045dc9e7f6..310cf38efeec7 100644
|
||||
--- a/security/security.c
|
||||
+++ b/security/security.c
|
||||
@@ -1093,6 +1093,7 @@ int security_path_rmdir(const struct path *dir, struct dentry *dentry)
|
||||
return 0;
|
||||
return call_int_hook(path_rmdir, 0, dir, dentry);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_rmdir);
|
||||
|
||||
int security_path_unlink(const struct path *dir, struct dentry *dentry)
|
||||
{
|
||||
@@ -1109,6 +1110,7 @@ int security_path_symlink(const struct path *dir, struct dentry *dentry,
|
||||
return 0;
|
||||
return call_int_hook(path_symlink, 0, dir, dentry, old_name);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_symlink);
|
||||
|
||||
int security_path_link(struct dentry *old_dentry, const struct path *new_dir,
|
||||
struct dentry *new_dentry)
|
||||
@@ -1117,6 +1119,7 @@ int security_path_link(struct dentry *old_dentry, const struct path *new_dir,
|
||||
return 0;
|
||||
return call_int_hook(path_link, 0, old_dentry, new_dir, new_dentry);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_link);
|
||||
|
||||
int security_path_rename(const struct path *old_dir, struct dentry *old_dentry,
|
||||
const struct path *new_dir, struct dentry *new_dentry,
|
||||
@@ -1144,6 +1147,7 @@ int security_path_truncate(const struct path *path)
|
||||
return 0;
|
||||
return call_int_hook(path_truncate, 0, path);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_truncate);
|
||||
|
||||
int security_path_chmod(const struct path *path, umode_t mode)
|
||||
{
|
||||
@@ -1151,6 +1155,7 @@ int security_path_chmod(const struct path *path, umode_t mode)
|
||||
return 0;
|
||||
return call_int_hook(path_chmod, 0, path, mode);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_chmod);
|
||||
|
||||
int security_path_chown(const struct path *path, kuid_t uid, kgid_t gid)
|
||||
{
|
||||
@@ -1158,6 +1163,7 @@ int security_path_chown(const struct path *path, kuid_t uid, kgid_t gid)
|
||||
return 0;
|
||||
return call_int_hook(path_chown, 0, path, uid, gid);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_chown);
|
||||
|
||||
int security_path_chroot(const struct path *path)
|
||||
{
|
||||
@@ -1258,6 +1264,7 @@ int security_inode_permission(struct inode *inode, int mask)
|
||||
return 0;
|
||||
return call_int_hook(inode_permission, 0, inode, mask);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_inode_permission);
|
||||
|
||||
int security_inode_setattr(struct dentry *dentry, struct iattr *attr)
|
||||
{
|
||||
@@ -1450,6 +1457,7 @@ int security_file_permission(struct file *file, int mask)
|
||||
|
||||
return fsnotify_perm(file, mask);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_file_permission);
|
||||
|
||||
int security_file_alloc(struct file *file)
|
||||
{
|
||||
@@ -0,0 +1,284 @@
|
||||
|
||||
fs/dcache.c | 2 ++
|
||||
fs/exec.c | 1 +
|
||||
fs/fcntl.c | 1 +
|
||||
fs/file_table.c | 2 ++
|
||||
fs/inode.c | 1 +
|
||||
fs/namespace.c | 3 +++
|
||||
fs/notify/group.c | 1 +
|
||||
fs/open.c | 1 +
|
||||
fs/read_write.c | 2 ++
|
||||
fs/splice.c | 2 ++
|
||||
fs/sync.c | 1 +
|
||||
fs/xattr.c | 1 +
|
||||
kernel/locking/lockdep.c | 1 +
|
||||
kernel/task_work.c | 1 +
|
||||
security/security.c | 8 ++++++++
|
||||
15 files changed, 28 insertions(+)
|
||||
|
||||
diff -Nurp linux-5.15.1-aufs/fs/dcache.c linux-5.15.1-aufs-mod/fs/dcache.c
|
||||
--- linux-5.15.1-aufs/fs/dcache.c 2021-11-08 23:01:48.275645778 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/dcache.c 2021-11-08 23:02:45.270309130 +0200
|
||||
@@ -1425,6 +1425,7 @@ rename_retry:
|
||||
seq = 1;
|
||||
goto again;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(d_walk);
|
||||
|
||||
struct check_mount {
|
||||
struct vfsmount *mnt;
|
||||
@@ -2970,6 +2971,7 @@ void d_exchange(struct dentry *dentry1,
|
||||
|
||||
write_sequnlock(&rename_lock);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(d_exchange);
|
||||
|
||||
/**
|
||||
* d_ancestor - search for an ancestor
|
||||
diff -Nurp linux-5.15.1-aufs/fs/exec.c linux-5.15.1-aufs-mod/fs/exec.c
|
||||
--- linux-5.15.1-aufs/fs/exec.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/exec.c 2021-11-08 23:02:45.270309130 +0200
|
||||
@@ -111,6 +111,7 @@ bool path_noexec(const struct path *path
|
||||
return (path->mnt->mnt_flags & MNT_NOEXEC) ||
|
||||
(path->mnt->mnt_sb->s_iflags & SB_I_NOEXEC);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(path_noexec);
|
||||
|
||||
#ifdef CONFIG_USELIB
|
||||
/*
|
||||
diff -Nurp linux-5.15.1-aufs/fs/fcntl.c linux-5.15.1-aufs-mod/fs/fcntl.c
|
||||
--- linux-5.15.1-aufs/fs/fcntl.c 2021-11-08 23:01:48.275645778 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/fcntl.c 2021-11-08 23:02:45.270309130 +0200
|
||||
@@ -86,6 +86,7 @@ int setfl(int fd, struct file *filp, uns
|
||||
out:
|
||||
return error;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(setfl);
|
||||
|
||||
static void f_modown(struct file *filp, struct pid *pid, enum pid_type type,
|
||||
int force)
|
||||
diff -Nurp linux-5.15.1-aufs/fs/file_table.c linux-5.15.1-aufs-mod/fs/file_table.c
|
||||
--- linux-5.15.1-aufs/fs/file_table.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/file_table.c 2021-11-08 23:02:45.270309130 +0200
|
||||
@@ -161,6 +161,7 @@ over:
|
||||
}
|
||||
return ERR_PTR(-ENFILE);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(alloc_empty_file);
|
||||
|
||||
/*
|
||||
* Variant of alloc_empty_file() that doesn't check and modify nr_files.
|
||||
@@ -375,6 +376,7 @@ void __fput_sync(struct file *file)
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(fput);
|
||||
+EXPORT_SYMBOL_GPL(__fput_sync);
|
||||
|
||||
void __init files_init(void)
|
||||
{
|
||||
diff -Nurp linux-5.15.1-aufs/fs/inode.c linux-5.15.1-aufs-mod/fs/inode.c
|
||||
--- linux-5.15.1-aufs/fs/inode.c 2021-11-08 23:01:48.275645778 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/inode.c 2021-11-08 23:02:45.270309130 +0200
|
||||
@@ -1788,6 +1788,7 @@ int update_time(struct inode *inode, str
|
||||
return inode->i_op->update_time(inode, time, flags);
|
||||
return generic_update_time(inode, time, flags);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(update_time);
|
||||
|
||||
/**
|
||||
* atime_needs_update - update the access time
|
||||
diff -Nurp linux-5.15.1-aufs/fs/namespace.c linux-5.15.1-aufs-mod/fs/namespace.c
|
||||
--- linux-5.15.1-aufs/fs/namespace.c 2021-11-08 23:01:48.276645825 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/namespace.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -439,6 +439,7 @@ void __mnt_drop_write(struct vfsmount *m
|
||||
mnt_dec_writers(real_mount(mnt));
|
||||
preempt_enable();
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(__mnt_drop_write);
|
||||
|
||||
/**
|
||||
* mnt_drop_write - give up write access to a mount
|
||||
@@ -813,6 +814,7 @@ int is_current_mnt_ns(struct vfsmount *m
|
||||
{
|
||||
return check_mnt(real_mount(mnt));
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(is_current_mnt_ns);
|
||||
|
||||
/*
|
||||
* vfsmount lock must be held for write
|
||||
@@ -2011,6 +2013,7 @@ int iterate_mounts(int (*f)(struct vfsmo
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(iterate_mounts);
|
||||
|
||||
static void lock_mnt_tree(struct mount *mnt)
|
||||
{
|
||||
diff -Nurp linux-5.15.1-aufs/fs/notify/group.c linux-5.15.1-aufs-mod/fs/notify/group.c
|
||||
--- linux-5.15.1-aufs/fs/notify/group.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/notify/group.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -100,6 +100,7 @@ void fsnotify_get_group(struct fsnotify_
|
||||
{
|
||||
refcount_inc(&group->refcnt);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(fsnotify_get_group);
|
||||
|
||||
/*
|
||||
* Drop a reference to a group. Free it if it's through.
|
||||
diff -Nurp linux-5.15.1-aufs/fs/open.c linux-5.15.1-aufs-mod/fs/open.c
|
||||
--- linux-5.15.1-aufs/fs/open.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/open.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -65,6 +65,7 @@ int do_truncate(struct user_namespace *m
|
||||
inode_unlock(dentry->d_inode);
|
||||
return ret;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(do_truncate);
|
||||
|
||||
long vfs_truncate(const struct path *path, loff_t length)
|
||||
{
|
||||
diff -Nurp linux-5.15.1-aufs/fs/read_write.c linux-5.15.1-aufs-mod/fs/read_write.c
|
||||
--- linux-5.15.1-aufs/fs/read_write.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/read_write.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -492,6 +492,7 @@ ssize_t vfs_read(struct file *file, char
|
||||
inc_syscr(current);
|
||||
return ret;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(vfs_read);
|
||||
|
||||
static ssize_t new_sync_write(struct file *filp, const char __user *buf, size_t len, loff_t *ppos)
|
||||
{
|
||||
@@ -602,6 +603,7 @@ ssize_t vfs_write(struct file *file, con
|
||||
file_end_write(file);
|
||||
return ret;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(vfs_write);
|
||||
|
||||
/* file_ppos returns &file->f_pos or NULL if file is stream */
|
||||
static inline loff_t *file_ppos(struct file *file)
|
||||
diff -Nurp linux-5.15.1-aufs/fs/splice.c linux-5.15.1-aufs-mod/fs/splice.c
|
||||
--- linux-5.15.1-aufs/fs/splice.c 2021-11-08 23:01:48.276645825 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/splice.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -766,6 +766,7 @@ long do_splice_from(struct pipe_inode_in
|
||||
return warn_unsupported(out, "write");
|
||||
return out->f_op->splice_write(pipe, out, ppos, len, flags);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(do_splice_from);
|
||||
|
||||
/*
|
||||
* Attempt to initiate a splice from a file to a pipe.
|
||||
@@ -795,6 +796,7 @@ long do_splice_to(struct file *in, loff_
|
||||
return warn_unsupported(in, "read");
|
||||
return in->f_op->splice_read(in, ppos, pipe, len, flags);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(do_splice_to);
|
||||
|
||||
/**
|
||||
* splice_direct_to_actor - splices data directly between two non-pipes
|
||||
diff -Nurp linux-5.15.1-aufs/fs/sync.c linux-5.15.1-aufs-mod/fs/sync.c
|
||||
--- linux-5.15.1-aufs/fs/sync.c 2021-11-08 23:01:48.276645825 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/sync.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -39,6 +39,7 @@ int __sync_filesystem(struct super_block
|
||||
sb->s_op->sync_fs(sb, wait);
|
||||
return __sync_blockdev(sb->s_bdev, wait);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(__sync_filesystem);
|
||||
|
||||
/*
|
||||
* Write out and wait upon all dirty data associated with this
|
||||
diff -Nurp linux-5.15.1-aufs/fs/xattr.c linux-5.15.1-aufs-mod/fs/xattr.c
|
||||
--- linux-5.15.1-aufs/fs/xattr.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/fs/xattr.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -384,6 +384,7 @@ vfs_getxattr_alloc(struct user_namespace
|
||||
*xattr_value = value;
|
||||
return error;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(vfs_getxattr_alloc);
|
||||
|
||||
ssize_t
|
||||
__vfs_getxattr(struct dentry *dentry, struct inode *inode, const char *name,
|
||||
diff -Nurp linux-5.15.1-aufs/kernel/locking/lockdep.c linux-5.15.1-aufs-mod/kernel/locking/lockdep.c
|
||||
--- linux-5.15.1-aufs/kernel/locking/lockdep.c 2021-11-08 23:01:48.277645871 +0200
|
||||
+++ linux-5.15.1-aufs-mod/kernel/locking/lockdep.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -210,6 +210,7 @@ inline struct lock_class *lockdep_hlock_
|
||||
*/
|
||||
return lock_classes + class_idx;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(lockdep_hlock_class);
|
||||
#define hlock_class(hlock) lockdep_hlock_class(hlock)
|
||||
|
||||
#ifdef CONFIG_LOCK_STAT
|
||||
diff -Nurp linux-5.15.1-aufs/kernel/task_work.c linux-5.15.1-aufs-mod/kernel/task_work.c
|
||||
--- linux-5.15.1-aufs/kernel/task_work.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/kernel/task_work.c 2021-11-08 23:02:45.271309177 +0200
|
||||
@@ -167,3 +167,4 @@ void task_work_run(void)
|
||||
} while (work);
|
||||
}
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(task_work_run);
|
||||
diff -Nurp linux-5.15.1-aufs/security/security.c linux-5.15.1-aufs-mod/security/security.c
|
||||
--- linux-5.15.1-aufs/security/security.c 2021-10-31 22:53:10.000000000 +0200
|
||||
+++ linux-5.15.1-aufs-mod/security/security.c 2021-11-08 23:02:45.272309224 +0200
|
||||
@@ -1147,6 +1147,7 @@ int security_path_rmdir(const struct pat
|
||||
return 0;
|
||||
return call_int_hook(path_rmdir, 0, dir, dentry);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_rmdir);
|
||||
|
||||
int security_path_unlink(const struct path *dir, struct dentry *dentry)
|
||||
{
|
||||
@@ -1163,6 +1164,7 @@ int security_path_symlink(const struct p
|
||||
return 0;
|
||||
return call_int_hook(path_symlink, 0, dir, dentry, old_name);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_symlink);
|
||||
|
||||
int security_path_link(struct dentry *old_dentry, const struct path *new_dir,
|
||||
struct dentry *new_dentry)
|
||||
@@ -1171,6 +1173,7 @@ int security_path_link(struct dentry *ol
|
||||
return 0;
|
||||
return call_int_hook(path_link, 0, old_dentry, new_dir, new_dentry);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_link);
|
||||
|
||||
int security_path_rename(const struct path *old_dir, struct dentry *old_dentry,
|
||||
const struct path *new_dir, struct dentry *new_dentry,
|
||||
@@ -1198,6 +1201,7 @@ int security_path_truncate(const struct
|
||||
return 0;
|
||||
return call_int_hook(path_truncate, 0, path);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_truncate);
|
||||
|
||||
int security_path_chmod(const struct path *path, umode_t mode)
|
||||
{
|
||||
@@ -1205,6 +1209,7 @@ int security_path_chmod(const struct pat
|
||||
return 0;
|
||||
return call_int_hook(path_chmod, 0, path, mode);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_chmod);
|
||||
|
||||
int security_path_chown(const struct path *path, kuid_t uid, kgid_t gid)
|
||||
{
|
||||
@@ -1212,6 +1217,7 @@ int security_path_chown(const struct pat
|
||||
return 0;
|
||||
return call_int_hook(path_chown, 0, path, uid, gid);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_path_chown);
|
||||
|
||||
int security_path_chroot(const struct path *path)
|
||||
{
|
||||
@@ -1312,6 +1318,7 @@ int security_inode_permission(struct ino
|
||||
return 0;
|
||||
return call_int_hook(inode_permission, 0, inode, mask);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_inode_permission);
|
||||
|
||||
int security_inode_setattr(struct dentry *dentry, struct iattr *attr)
|
||||
{
|
||||
@@ -1509,6 +1516,7 @@ int security_file_permission(struct file
|
||||
|
||||
return fsnotify_perm(file, mask);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(security_file_permission);
|
||||
|
||||
int security_file_alloc(struct file *file)
|
||||
{
|
||||
@@ -0,0 +1,24 @@
|
||||
|
||||
Allow aufs to be built as module.
|
||||
|
||||
Signed-off-by: Thomas Backlund <tmb@mageia.org>
|
||||
|
||||
--- a/fs/aufs/Kconfig
|
||||
+++ b/fs/aufs/Kconfig
|
||||
@@ -1,6 +1,6 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
config AUFS_FS
|
||||
- bool "Aufs (Advanced multi layered unification filesystem) support"
|
||||
+ tristate "Aufs (Advanced multi layered unification filesystem) support"
|
||||
help
|
||||
Aufs is a stackable unification filesystem such as Unionfs,
|
||||
which unifies several directories and provides a merged single
|
||||
@@ -72,7 +72,7 @@ endchoice
|
||||
|
||||
config AUFS_EXPORT
|
||||
bool "NFS-exportable aufs"
|
||||
- depends on EXPORTFS = y
|
||||
+ depends on EXPORTFS
|
||||
help
|
||||
If you want to export your mounted aufs via NFS, then enable this
|
||||
option. There are several requirements for this configuration.
|
||||
File diff suppressed because it is too large
Load Diff
+36
@@ -0,0 +1,36 @@
|
||||
From 435664ed44c4a17e6715d007061e2b155d3535c8 Mon Sep 17 00:00:00 2001
|
||||
From: Florian Weimer <fweimer@redhat.com>
|
||||
Date: Fri, 1 Oct 2021 13:38:15 +1000
|
||||
Subject: procfs: do not list TID 0 in /proc/<pid>/task
|
||||
|
||||
If a task exits concurrently, task_pid_nr_ns may return 0.
|
||||
|
||||
Link: https://lkml.kernel.org/r/8735pn5dx7.fsf@oldenburg.str.redhat.com
|
||||
Signed-off-by: Florian Weimer <fweimer@redhat.com>
|
||||
Acked-by: Christian Brauner <christian.brauner@ubuntu.com>
|
||||
Cc: Kees Cook <keescook@chromium.org>
|
||||
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
|
||||
Cc: Alexey Dobriyan <adobriyan@gmail.com>
|
||||
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
|
||||
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
|
||||
---
|
||||
fs/proc/base.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/fs/proc/base.c b/fs/proc/base.c
|
||||
index 533d5836eb9a4..54f29399088f0 100644
|
||||
--- a/fs/proc/base.c
|
||||
+++ b/fs/proc/base.c
|
||||
@@ -3800,6 +3800,9 @@ static int proc_task_readdir(struct file *file, struct dir_context *ctx)
|
||||
char name[10 + 1];
|
||||
unsigned int len;
|
||||
tid = task_pid_nr_ns(task, ns);
|
||||
+ if (!tid)
|
||||
+ /* The task has just exited. */
|
||||
+ continue;
|
||||
len = snprintf(name, sizeof(name), "%u", tid);
|
||||
if (!proc_fill_cache(file, ctx, name, len,
|
||||
proc_task_instantiate, task, NULL)) {
|
||||
--
|
||||
cgit 1.2.3-1.el7
|
||||
|
||||
+1439
File diff suppressed because it is too large
Load Diff
+30
@@ -0,0 +1,30 @@
|
||||
|
||||
sparse_keymap_free() is now obsolete.
|
||||
|
||||
Signed-off-by: Thomas Backlund <tmb@mageia.org>
|
||||
|
||||
--- linux/drivers/platform/x86/shuttle-wmi.c.orig 2017-10-15 00:39:53.041395980 +0300
|
||||
+++ linux/drivers/platform/x86/shuttle-wmi.c 2017-10-15 01:05:37.008662881 +0300
|
||||
@@ -763,14 +763,9 @@ static int shuttle_wmi_input_init(struct
|
||||
goto err_free_dev;
|
||||
|
||||
rc = input_register_device(input);
|
||||
- if (rc)
|
||||
- goto err_free_keymap;
|
||||
|
||||
priv->inputdev = input;
|
||||
return 0;
|
||||
-
|
||||
-err_free_keymap:
|
||||
- sparse_keymap_free(input);
|
||||
err_free_dev:
|
||||
input_free_device(input);
|
||||
return rc;
|
||||
@@ -780,7 +775,6 @@ static void shuttle_wmi_input_remove(str
|
||||
{
|
||||
struct input_dev *input = priv->inputdev;
|
||||
|
||||
- sparse_keymap_free(input);
|
||||
input_unregister_device(input);
|
||||
}
|
||||
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
--- linux/drivers/platform/x86/shuttle-wmi.c.orig 2015-09-30 00:51:13.000000000 +0300
|
||||
+++ linux/drivers/platform/x86/shuttle-wmi.c 2015-09-30 02:04:20.808458393 +0300
|
||||
@@ -26,6 +26,7 @@
|
||||
#include <linux/input/sparse-keymap.h>
|
||||
#include <linux/backlight.h>
|
||||
#include <linux/fb.h>
|
||||
+#include <acpi/video.h>
|
||||
|
||||
MODULE_AUTHOR("Herton Ronaldo Krzesinski");
|
||||
MODULE_DESCRIPTION("Shuttle WMI Extras Driver");
|
||||
@@ -1161,7 +1162,7 @@ static int shuttle_wmi_probe(struct plat
|
||||
goto err_notify;
|
||||
}
|
||||
|
||||
- if (!acpi_video_backlight_support()) {
|
||||
+ if (acpi_video_get_backlight_type() == acpi_backlight_vendor) {
|
||||
rc = shuttle_wmi_backlight_init(priv);
|
||||
if (rc)
|
||||
goto err_backlight;
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
--- ./drivers/platform/x86/shuttle-wmi.c.orig 2013-01-16 18:13:57.000000000 +0200
|
||||
+++ ./drivers/platform/x86/shuttle-wmi.c 2013-01-16 18:41:13.676433242 +0200
|
||||
@@ -294,7 +294,7 @@ static struct dmi_system_id shuttle_dmi_
|
||||
{}
|
||||
};
|
||||
|
||||
-static struct dmi_system_id __devinitdata shuttle_quirk_bl_dmi_ids[] = {
|
||||
+static struct dmi_system_id shuttle_quirk_bl_dmi_ids[] = {
|
||||
{
|
||||
.ident = "Positivo M13",
|
||||
.matches = {
|
||||
@@ -1105,7 +1105,7 @@ fn_init_err:
|
||||
return rc;
|
||||
}
|
||||
|
||||
-static int __devinit shuttle_wmi_probe(struct platform_device *pdev)
|
||||
+static int shuttle_wmi_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct shuttle_wmi *priv;
|
||||
int rc, i;
|
||||
@@ -1181,7 +1181,7 @@ err_debugfs:
|
||||
return rc;
|
||||
}
|
||||
|
||||
-static int __devexit shuttle_wmi_remove(struct platform_device *pdev)
|
||||
+static int shuttle_wmi_remove(struct platform_device *pdev)
|
||||
{
|
||||
struct shuttle_wmi *priv = platform_get_drvdata(pdev);
|
||||
|
||||
@@ -1211,7 +1211,7 @@ static struct platform_driver shuttle_wm
|
||||
.pm = &shuttle_wmi_pm_ops,
|
||||
},
|
||||
.probe = shuttle_wmi_probe,
|
||||
- .remove = __devexit_p(shuttle_wmi_remove),
|
||||
+ .remove = shuttle_wmi_remove,
|
||||
};
|
||||
|
||||
static struct platform_device *shuttle_wmi_device;
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
|
||||
pr_warning is now pr_warn
|
||||
|
||||
Signed-off-by: Thomas Backlund <tmb@mageia.org>
|
||||
|
||||
|
||||
--- ./drivers/platform/x86/shuttle-wmi.c.orig 2020-02-03 17:22:16.374611323 +0200
|
||||
+++ ./drivers/platform/x86/shuttle-wmi.c 2020-02-03 18:19:03.663898669 +0200
|
||||
@@ -379,7 +379,7 @@ static int wmi_setget_mtd(struct shuttle
|
||||
kfree(obj);
|
||||
} else {
|
||||
if (res) {
|
||||
- pr_warning("No result from WMI method (%s)", __func__);
|
||||
+ pr_warn("No result from WMI method (%s)", __func__);
|
||||
res = NULL;
|
||||
}
|
||||
}
|
||||
@@ -628,7 +628,7 @@ static void shuttle_wmi_notify(u32 value
|
||||
|
||||
status = wmi_get_event_data(value, &res);
|
||||
if (status != AE_OK) {
|
||||
- pr_warning("unable to retrieve wmi event status"
|
||||
+ pr_warn("unable to retrieve wmi event status"
|
||||
" (error=0x%x)\n", status);
|
||||
return;
|
||||
}
|
||||
@@ -678,7 +678,7 @@ static void shuttle_wmi_notify(u32 value
|
||||
break;
|
||||
case 0xec: /* Lost event */
|
||||
if (printk_ratelimit())
|
||||
- pr_warning("lost event because of buggy BIOS");
|
||||
+ pr_warn("lost event because of buggy BIOS");
|
||||
break;
|
||||
default:
|
||||
pr_info("unknown wmi notification type (0x%02x)\n", type);
|
||||
@@ -12,19 +12,28 @@
|
||||
<IsA>app:console</IsA>
|
||||
<Summary>CPU power management tools</Summary>
|
||||
<Description>cpupowertools contains utilities to manage power management and frequency scaling policies of modern CPUs.</Description>
|
||||
<Archive sha1sum="baa841f624f6cfdafe01026963dcd32b334a3752" type="targz">https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.10.tar.gz</Archive>
|
||||
<Archive sha1sum="01961045127c21f8a9dbaa9e7705dbb9e4cffbaa" type="targz">https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.15.tar.gz</Archive>
|
||||
<BuildDependencies>
|
||||
<Dependency>pciutils-devel</Dependency>
|
||||
</BuildDependencies>
|
||||
<Patches>
|
||||
<!-- Linux patches -->
|
||||
<Patch level="1" compressionType="xz">patches/linux/patch-5.10.78.xz</Patch>
|
||||
<Patch level="1" compressionType="xz">patches/linux/patch-5.15.1.xz</Patch>
|
||||
<!-- Mageia Linux patches-->
|
||||
<Patch level="1">patches/mageia/fs-aufs5.10.patch</Patch>
|
||||
<Patch level="1">patches/mageia/fs-aufs5.10-symbol-exports.patch</Patch>
|
||||
<Patch level="1">patches/mageia/fs-aufs5.10-tristate.patch</Patch>
|
||||
<Patch level="1">patches/mageia/fs-aufs5.15.patch</Patch>
|
||||
<Patch level="1">patches/mageia/fs-aufs5.15-symbol-exports.patch</Patch>
|
||||
<Patch level="1">patches/mageia/fs-aufs5.15-tristate.patch</Patch>
|
||||
|
||||
<Patch level="1">patches/mageia/fs-procfs-do-not-list-TID-0-in-proc-pid-task.patch</Patch>
|
||||
|
||||
<Patch level="1">patches/mageia/CVE-2019-12379.patch</Patch>
|
||||
<Patch level="1">patches/mageia/CVE-2020-16119-DCCP-CCID-structure-use-after-free.patch</Patch>
|
||||
|
||||
<Patch level="1">patches/mageia/platform-x86-add-shuttle-wmi-driver.patch</Patch>
|
||||
<Patch level="1">patches/mageia/platform-x86-shuttle-wmi-drop-devinit-exit.patch</Patch>
|
||||
<Patch level="1">patches/mageia/platform-x86-shuttle-wmi-4.2-buildfix.patch</Patch>
|
||||
<Patch level="1">patches/mageia/platform-x86-shuttle-wmi-4.13-buildfix.patch</Patch>
|
||||
<Patch level="1">patches/mageia/platform-x86-shuttle-wmi-kernel-5.5.patch</Patch>
|
||||
|
||||
<Patch level="1">patches/mageia/3rd-3rdparty-tree.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-3rdparty-merge.patch</Patch>
|
||||
@@ -37,7 +46,8 @@
|
||||
<Patch level="1">patches/mageia/3rd-rtl8812au.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8812au-Kconfig-Makefile.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8812au-rename.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8812au-kernel-5.10.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8812au-kernel-5.12.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8812au-kernel-5.15.patch</Patch>
|
||||
|
||||
<Patch level="1">patches/mageia/3rd-rtl8723de.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8723de-Kconfig-Makefile.patch</Patch>
|
||||
@@ -57,6 +67,8 @@
|
||||
<Patch level="1">patches/mageia/3rd-rtl8821ce-Kconfig-Makefile.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8821ce-5.8-fix.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8821ce-kernel-5.10.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8821ce-kernel-5.12.patch</Patch>
|
||||
<Patch level="1">patches/mageia/3rd-rtl8821ce-kernel-5.15.patch</Patch>
|
||||
|
||||
<Patch level="1">patches/mageia/3rd-fix-kconfig.patch</Patch>
|
||||
|
||||
@@ -90,6 +102,13 @@
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="61">
|
||||
<Date>2021-11-10</Date>
|
||||
<Version>5.15.1</Version>
|
||||
<Comment>Version bump.</Comment>
|
||||
<Name>İdris Kalp</Name>
|
||||
<Email>idriskalp@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="60">
|
||||
<Date>2021-11-08</Date>
|
||||
<Version>5.10.78</Version>
|
||||
|
||||
Reference in New Issue
Block a user