Thread (19 messages) 19 messages, 4 authors, 2013-06-05

Re: [PATCH v8 net-next 5/7] net: simple poll/select low latency socket poll

flat view

From: Eliezer Tamir <hidden>
Date: 2013-06-03 14:00:06
Also in: lkml

On 03/06/2013 16:15, Eric Dumazet wrote:
On Mon, 2013-06-03 at 11:02 +0300, Eliezer Tamir wrote:
quoted
  	sock = file->private_data;
-	return sock->ops->poll(file, sock, wait);
+
+	poll_result = sock->ops->poll(file, sock, wait);
+
+	if (!(poll_result & (POLLRDNORM | POLLERR | POLLRDHUP | POLLHUP)) &&
+		sk_valid_ll(sock->sk) && sk_poll_ll(sock->sk, 1))
+			poll_result = sock->ops->poll(file, sock, NULL);
+
+	return poll_result;
  }

  static int sock_mmap(struct file *file, struct vm_area_struct *vma)

In fact, for TCP, POLLOUT event being ready can also be triggered by
incoming messages, as the ACK might allow the user application to push
more data in the write queue.

And you might check wait->_key to avoid testing flags that user is not
interested into.
yes, comparing to _key is more correct.
In any case this needs to be completely rewritten for support for
working well with a large number of sockets.

-Eliezer

------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite
It's a free troubleshooting tool designed for production
Get down to code-level detail for bottlenecks, with <2% overhead.
Download for free and get started troubleshooting in minutes.
http://p.sf.net/sfu/appdyn_d2d_ap2
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel&#174; Ethernet, visit http://communities.intel.com/community/wired
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help