[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <FCC0EC655BD1AE408C047268D1F5DF4C3BA6152F@NASANEXMB10.na.qualcomm.com>
Date: Tue, 18 Nov 2008 11:46:18 -0800
From: "Lovich, Vitali" <vlovich@...lcomm.com>
To: Johann Baudy <johaahn@...il.com>,
Evgeniy Polyakov <zbr@...emap.net>
CC: "netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: RE: [PATCH] Packet socket: mmapped IO: PACKET_TX_RING
> -----Original Message-----
> From: Johann Baudy [mailto:johaahn@...il.com]
> Sent: November-18-08 10:49 AM
> To: Evgeniy Polyakov
> Cc: Lovich, Vitali; netdev@...r.kernel.org
> Subject: Re: [PATCH] Packet socket: mmapped IO: PACKET_TX_RING
>
> Hi Evgeniy,
>
> > If you _do_ want to make it that way, you can remove destructor at
> all
> > and implement own packet-socket-only allocation policy and thus have
> own
> > private destructor without extending skb.
>
> Currently, we are executing sock_alloc_send_skb() to allocate a new
> skb from socket.
> Then, we replace destructor sock_wfree() with our destructor
> packet_skb_destruct() which executes sock_wfree() once status of
> packet frame (associated to skb data) has been given back to user
> (status changed).
Just a clarification - sock_wfree is called !before! we set the status back. Not extremely important, but it's cleaner that way & the constant sock_wfree/sock_alloc_send_skb is more likely to keep reallocating the same memory.
Oh, and Johann, here are the perf #s we were talking about off the list.
Frame size/Packets per second/Line-rate (GBit/s)
8942/144270/9.61
1500/387544/4.32
500/591648/2.19
43/925328/0.30 (43 bytes is about 1-byte of payload for a UDP packet)
I should have the latency #'s numbers in a little while.
Vitali
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists