mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-08 23:55:14 +00:00
scm: remove use CMSG{_COMPAT}_ALIGN(sizeof(struct {compat_}cmsghdr))
sizeof(struct cmsghdr) and sizeof(struct compat_cmsghdr) already aligned. remove use CMSG_ALIGN(sizeof(struct cmsghdr)) and CMSG_COMPAT_ALIGN(sizeof(struct compat_cmsghdr)) keep code consistent. Signed-off-by: yuan linyu <Linyu.Yuan@alcatel-sbell.com.cn> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
ec2507d2a3
commit
1ff8cebf49
5 changed files with 12 additions and 14 deletions
14
net/compat.c
14
net/compat.c
|
@ -90,11 +90,11 @@ int get_compat_msghdr(struct msghdr *kmsg,
|
|||
#define CMSG_COMPAT_ALIGN(len) ALIGN((len), sizeof(s32))
|
||||
|
||||
#define CMSG_COMPAT_DATA(cmsg) \
|
||||
((void __user *)((char __user *)(cmsg) + CMSG_COMPAT_ALIGN(sizeof(struct compat_cmsghdr))))
|
||||
((void __user *)((char __user *)(cmsg) + sizeof(struct compat_cmsghdr)))
|
||||
#define CMSG_COMPAT_SPACE(len) \
|
||||
(CMSG_COMPAT_ALIGN(sizeof(struct compat_cmsghdr)) + CMSG_COMPAT_ALIGN(len))
|
||||
(sizeof(struct compat_cmsghdr) + CMSG_COMPAT_ALIGN(len))
|
||||
#define CMSG_COMPAT_LEN(len) \
|
||||
(CMSG_COMPAT_ALIGN(sizeof(struct compat_cmsghdr)) + (len))
|
||||
(sizeof(struct compat_cmsghdr) + (len))
|
||||
|
||||
#define CMSG_COMPAT_FIRSTHDR(msg) \
|
||||
(((msg)->msg_controllen) >= sizeof(struct compat_cmsghdr) ? \
|
||||
|
@ -141,8 +141,7 @@ int cmsghdr_from_user_compat_to_kern(struct msghdr *kmsg, struct sock *sk,
|
|||
if (!CMSG_COMPAT_OK(ucmlen, ucmsg, kmsg))
|
||||
return -EINVAL;
|
||||
|
||||
tmp = ((ucmlen - CMSG_COMPAT_ALIGN(sizeof(*ucmsg))) +
|
||||
CMSG_ALIGN(sizeof(struct cmsghdr)));
|
||||
tmp = ((ucmlen - sizeof(*ucmsg)) + sizeof(struct cmsghdr));
|
||||
tmp = CMSG_ALIGN(tmp);
|
||||
kcmlen += tmp;
|
||||
ucmsg = cmsg_compat_nxthdr(kmsg, ucmsg, ucmlen);
|
||||
|
@ -168,8 +167,7 @@ int cmsghdr_from_user_compat_to_kern(struct msghdr *kmsg, struct sock *sk,
|
|||
goto Efault;
|
||||
if (!CMSG_COMPAT_OK(ucmlen, ucmsg, kmsg))
|
||||
goto Einval;
|
||||
tmp = ((ucmlen - CMSG_COMPAT_ALIGN(sizeof(*ucmsg))) +
|
||||
CMSG_ALIGN(sizeof(struct cmsghdr)));
|
||||
tmp = ((ucmlen - sizeof(*ucmsg)) + sizeof(struct cmsghdr));
|
||||
if ((char *)kcmsg_base + kcmlen - (char *)kcmsg < CMSG_ALIGN(tmp))
|
||||
goto Einval;
|
||||
kcmsg->cmsg_len = tmp;
|
||||
|
@ -178,7 +176,7 @@ int cmsghdr_from_user_compat_to_kern(struct msghdr *kmsg, struct sock *sk,
|
|||
__get_user(kcmsg->cmsg_type, &ucmsg->cmsg_type) ||
|
||||
copy_from_user(CMSG_DATA(kcmsg),
|
||||
CMSG_COMPAT_DATA(ucmsg),
|
||||
(ucmlen - CMSG_COMPAT_ALIGN(sizeof(*ucmsg)))))
|
||||
(ucmlen - sizeof(*ucmsg))))
|
||||
goto Efault;
|
||||
|
||||
/* Advance. */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue