[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20120104085001.GM5446@pengutronix.de>
Date: Wed, 4 Jan 2012 09:50:01 +0100
From: Sascha Hauer <s.hauer@...gutronix.de>
To: David Miller <davem@...emloft.net>
Cc: netdev@...r.kernel.org, anantgole@...com, srk@...com
Subject: Re: [PATCH] net/davinci: do not use all descriptors for tx packets
On Tue, Jan 03, 2012 at 01:51:41PM -0500, David Miller wrote:
> From: Sascha Hauer <s.hauer@...gutronix.de>
> Date: Tue, 3 Jan 2012 16:27:47 +0100
>
> > The driver uses a shared pool for both rx and tx descriptors.
> > During open it queues fixed number of 128 descriptors for receive
> > packets. For each received packet it tries to queue another
> > descriptor. If this fails the descriptor is lost for rx.
> > The driver has no limitation on tx descriptors to use, so it
> > can happen during a nmap / ping -f attack that the driver
> > allocates all descriptors for tx and looses all rx descriptors.
> > The driver stops working then.
> > To fix this limit the number of tx descriptors used to half of
> > the descriptors available, the rx path uses the other half.
> >
> > Tested on a custom board using nmap / ping -f to the board from
> > two different hosts.
> >
> > Signed-off-by: Sascha Hauer <s.hauer@...gutronix.de>
>
> Applied to net-next, thanks.
>
> Well, at this point there is not logical reason to have a shared
> descriptor pool unless the hardware requires it. Does it?
I don't have enough knowledge of the hardware to give an answer, but to
me it would appear like a very strange piece of hardware if it can
only receive *or* transmit depending on the type of the next descriptor.
I think the driver needs some cleanup in this area, but this is out of
skope for me at the moment.
Sascha
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
--
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