All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: linuxppc-dev@ozlabs.org
Cc: akpm@osdl.org, James K Lewis <jklewis@us.ibm.com>,
	linux-kernel@vger.kernel.org, netdev@vger.kernel.org,
	Jeff Garzik <jgarzik@pobox.com>,
	ens Osterkamp <Jens.Osterkamp@de.ibm.com>
Subject: Re: [PATCH 2/6]: powerpc/cell spidernet low watermark patch.
Date: Sat, 19 Aug 2006 01:09:13 +0200	[thread overview]
Message-ID: <200608190109.15129.arnd@arndb.de> (raw)
In-Reply-To: <20060818222146.GI26889@austin.ibm.com>

T24gU2F0dXJkYXkgMTkgQXVndXN0IDIwMDYgMDA6MjEsIExpbmFzIFZlcHN0YXMgd3JvdGU6Cj4g
K6CgoKCgoKAvKiBNZWFzdXJlIHRoZSBsZW5ndGggb2YgdGhlIHF1ZXVlLiAqLwo+ICugoKCgoKCg
d2hpbGUgKGRlc2NyICE9IGNhcmQtPnR4X2NoYWluLmhlYWQpIHsKPiAroKCgoKCgoKCgoKCgoKCg
c3RhdHVzID0gZGVzY3ItPmRtYWNfY21kX3N0YXR1cyAmIFNQSURFUl9ORVRfREVTQ1JfTk9UX0lO
X1VTRTsKPiAroKCgoKCgoKCgoKCgoKCgaWYgKHN0YXR1cyA9PSBTUElERVJfTkVUX0RFU0NSX05P
VF9JTl9VU0UpCj4gK6CgoKCgoKCgoKCgoKCgoKCgoKCgoKCgYnJlYWs7Cj4gK6CgoKCgoKCgoKCg
oKCgoGRlc2NyID0gZGVzY3ItPm5leHQ7Cj4gK6CgoKCgoKCgoKCgoKCgoGNudCsrOwo+ICugoKCg
oKCgfQo+ICugoKCgoKCgaWYgKGNudCA9PSAwKQo+ICugoKCgoKCgoKCgoKCgoKByZXR1cm47Cj4g
Kwo+ICugoKCgoKCgLyogU2V0IGxvdy13YXRlcm1hcmsgMy80dGgncyBvZiB0aGUgd2F5IGludG8g
dGhlIHF1ZXVlLiAqLwo+ICugoKCgoKCgZGVzY3IgPSBjYXJkLT50eF9jaGFpbi50YWlsOwo+ICug
oKCgoKCgY250ID0gKGNudCozKS80Owo+ICugoKCgoKCgZm9yIChpPTA7aTxjbnQ7IGkrKykKPiAr
oKCgoKCgoKCgoKCgoKCgZGVzY3IgPSBkZXNjci0+bmV4dDsKCkkgd29uZGVyIGlmIGNhbGxpbmcg
dGhpcyBmcmVxdWVudGx5IHJlc3VsdHMgaW4gYSBzaWduaWZpY2FudCBwcm9jZXNzaW5nCm92ZXJo
ZWFkIGluIHRoZSBDUFUuIERvZXMgdGhlIHNwaWRlcl9uZXRfc2V0X2xvd193YXRlcm1hcmsgZnVu
Y3Rpb24Kc2hvdyB1cCBpbiB5b3VyIHByb2ZpbGVzPwoKQSBtb3JlIGVmZmljaWVudCBpbXBsZW1l
bnRhdGlvbiBtaWdodCBiZSB0byBtYXJrIG9uZSBkZXNjcmlwdG9yIHRoYXQKaXMgYXQgYSBmaXhl
ZCBvZmZzZXQgZnJvbSB0aGUgVFggcXVldWUgdGFpbCwgc28gd2Ugb25seSBuZWVkIHRvIGRvCgpj
YXJkLT5sb3dfd2F0ZXJtYXJrLT5uZXh0LT5kbWFjX2NtZF9zdGF0dXMgfD0gU1BJREVSX05FVF9E
RVNDUl9UWERFU0ZMRzsKbWIoKTsKY2FyZC0+bG93X3dhdGVybWFyay0+ZG1hY19jbWRfc3RhdHVz
ICY9IH5TUElERVJfTkVUX0RFU0NSX1RYREVTRkxHOwpjYXJkLT5sb3dfd2F0ZXJtYXJrID0gY2Fy
ZC0+bG93X3dhdGVybWFyay0+bmV4dDsKCndoZW4gd2UgcXVldWUgYW5vdGhlciBmcmFtZSBmb3Ig
VFguCgoJQXJuZCA8PjwK

WARNING: multiple messages have this Message-ID (diff)
From: Arnd Bergmann <arnd@arndb.de>
To: linuxppc-dev@ozlabs.org
Cc: akpm@osdl.org, James K Lewis <jklewis@us.ibm.com>,
	linux-kernel@vger.kernel.org, netdev@vger.kernel.org,
	Jeff Garzik <jgarzik@pobox.com>,
	ens Osterkamp <Jens.Osterkamp@de.ibm.com>
Subject: Re: [PATCH 2/6]: powerpc/cell spidernet low watermark patch.
Date: Sat, 19 Aug 2006 01:09:13 +0200	[thread overview]
Message-ID: <200608190109.15129.arnd@arndb.de> (raw)
In-Reply-To: <20060818222146.GI26889@austin.ibm.com>

On Saturday 19 August 2006 00:21, Linas Vepstas wrote:
> +       /* Measure the length of the queue. */
> +       while (descr != card->tx_chain.head) {
> +               status = descr->dmac_cmd_status & SPIDER_NET_DESCR_NOT_IN_USE;
> +               if (status == SPIDER_NET_DESCR_NOT_IN_USE)
> +                       break;
> +               descr = descr->next;
> +               cnt++;
> +       }
> +       if (cnt == 0)
> +               return;
> +
> +       /* Set low-watermark 3/4th's of the way into the queue. */
> +       descr = card->tx_chain.tail;
> +       cnt = (cnt*3)/4;
> +       for (i=0;i<cnt; i++)
> +               descr = descr->next;

I wonder if calling this frequently results in a significant processing
overhead in the CPU. Does the spider_net_set_low_watermark function
show up in your profiles?

A more efficient implementation might be to mark one descriptor that
is at a fixed offset from the TX queue tail, so we only need to do

card->low_watermark->next->dmac_cmd_status |= SPIDER_NET_DESCR_TXDESFLG;
mb();
card->low_watermark->dmac_cmd_status &= ~SPIDER_NET_DESCR_TXDESFLG;
card->low_watermark = card->low_watermark->next;

when we queue another frame for TX.

	Arnd <><

  reply	other threads:[~2006-08-18 23:09 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-18 22:07 [PATCH 0/6]: powerpc/cell spidernet ethernet driver update Linas Vepstas
2006-08-18 22:07 ` Linas Vepstas
2006-08-18 22:20 ` [PATCH 1/6]: powerpc/cell spidernet burst alignment patch Linas Vepstas
2006-08-18 22:51   ` Arnd Bergmann
2006-08-18 22:51     ` Arnd Bergmann
2006-08-18 22:21 ` [PATCH 2/6]: powerpc/cell spidernet low watermark patch Linas Vepstas
2006-08-18 23:09   ` Arnd Bergmann [this message]
2006-08-18 23:09     ` Arnd Bergmann
2006-08-20  6:31     ` Benjamin Herrenschmidt
2006-08-20  6:31       ` Benjamin Herrenschmidt
2006-08-20 10:03       ` Arnd Bergmann
2006-08-20 10:03         ` Arnd Bergmann
2006-08-23 21:36         ` Linas Vepstas
2006-08-23 21:36           ` Linas Vepstas
2006-08-23 22:03           ` David Miller
2006-08-23 22:03             ` David Miller
2006-08-18 22:23 ` [PATCH 3/6]: powerpc/cell spidernet stop error printing patch Linas Vepstas
2006-08-18 22:25 ` [PATCH 4/6]: powerpc/cell spidernet ethtool -i version number info Linas Vepstas
2006-08-18 22:56   ` Arnd Bergmann
2006-08-18 22:56     ` Arnd Bergmann
2006-08-18 22:26 ` [PATCH 5/6]: powerpc/cell spidernet bottom half Linas Vepstas
2006-08-18 23:03   ` Arnd Bergmann
2006-08-18 23:03     ` Arnd Bergmann
2006-08-19  0:56     ` [RFC] HOWTO use NAPI to reduce TX interrupts Arnd Bergmann
2006-08-19  0:56       ` Arnd Bergmann
2006-08-20  1:31       ` Stephen Hemminger
2006-08-20  1:31         ` Stephen Hemminger
2006-08-19 11:25         ` Arnd Bergmann
2006-08-19 11:25           ` Arnd Bergmann
2006-08-20 17:48           ` [RFC v2] " Arnd Bergmann
2006-08-20 17:48             ` Arnd Bergmann
2006-08-21 20:40             ` NAPI documentation Stephen Hemminger
2006-08-21 20:40               ` Stephen Hemminger
2006-08-21 22:05               ` David Miller
2006-08-21 22:05                 ` David Miller
2006-08-21 22:09                 ` Stephen Hemminger
2006-08-21 22:09                   ` Stephen Hemminger
2006-08-21 22:17                   ` David Miller
2006-08-21 22:17                     ` David Miller
2006-08-21 23:52           ` [RFC] HOWTO use NAPI to reduce TX interrupts Linas Vepstas
2006-08-21 23:52             ` Linas Vepstas
2006-08-21 23:56             ` David Miller
2006-08-21 23:56               ` David Miller
2006-08-22  0:29               ` Roland Dreier
2006-08-22  0:29                 ` Roland Dreier
2006-08-22  0:32                 ` David Miller
2006-08-22  0:32                   ` David Miller
2006-08-23  1:29                   ` Shirley Ma
2006-08-23  1:29                     ` Shirley Ma
2006-08-23 21:52     ` [PATCH 5/6]: powerpc/cell spidernet bottom half Linas Vepstas
2006-08-23 21:52       ` Linas Vepstas
2006-08-18 22:29 ` [PATCH 6/6]: powerpc/cell spidernet refine locking Linas Vepstas
  -- strict thread matches above, loose matches on Subject: below --
2006-09-29 23:05 [PATCH 0/6]: powerpc/cell spidernet ethernet patches Linas Vepstas
2006-09-29 23:17 ` [PATCH 2/6]: powerpc/cell spidernet low watermark patch Linas Vepstas
2006-09-30 10:30   ` Arnd Bergmann
2006-09-30 10:30     ` Arnd Bergmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200608190109.15129.arnd@arndb.de \
    --to=arnd@arndb.de \
    --cc=Jens.Osterkamp@de.ibm.com \
    --cc=akpm@osdl.org \
    --cc=jgarzik@pobox.com \
    --cc=jklewis@us.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.