2021-03-11 04:47:50

by Shubhankar Kuranagatti

[permalink] [raw]
Subject: [PATCH] net: socket.c: Fix comparison issues

The constant has been placed to the right side of the test.

Signed-off-by: Shubhankar Kuranagatti <[email protected]>
---
net/socket.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/net/socket.c b/net/socket.c
index 84a8049c2b09..a23dd4348793 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -1495,7 +1495,7 @@ int __sys_socket(int family, int type, int protocol)
return -EINVAL;
type &= SOCK_TYPE_MASK;

- if (SOCK_NONBLOCK != O_NONBLOCK && (flags & SOCK_NONBLOCK))
+ if ((flags & SOCK_NONBLOCK) && SOCK_NONBLOCK != O_NONBLOCK)
flags = (flags & ~SOCK_NONBLOCK) | O_NONBLOCK;

retval = sock_create(family, type, protocol, &sock);
@@ -1526,7 +1526,7 @@ int __sys_socketpair(int family, int type, int protocol, int __user *usockvec)
return -EINVAL;
type &= SOCK_TYPE_MASK;

- if (SOCK_NONBLOCK != O_NONBLOCK && (flags & SOCK_NONBLOCK))
+ if ((flags & SOCK_NONBLOCK) && SOCK_NONBLOCK != O_NONBLOCK)
flags = (flags & ~SOCK_NONBLOCK) | O_NONBLOCK;

/*
@@ -1693,7 +1693,7 @@ int __sys_accept4_file(struct file *file, unsigned file_flags,
if (flags & ~(SOCK_CLOEXEC | SOCK_NONBLOCK))
return -EINVAL;

- if (SOCK_NONBLOCK != O_NONBLOCK && (flags & SOCK_NONBLOCK))
+ if ((flags & SOCK_NONBLOCK) && SOCK_NONBLOCK != O_NONBLOCK)
flags = (flags & ~SOCK_NONBLOCK) | O_NONBLOCK;

sock = sock_from_file(file);
--
2.17.1


2021-03-12 05:07:43

by Xie He

[permalink] [raw]
Subject: Re: [PATCH] net: socket.c: Fix comparison issues

What is the reason for this change? Why is the new way better than the
old way?