Netdev List
 help / color / mirror / Atom feed
From: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
To: Kyle Moffett <mrlinuxman@mac.com>
Cc: david@lang.hm, Satyam Sharma <satyam.sharma@gmail.com>,
	Lars Ellenberg <lars.ellenberg@linbit.com>,
	Jens Axboe <axboe@kernel.dk>, Andrew Morton <akpm@osdl.org>,
	LKML Kernel <linux-kernel@vger.kernel.org>,
	netdev@vger.kernel.org
Subject: Re: [DRIVER SUBMISSION] DRBD wants to go mainline
Date: Thu, 26 Jul 2007 13:17:48 +0400	[thread overview]
Message-ID: <20070726091748.GA15925@2ka.mipt.ru> (raw)
In-Reply-To: <B3CFC70C-ADBC-406A-A2C8-908530FED007@mac.com>

Hi Kyle.

On Wed, Jul 25, 2007 at 11:43:38PM -0400, Kyle Moffett (mrlinuxman@mac.com) wrote:
> If you made all your sockets and inter-thread pipes nonblocking then  
> in userspace you would just epoll_wait() on the sockets and pipes and  
> be easily able to react to any IO from anywhere.
> 
> In kernel space there are similar nonblocking interfaces, although it  
> would probably be easier just to use a couple threads.

There are no such interfaces in kernel - one must create own state
machine on top of ->poll() callback, or use sys_poll()/epoll, but likely 
it is not what one wants for high-performance in-kernel event processing 
engine. Having two threads does not solve the problem - eventually one 
needs to send a header before receiving data. So, the solution would 
either to use always-blocking mode like in NBD, or create own state 
machine using ->poll() callbacks.

> Cheers,
> Kyle Moffett

-- 
	Evgeniy Polyakov

      reply	other threads:[~2007-07-26  9:19 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20070721203819.GA10706@mail.linbit.com>
     [not found] ` <20070722213202.1f5d1cab.mrlinuxman@mac.com>
     [not found]   ` <20070723133202.GB23495@mail.linbit.com>
2007-07-24  0:48     ` [DRIVER SUBMISSION] DRBD wants to go mainline Kyle Moffett
     [not found]     ` <a781481a0707230640h17e6d83l5c2359e41f3ec7b7@mail.gmail.com>
     [not found]       ` <20070723211947.GD6477@mail.linbit.com>
     [not found]         ` <a781481a0707241611v3c35f6bdsb7af97d382b9298f@mail.gmail.com>
     [not found]           ` <20070725094638.GA2444@mail.linbit.com>
     [not found]             ` <a781481a0707250512v29d41b1bh25bcd358e7381d38@mail.gmail.com>
     [not found]               ` <Pine.LNX.4.64.0707251900410.21378@asgard.lang.hm>
2007-07-26  3:43                 ` Kyle Moffett
2007-07-26  9:17                   ` Evgeniy Polyakov [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070726091748.GA15925@2ka.mipt.ru \
    --to=johnpol@2ka.mipt.ru \
    --cc=akpm@osdl.org \
    --cc=axboe@kernel.dk \
    --cc=david@lang.hm \
    --cc=lars.ellenberg@linbit.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mrlinuxman@mac.com \
    --cc=netdev@vger.kernel.org \
    --cc=satyam.sharma@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox