DragonFly kernel List (threaded) for 2008-08
DragonFly BSD
DragonFly kernel List (threaded) for 2008-08
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: [netmp] socket accesses


From: Aggelos Economopoulos <aoiko@xxxxxxxxxxxxxx>
Date: Mon, 18 Aug 2008 01:36:57 +0300

On Monday 18 August 2008, you wrote:
> 
> :What do you picture the protocol side doing in response to this message?
> :Currently, the process side will be woken up when e.g. new data arrives or
> :the connection state changes etc. But to decide if anything changed since
> :the message was sent, the protocol essentially needs to know what the process
> :side "knew" when it sent the message. So we need to send a message which
> :includes a pointer to, say:
> :
> :struct socksnap {
> :	int state;
> :	int rcvdata;
> :};
> :
> :Is that what you had in mind?
> :
> :Aggelos
> 
>     I think almost all such messages could simply use a specific callback
>     that checks for a specific set of conditions.  For example, if the
>     reader blocks it is simply waiting for an unblocking condition such
>     as data present in the sockbuf or an EOF/disconnect condition.

Or, it could be waiting for *more* data in the sockbuf. How can the protocol
decide if more data arrived without knowing how many bytes the process side
thought there were in the sockbuf?

Aggelos



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]