[lkml]   [2015]   [Apr]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [GIT PULL] kdbus for 4.1-rc1
On 04/16/2015 12:11 AM, Andy Lutomirski wrote:
> Also, getting the really high performance stuff right would be nice.
> Binder has one thing going for it (IIRC -- I've talked about it to
> some of the authors, but I've never so much as glanced at the code):
> it has a primitive to send and wait for a reply. This reduces the
> load on scheduler.

kdbus has the same thing, we call it a synchronous reply. That concept
is actually comprehensively explained in kdbus.message(7):

By default, all calls to kdbus are considered asynchronous,
non-blocking. However, as there are many use cases that need
to wait for a remote peer to answer a method call, there's a
way to send a message and wait for a reply in a synchronous
fashion. This is what the KDBUS_SEND_SYNC_REPLY controls. The
KDBUS_CMD_SEND ioctl will block until the reply has arrived,
the timeout limit is reached, in case the remote connection
was shut down, or if interrupted by a signal before any reply;
see signal(7). The offset of the reply message in the sender's
pool is stored in in offset_reply when the ioctl has returned
without error. Hence, there is no need for another KDBUS_CMD_RECV
ioctl or anything else to receive the reply.


 \ /
  Last update: 2015-04-16 13:01    [W:0.309 / U:7.968 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site