summaryrefslogtreecommitdiff
path: root/include/linux/cgroup-defs.h
diff options
context:
space:
mode:
authorCong Wang <xiyou.wangcong@gmail.com>2020-07-09 16:28:44 -0700
committerDavid S. Miller <davem@davemloft.net>2020-07-09 16:28:44 -0700
commit14b032b8f8fce03a546dcf365454bec8c4a58d7d (patch)
tree1ec04893c8a8055b730cc597d368415e619ac0cc /include/linux/cgroup-defs.h
parentce69e563b325f620863830c246a8698ccea52048 (diff)
downloadlwn-14b032b8f8fce03a546dcf365454bec8c4a58d7d.tar.gz
lwn-14b032b8f8fce03a546dcf365454bec8c4a58d7d.zip
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>
Diffstat (limited to 'include/linux/cgroup-defs.h')
-rw-r--r--include/linux/cgroup-defs.h2
1 files changed, 2 insertions, 0 deletions
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;