From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael =?UTF-8?B?QsO8c2No?= Date: Sun, 12 Jun 2011 20:48:59 +0200 Subject: [RFC][PATCH] b43: do not try sending packets when ring can be full In-Reply-To: References: <1307891513-6812-1-git-send-email-zajec5@gmail.com> <20110612182916.6afc781a@maggie> Message-ID: <20110612204859.37e7aed5@maggie> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: =?UTF-8?B?UmFmYcWCIE1pxYJlY2tp?= Cc: linux-wireless@vger.kernel.org, b43-dev@lists.infradead.org, francesco.gringoli@ing.unibs.it On Sun, 12 Jun 2011 20:15:53 +0200 Rafa? Mi?ecki wrote: > Well, as I said, we may be unable to transmit the first element of the > queue, but 2nd/3rd/... may be for different ring (qos) (we can > transmit). > > Looping through the whole queue every time, just to find packets we > may transmit, sounds surely as a bad idea. I don't think so. It's not that this is an actual queue anyway. It just acts as a buffer to queue up one or two packets in the small race window of actually filling up the DMA rings and stopping the mac80211 queue. (It also acts as a context dispatcher in the first place, though). So the "looping through the queue" just means checking if one or two packets can be transmitted now.