On Thu, Jun 29, 2017 at 12:40 PM, Luis R. Rodriguez <mcgrof@xxxxxxxxxx> wrote: > On Thu, Jun 29, 2017 at 11:59:29AM -0700, Linus Torvalds wrote: >> > at a time... I'm probably missing your point here. >> >> The *reason* they wake up only one seems to be that there really is >> just one. It's some per-cpu idle thread for kvm, and for RCU it's the >> RCU workqueue thread. >> >> So the queue literally looks suspiciously pointless. >> >> But I might be wrong, and there can actually be multiple entries. > > Since this swake_up() --> swake_up_all() reportedly *fixed* the one wake up > issue it would seem this does queue [0]. I'm not talking about the firmware code. That thing never had an excuse to use swait in the first place. I'm talking about kvm and rcu, which *do* have excuses to use it, but where I argue that swait is _still_ a questionable interface for other reasons. Linus