Messages in this thread | | | Date | Fri, 28 Jun 2013 17:54:43 +0300 | From | Eliezer Tamir <> | Subject | Re: [PATCH net-next 2/2] net: avoid calling sched_clock when LLS is off |
| |
On 28/06/2013 17:38, Andi Kleen wrote: >> diff --git a/fs/select.c b/fs/select.c >> index 79b876e..3654075 100644 >> --- a/fs/select.c >> +++ b/fs/select.c >> @@ -402,7 +402,7 @@ int do_select(int n, fd_set_bits *fds, struct timespec *end_time) >> poll_table *wait; >> int retval, i, timed_out = 0; >> unsigned long slack = 0; >> - unsigned int ll_flag = POLL_LL; >> + unsigned int ll_flag = ll_get_flag(); > > Is that a global flag? That's still the wrong level. It should > look at something in the file descriptor (preferably without > fetching any new cache lines) >
There is a global flag that decides if we even try to find supported files (sockets).
If it is on we look to see if anyone will return POLL_LL. at the individual socket level, you need both the socket option to be on, and the queue data to be available for it to return POLL_LL.
I wanted to find a way to control this at the time the user calls poll(). I was not able to find any simple way of doing it that way. I'm open to suggestion.
| |