RE: select-like implementation for kernel sockets

From: Eitan Richardson
Date: Mon May 07 2007 - 04:17:43 EST


Hi,

Thanks for the tip.
I understand sk_data_ready is a callback that is called when there is
data ready in the socket.

Is it safe to override it?
Do you have an example?

Thanks,
Eitan.

-----Original Message-----
From: kalash nainwal [mailto:kalash.nainwal@xxxxxxxxx]
Sent: Monday, May 07, 2007 9:57 AM
To: Robert Hancock
Cc: Eitan Richardson; linux-kernel
Subject: Re: select-like implementation for kernel sockets
Importance: Low

On 5/6/07, Robert Hancock <hancockr@xxxxxxx> wrote:
> eitanr@xxxxxxxxxxxxxx wrote:
> > Hi,
> >
> > I'm using kernel sockets to Tx and Rx UDP packets between my
hardware
> > device (DSP) to the external network (this is part of a VoIP
> > implementation). The motivation for using kernel sockets rather than
> > user-space sockets is to avoid the copying of data between kernel
and
> > user spaces.
>
> I think we are zero-copy in many cases for UDP these days, so this
> doesn't necessarily buy you anything..
>
> >
> > I have no problems on the Tx side (I simply call sock_sendmsg on one
> > of the sockets), but for the Rx side I want to listen-in on multiple
> > sockets in blocking mode (I don't want to use polling).
> >
> > Is there a way to listen-in on multiple kernel sockets from one
kernel
> > thread? In the user space I would have used select(), but I am not
> > familiar with a similar solution for the kernel space.
> >

implementing (sock->)sk_data_ready() might serve your purpose?

> > Thanks,
> > Eitan.
> >
> > Eitan Richardson
> > AudioCodes Ltd.
> >
>
> --
> Robert Hancock Saskatoon, SK, Canada
> To email, remove "nospam" from hancockr@xxxxxxxxxxxxx
> Home Page: http://www.roberthancock.com/
>
> -
> To unsubscribe from this list: send the line "unsubscribe
linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/