net: avoid unnecessary sock_flag() check when enable timestamp
authorYafang Shao <laoar.shao@gmail.com>
Mon, 6 Aug 2018 03:57:02 +0000 (11:57 +0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 6 Aug 2018 17:42:48 +0000 (10:42 -0700)
The sock_flag() check is alreay inside sock_enable_timestamp(), so it is
unnecessary checking it in the caller.

    void sock_enable_timestamp(struct sock *sk, int flag)
    {
        if (!sock_flag(sk, flag)) {
            ...
        }
    }

Signed-off-by: Yafang Shao <laoar.shao@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/compat.c
net/core/sock.c

index 7242cce..3b2105f 100644 (file)
@@ -466,8 +466,7 @@ int compat_sock_get_timestamp(struct sock *sk, struct timeval __user *userstamp)
 
        ctv = (struct compat_timeval __user *) userstamp;
        err = -ENOENT;
-       if (!sock_flag(sk, SOCK_TIMESTAMP))
-               sock_enable_timestamp(sk, SOCK_TIMESTAMP);
+       sock_enable_timestamp(sk, SOCK_TIMESTAMP);
        tv = ktime_to_timeval(sk->sk_stamp);
        if (tv.tv_sec == -1)
                return err;
@@ -494,8 +493,7 @@ int compat_sock_get_timestampns(struct sock *sk, struct timespec __user *usersta
 
        ctv = (struct compat_timespec __user *) userstamp;
        err = -ENOENT;
-       if (!sock_flag(sk, SOCK_TIMESTAMP))
-               sock_enable_timestamp(sk, SOCK_TIMESTAMP);
+       sock_enable_timestamp(sk, SOCK_TIMESTAMP);
        ts = ktime_to_timespec(sk->sk_stamp);
        if (ts.tv_sec == -1)
                return err;
index e31233f..3730eb8 100644 (file)
@@ -2900,8 +2900,8 @@ EXPORT_SYMBOL(lock_sock_fast);
 int sock_get_timestamp(struct sock *sk, struct timeval __user *userstamp)
 {
        struct timeval tv;
-       if (!sock_flag(sk, SOCK_TIMESTAMP))
-               sock_enable_timestamp(sk, SOCK_TIMESTAMP);
+
+       sock_enable_timestamp(sk, SOCK_TIMESTAMP);
        tv = ktime_to_timeval(sk->sk_stamp);
        if (tv.tv_sec == -1)
                return -ENOENT;
@@ -2916,8 +2916,8 @@ EXPORT_SYMBOL(sock_get_timestamp);
 int sock_get_timestampns(struct sock *sk, struct timespec __user *userstamp)
 {
        struct timespec ts;
-       if (!sock_flag(sk, SOCK_TIMESTAMP))
-               sock_enable_timestamp(sk, SOCK_TIMESTAMP);
+
+       sock_enable_timestamp(sk, SOCK_TIMESTAMP);
        ts = ktime_to_timespec(sk->sk_stamp);
        if (ts.tv_sec == -1)
                return -ENOENT;