提交 18931c89 编写于 作者: A Andreas Schwab 提交者: Catalin Marinas

arm64: fix padding computation in struct ucontext

The expression to compute the padding needed to fill the uc_sigmask field
to 1024 bits actually computes the padding needed for 1080 bits.
Fortunately, due to the 16-byte alignment of the following field
(uc_mcontext) the definition in glibc contains enough bytes of padding
after uc_sigmask so that the overall offsets and size match in both
definitions.
Signed-off-by: NAndreas Schwab <schwab@suse.de>
Signed-off-by: NCatalin Marinas <catalin.marinas@arm.com>
上级 a2c91547
...@@ -22,7 +22,7 @@ struct ucontext { ...@@ -22,7 +22,7 @@ struct ucontext {
stack_t uc_stack; stack_t uc_stack;
sigset_t uc_sigmask; sigset_t uc_sigmask;
/* glibc uses a 1024-bit sigset_t */ /* glibc uses a 1024-bit sigset_t */
__u8 __unused[(1024 - sizeof(sigset_t)) / 8]; __u8 __unused[1024 / 8 - sizeof(sigset_t)];
/* last for future expansion */ /* last for future expansion */
struct sigcontext uc_mcontext; struct sigcontext uc_mcontext;
}; };
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册