Messages in this thread | | | Subject | Re: [PATCH] af_unix: unix_write_space() use keyed wakeups | From | Eric Dumazet <> | Date | Wed, 24 Nov 2010 01:28:11 +0100 |
| |
Le mercredi 24 novembre 2010 à 00:20 +0000, Alban Crequy a écrit : > Le Wed, 24 Nov 2010 01:27:56 +0200, > Pauli Nieminen <pauli.nieminen@collabora.co.uk> a écrit : > > > ----- Original message ----- > > > Le Sat, 30 Oct 2010 08:44:44 +0200, > > > Eric Dumazet <eric.dumazet@gmail.com> a écrit : > > > > > > > We still loop on 800 items, on each > > > > wake_up_interruptible_sync_poll() call, so maybe we want to > > > > optimize this later, adding a global key, ORing all items keys. I > > > > dont think its worth the added complexity, given the biased usage > > > > of your program (800 'listeners' to one event). Is it a real life > > > > scenario ? > > > > > > Pauli Nieminen told me about his performance problem in select() so > > > I wrote the test program but I don't know what exactly is the real > > > life scenario. > > > > > > > Real world scenario is xsever that has tens client connections to > > manage. When xserver is happily sleeping at seclect call some client > > reading events/replies from server triggers in kernel looping over > > all xserver fds. xserver isn't waiting for socket to became writeable > > in ussual cases so kernel schedules back to client. > > But are they SOCK_STREAM or SOCK_DGRAM sockets? The patches fix > performances with SOCK_DGRAM. If the xserver scenario is with > SOCK_STREAM sockets, your problem is probably still unfixed. >
It should not matter ?
commit 67426b756c4d52c51 (af_unix: use keyed wakeups ) makes unix_write_space() call wake_up_interruptible_sync_poll() instead of wake_up_interruptible_sync().
So it should be fixed for both STREAM/DGRAM sockets ?
-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |