On 23 July 2012 18:45, Alexander Polakov <p...@sdf.org> wrote: > This diff reduces IPI traffic for a case when process A is sending > a lot of signals to process B running on a different CPU. userret() > delivers all process signals at once, so there is no need to send > an interrupt for every signal. > > The problem was noticed by rtorrent 0.9.2 users, which does exactly > this, which led to process/system hangs and slowness. > > Tested and known to help on amd64 by me and dcoppa@.
I like the idea and see no harm for amd64 and i386, but I'm not sure what the others architectures do. I sense that we might need to implement some ratelimiting in signotify() for stupid applications like rtorrent that loop sending signals.