From patchwork Mon May 2 19:24:09 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ivo van Doorn X-Patchwork-Id: 747912 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter2.kernel.org (8.14.4/8.14.3) with ESMTP id p42JOYdF016560 for ; Mon, 2 May 2011 19:24:35 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753880Ab1EBTYS (ORCPT ); Mon, 2 May 2011 15:24:18 -0400 Received: from mail-ey0-f174.google.com ([209.85.215.174]:42507 "EHLO mail-ey0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753528Ab1EBTYR (ORCPT ); Mon, 2 May 2011 15:24:17 -0400 Received: by eyx24 with SMTP id 24so1848508eyx.19 for ; Mon, 02 May 2011 12:24:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:from:to:subject:date:user-agent:cc:references :in-reply-to:mime-version:content-type:content-transfer-encoding :message-id; bh=0XMaOyB1mO6oASrUcAZTWP931frXF+vMXSGtlpVyTiM=; b=KSjOrzI6pT18lxyrF/lw2QdcJ0VgJ3sbnF+ajJburEn6hrry8GfA8QFUV8+kT395Z/ zKgf3/1daOlRgsLzgTmwGRUKmST+FqbBbHT/IdTZJ0bXNUTtF6BdrqzwcJC+mi8JyDka ikIY1bA2ORlwjks5e9RPJbMphtVrH2ZE7YIwU= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:to:subject:date:user-agent:cc:references:in-reply-to :mime-version:content-type:content-transfer-encoding:message-id; b=KHTLuL00YpCKCgF0wFFVw4OieH7D2O8Gqeo5jlhhP5+cwC852SNHoYX7h/H5z3MkoE U1h2HDbeO4q9riHtAw0N0GmUjeNPXRZYPJ2HQALthIaohtrOL69iciwZyFsZyzBzbwsK +XxcLU50VySp3R4lLcEP88pcO5czmbaqg60vo= Received: by 10.213.3.6 with SMTP id 6mr3589034ebl.146.1304364256696; Mon, 02 May 2011 12:24:16 -0700 (PDT) Received: from localhost.localdomain (g121037.upc-g.chello.nl [80.57.121.37]) by mx.google.com with ESMTPS id g1sm2771496een.3.2011.05.02.12.24.13 (version=SSLv3 cipher=OTHER); Mon, 02 May 2011 12:24:14 -0700 (PDT) From: Ivo van Doorn To: Yasushi SHOJI Subject: Re: [PATCH 04/23] rt2x00: Make rt2x00_queue_entry_for_each more flexible Date: Mon, 2 May 2011 21:24:09 +0200 User-Agent: KMail/1.13.5 (Linux/2.6.32.26-175.fc12.x86_64; KDE/4.4.5; x86_64; ; ) Cc: Gertjan van Wingerde , helmut.schaa@googlemail.com, hanada@atmark-techno.com, linux-wireless@vger.kernel.org References: <201104181526.01722.IvDoorn@gmail.com> <201104301601.15558.IvDoorn@gmail.com> <87d3k1rzuw.wl@dns1.atmark-techno.com> In-Reply-To: <87d3k1rzuw.wl@dns1.atmark-techno.com> MIME-Version: 1.0 Message-Id: <201105022124.10614.IvDoorn@gmail.com> Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter2.kernel.org [140.211.167.43]); Mon, 02 May 2011 19:24:35 +0000 (UTC) Hi, > - CPU consumption was not an issue (sorry for wrong info. my bad) > -- but network throughput performance is bad > - USB controller on the CPU is not fast > -- max throughput for USB memory read is about 50 Mbps on our test > -- max client mode transfer rate is about 20 Mbps (at best) Ah ok, as CPU consumption is not the problem, then I better understand the problem. My previous patch missed one fix for a return value. Could you try this one. > BTW, we are in the big holiday week[10] right now. so please bear > with us. we might not reply promptly. Not a problem. Have fun this week. :) Thanks, Ivo --- -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/drivers/net/wireless/rt2x00/rt2x00usb.c b/drivers/net/wireless/rt2x00/rt2x00usb.c index e027ebd..dc6b662 100644 --- a/drivers/net/wireless/rt2x00/rt2x00usb.c +++ b/drivers/net/wireless/rt2x00/rt2x00usb.c @@ -298,7 +298,7 @@ static bool rt2x00usb_kick_tx_entry(struct queue_entry *entry, void* data) if (!test_and_clear_bit(ENTRY_DATA_PENDING, &entry->flags) || test_bit(ENTRY_DATA_STATUS_PENDING, &entry->flags)) - return true; + return false; /* * USB devices cannot blindly pass the skb->len as the @@ -392,7 +392,7 @@ static bool rt2x00usb_kick_rx_entry(struct queue_entry *entry, void* data) if (test_and_set_bit(ENTRY_OWNER_DEVICE_DATA, &entry->flags) || test_bit(ENTRY_DATA_STATUS_PENDING, &entry->flags)) - return true; + return false; rt2x00lib_dmastart(entry); @@ -447,7 +447,7 @@ static bool rt2x00usb_flush_entry(struct queue_entry *entry, void* data) struct queue_entry_priv_usb_bcn *bcn_priv = entry->priv_data; if (!test_bit(ENTRY_OWNER_DEVICE_DATA, &entry->flags)) - return true; + return false; usb_kill_urb(entry_priv->urb);