summaryrefslogtreecommitdiff
path: root/meta-openbmc-mods/meta-common/recipes-kernel/linux/linux-aspeed/CVE-2020-14356/0002-cgroup-Fix-sock_cgroup_data-on-big-endian.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-openbmc-mods/meta-common/recipes-kernel/linux/linux-aspeed/CVE-2020-14356/0002-cgroup-Fix-sock_cgroup_data-on-big-endian.patch')
-rw-r--r--meta-openbmc-mods/meta-common/recipes-kernel/linux/linux-aspeed/CVE-2020-14356/0002-cgroup-Fix-sock_cgroup_data-on-big-endian.patch39
1 files changed, 39 insertions, 0 deletions
diff --git a/meta-openbmc-mods/meta-common/recipes-kernel/linux/linux-aspeed/CVE-2020-14356/0002-cgroup-Fix-sock_cgroup_data-on-big-endian.patch b/meta-openbmc-mods/meta-common/recipes-kernel/linux/linux-aspeed/CVE-2020-14356/0002-cgroup-Fix-sock_cgroup_data-on-big-endian.patch
new file mode 100644
index 000000000..e43c6489e
--- /dev/null
+++ b/meta-openbmc-mods/meta-common/recipes-kernel/linux/linux-aspeed/CVE-2020-14356/0002-cgroup-Fix-sock_cgroup_data-on-big-endian.patch
@@ -0,0 +1,39 @@
+From 14b032b8f8fce03a546dcf365454bec8c4a58d7d Mon Sep 17 00:00:00 2001
+From: Cong Wang <xiyou.wangcong@gmail.com>
+Date: Thu, 9 Jul 2020 16:28:44 -0700
+Subject: [PATCH] cgroup: Fix sock_cgroup_data on big-endian.
+
+In order for no_refcnt and is_data to be the lowest order two
+bits in the 'val' we have to pad out the bitfield of the u8.
+
+Fixes: ad0f75e5f57c ("cgroup: fix cgroup_sk_alloc() for sk_clone_lock()")
+Reported-by: Guenter Roeck <linux@roeck-us.net>
+Signed-off-by: David S. Miller <davem@davemloft.net>
+Signed-off-by: Jae Hyun Yoo <jae.hyun.yoo@intel.com>
+---
+ include/linux/cgroup-defs.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/include/linux/cgroup-defs.h b/include/linux/cgroup-defs.h
+index 4f1cd0edc57d..fee0b5547cd0 100644
+--- a/include/linux/cgroup-defs.h
++++ b/include/linux/cgroup-defs.h
+@@ -792,6 +792,7 @@ struct sock_cgroup_data {
+ struct {
+ u8 is_data : 1;
+ u8 no_refcnt : 1;
++ u8 unused : 6;
+ u8 padding;
+ u16 prioidx;
+ u32 classid;
+@@ -801,6 +802,7 @@ struct sock_cgroup_data {
+ u32 classid;
+ u16 prioidx;
+ u8 padding;
++ u8 unused : 6;
+ u8 no_refcnt : 1;
+ u8 is_data : 1;
+ } __packed;
+--
+2.17.1
+