[PATCH] [virt-server] trace-cmd: Fix a minor bug in `trace-cmd listen`

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



There is a potential bug caused by C's operator precedence when checking
the flags set by `poll` in `trace-cmd listen`:

			if (!fds[i].revents & POLLIN)
				continue;

vs

			if (!(fds[i].revents & POLLIN))
				continue;

Curiously enough, the bug doesn't manifest itself since POLLIN is equal
to 1 and `trace-cmd listen` waits only for read events so no other flags
will be set by `poll`.

Signed-off-by: Slavomir Kaslev <kaslevs@xxxxxxxxxx>
---
 tracecmd/trace-listen.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tracecmd/trace-listen.c b/tracecmd/trace-listen.c
index 7bc723e..c05c2d8 100644
--- a/tracecmd/trace-listen.c
+++ b/tracecmd/trace-listen.c
@@ -2020,7 +2020,7 @@ static void do_accept_loop(int nfd, int vfd, int mfd)
 				continue;
 			}
 
-			if (!fds[i].revents & POLLIN)
+			if (!(fds[i].revents & POLLIN))
 				continue;
 
 			if (i < FD_CONNECTED) {
-- 
2.17.1




[Index of Archives]     [Linux USB Development]     [Linux USB Development]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux