Change in vdsm[master]: protocolDetector: Remove unneeded poll flags
nsoffer at redhat.com
nsoffer at redhat.com
Tue Oct 7 22:49:40 UTC 2014
Nir Soffer has uploaded a new change for review.
Change subject: protocolDetector: Remove unneeded poll flags
......................................................................
protocolDetector: Remove unneeded poll flags
Protocol detector was using uneeded poll flags in the eventmask;
POLLHUP, POLLERR, and POLLPRI are output only, as documented in poll(2)
and Python library reference:
https://docs.python.org/2.6/library/select.html#select.poll.register
When checking output events, POLLPRI was used. This flag is needed only
to detect out-of-band data, which the other side can send using MSG_OOB
flag, as documented in send(2).
Since the READ_ONLY_MASK contains only select.POLLIN, and the
READ_WRITE_MASK was used only once, they were removed. Developers
maintaing this code are expected to know these constants.
Change-Id: I94c535c7aa94410eb3158b298c3df3d1738abe74
Signed-off-by: Nir Soffer <nsoffer at redhat.com>
---
M vdsm/protocoldetector.py
1 file changed, 7 insertions(+), 12 deletions(-)
git pull ssh://gerrit.ovirt.org:29418/vdsm refs/changes/12/33912/1
diff --git a/vdsm/protocoldetector.py b/vdsm/protocoldetector.py
index 612d281..bec5f9f 100644
--- a/vdsm/protocoldetector.py
+++ b/vdsm/protocoldetector.py
@@ -66,11 +66,6 @@
"""
log = logging.getLogger("vds.MultiProtocolAcceptor")
- READ_ONLY_MASK = (select.POLLIN | select.POLLPRI | select.POLLHUP |
- select.POLLERR)
-
- READ_WRITE_MASK = (select.POLLIN | select.POLLPRI |
- select.POLLOUT | select.POLLHUP | select.POLLERR)
CLEANUP_INTERVAL = 30.0
def __init__(self, host, port, sslctx=None):
@@ -86,8 +81,8 @@
self._socket = self._create_socket(host, port)
self._poller = select.poll()
- self._poller.register(self._socket, self.READ_ONLY_MASK)
- self._poller.register(self._read_fd, self.READ_ONLY_MASK)
+ self._poller.register(self._socket, select.POLLIN)
+ self._poller.register(self._read_fd, select.POLLIN)
self._pending_connections = {}
self._handlers = []
self._next_cleanup = 0
@@ -115,14 +110,14 @@
events = self._poller.poll(timeout)
for fd, event in events:
- if event & (select.POLLIN | select.POLLPRI):
+ if event & select.POLLIN:
if fd is self._read_fd:
self._maybe_stop()
elif fd is self._socket.fileno():
self._accept_connection()
else:
self._handle_connection_read(fd)
- if event & (select.POLLOUT):
+ if event & select.POLLOUT:
self._handle_connection_write(fd)
now = time.time()
@@ -208,9 +203,9 @@
self._pending_connections[socket.fileno()] = (time.time(),
socket)
if _is_handshaking(socket):
- self._poller.register(socket, self.READ_WRITE_MASK)
+ self._poller.register(socket, select.POLLIN | select.POLLOUT)
else:
- self._poller.register(socket, self.READ_ONLY_MASK)
+ self._poller.register(socket, select.POLLIN)
def _remove_connection(self, socket):
self._poller.unregister(socket)
@@ -227,7 +222,7 @@
socket.close()
else:
if not socket.is_handshaking:
- self._poller.modify(socket, self.READ_ONLY_MASK)
+ self._poller.modify(socket, select.POLLIN)
def _handle_connection_write(self, fd):
_, client_socket = self._pending_connections[fd]
--
To view, visit http://gerrit.ovirt.org/33912
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I94c535c7aa94410eb3158b298c3df3d1738abe74
Gerrit-PatchSet: 1
Gerrit-Project: vdsm
Gerrit-Branch: master
Gerrit-Owner: Nir Soffer <nsoffer at redhat.com>
More information about the vdsm-patches
mailing list