All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexander Smirnov <alex.bluesman.smirnov-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Alan Ott <alan-yzvJWuRpmD1zbRFIqnYvSA@public.gmane.org>
Cc: "open list:NETWORKING \[GENERAL\]"
	<netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"David S. Miller" <davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>,
	linux-zigbee-devel
	<linux-zigbee-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH 1/6] mac802154: Immediately retry sending failed packets
Date: Tue, 2 Apr 2013 23:11:38 +0400	[thread overview]
Message-ID: <CAJmB2rCr5ds11+iN=W5GCKsUgdfb57uKg+mH4NY4CWw6EFCTbg@mail.gmail.com> (raw)
In-Reply-To: <1364928481-1813-2-git-send-email-alan-yzvJWuRpmD1zbRFIqnYvSA@public.gmane.org>


[-- Attachment #1.1: Type: text/plain, Size: 1944 bytes --]

2013/4/2 Alan Ott <alan-yzvJWuRpmD1zbRFIqnYvSA@public.gmane.org>

> When ops->xmit() fails, immediately retry. Previously the packet was sent
> to the back of the workqueue.
>
> Signed-off-by: Alan Ott <alan-yzvJWuRpmD1zbRFIqnYvSA@public.gmane.org>
> ---
>  net/mac802154/tx.c | 17 ++++++++---------
>  1 file changed, 8 insertions(+), 9 deletions(-)
>
> diff --git a/net/mac802154/tx.c b/net/mac802154/tx.c
> index 4e09d07..fbf937c 100644
> --- a/net/mac802154/tx.c
> +++ b/net/mac802154/tx.c
> @@ -59,19 +59,18 @@ static void mac802154_xmit_worker(struct work_struct
> *work)
>                 }
>         }
>
> -       res = xw->priv->ops->xmit(&xw->priv->hw, xw->skb);
> +       do {
> +               res = xw->priv->ops->xmit(&xw->priv->hw, xw->skb);
> +               if (res && ++xw->xmit_attempts >=
> MAC802154_MAX_XMIT_ATTEMPTS) {
> +                       pr_debug("transmission failed for %d times",
> +                                MAC802154_MAX_XMIT_ATTEMPTS);
> +                       break;
> +               }
> +       } while (res);
>


> IIRC this 802.15.4 stack uses single-thread-work-queue and all RX/TX are
> performed by using it. Doing TX retry in the way you proposed - it's
> possible that you will block other packets pending in this queue. Despite
> on Linux is already 'slow' system to provide real-time for specific
> 802.15.4 features, I think it's not a good idea to increase nodes
> communication latency.
>
>
>  out:
>         mutex_unlock(&xw->priv->phy->pib_lock);
>
> -       if (res) {
> -               if (xw->xmit_attempts++ < MAC802154_MAX_XMIT_ATTEMPTS) {
> -                       queue_work(xw->priv->dev_workqueue, &xw->work);
> -                       return;
> -               } else
> -                       pr_debug("transmission failed for %d times",
> -                                MAC802154_MAX_XMIT_ATTEMPTS);
> -       }
>
>         dev_kfree_skb(xw->skb);
>
> --
> 1.7.11.2
>
>

[-- Attachment #1.2: Type: text/html, Size: 2844 bytes --]

[-- Attachment #2: Type: text/plain, Size: 351 bytes --]

------------------------------------------------------------------------------
Minimize network downtime and maximize team effectiveness.
Reduce network management and security costs.Learn how to hire 
the most talented Cisco Certified professionals. Visit the 
Employer Resources Portal
http://www.cisco.com/web/learning/employer_resources/index.html

[-- Attachment #3: Type: text/plain, Size: 213 bytes --]

_______________________________________________
Linux-zigbee-devel mailing list
Linux-zigbee-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
https://lists.sourceforge.net/lists/listinfo/linux-zigbee-devel

  parent reply	other threads:[~2013-04-02 19:11 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-02 18:47 [PATCH 0/6] 802.15.4 and 6LoWPAN Buffering Fixes Alan Ott
2013-04-02 18:47 ` Alan Ott
2013-04-02 18:47 ` [PATCH 1/6] mac802154: Immediately retry sending failed packets Alan Ott
2013-04-02 18:47   ` Alan Ott
     [not found]   ` <1364928481-1813-2-git-send-email-alan-yzvJWuRpmD1zbRFIqnYvSA@public.gmane.org>
2013-04-02 19:11     ` Alexander Smirnov [this message]
2013-04-02 20:28       ` Alan Ott
2013-04-02 20:28         ` Alan Ott
2013-04-02 21:28         ` Alan Ott
2013-04-02 22:35           ` Alan Ott
2013-04-02 22:35             ` Alan Ott
2013-04-02 23:13           ` [Linux-zigbee-devel] " Werner Almesberger
2013-04-02 23:13             ` Werner Almesberger
2013-04-03  1:24             ` [Linux-zigbee-devel] " Alan Ott
2013-04-03  1:24               ` Alan Ott
2013-04-03  1:56               ` [Linux-zigbee-devel] " David Miller
2013-04-03  1:59                 ` Alan Ott
2013-04-03  1:59                   ` Alan Ott
2013-04-03  2:03                   ` [Linux-zigbee-devel] " David Miller
2013-04-03  2:03                     ` David Miller
2013-04-03  2:25                     ` [Linux-zigbee-devel] " Alan Ott
2013-04-03  2:25                       ` Alan Ott
2013-04-03  2:30                       ` [Linux-zigbee-devel] " David Miller
2013-04-03  2:30                         ` David Miller
2013-04-03  2:57                         ` [Linux-zigbee-devel] " Alan Ott
2013-04-03  2:38               ` Werner Almesberger
2013-04-02 18:47 ` [PATCH 2/6] mac802154: Move xmit_attemps to stack Alan Ott
2013-04-02 18:47   ` Alan Ott
2013-04-02 18:47 ` [PATCH 3/6] mac802154: Use netif flow control Alan Ott
2013-04-02 18:47   ` Alan Ott
2013-04-02 21:21   ` Sergei Shtylyov
2013-04-02 18:47 ` [PATCH 4/6] mac802154: Increase tx_buffer_len Alan Ott
2013-04-02 18:47   ` Alan Ott
2013-04-02 18:48 ` [PATCH 5/6] 6lowpan: handle dev_queue_xmit error code properly Alan Ott
2013-04-02 18:48   ` Alan Ott
     [not found]   ` <1364928481-1813-6-git-send-email-alan-yzvJWuRpmD1zbRFIqnYvSA@public.gmane.org>
2013-04-02 19:21     ` Alexander Smirnov
     [not found]       ` <CAJmB2rB+9-gLV=SVvr4JUc2swjmTaWxD0gYM5VLw8PL1d455JA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-04-02 19:30         ` Alan Ott
2013-04-02 18:48 ` [PATCH 6/6] 6lowpan: return the dev_queue_xmit() return value from lowpan_xmit() Alan Ott
2013-04-02 18:48   ` Alan Ott
     [not found]   ` <1364928481-1813-7-git-send-email-alan-yzvJWuRpmD1zbRFIqnYvSA@public.gmane.org>
2013-04-02 19:27     ` Alexander Smirnov
2013-04-03 14:00 ` [PATCH v2 0/4] 802.15.4 and 6LoWPAN Buffering Fixes Alan Ott
2013-04-03 14:00   ` Alan Ott
2013-04-03 14:00   ` [PATCH v2 1/4] mac802154: Do not try to resend failed packets Alan Ott
2013-04-03 14:00   ` [PATCH v2 2/4] mac802154: Use netif flow control Alan Ott
2013-04-03 14:00     ` Alan Ott
2013-04-03 14:00   ` [PATCH v2 3/4] mac802154: Increase tx_buffer_len Alan Ott
2013-04-03 14:00     ` Alan Ott
2013-04-03 14:00   ` [PATCH v2 4/4] 6lowpan: handle dev_queue_xmit() error code properly Alan Ott
2013-04-03 14:00     ` Alan Ott
2013-04-07 21:06   ` [PATCH v2 0/4] 802.15.4 and 6LoWPAN Buffering Fixes David Miller

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='CAJmB2rCr5ds11+iN=W5GCKsUgdfb57uKg+mH4NY4CWw6EFCTbg@mail.gmail.com' \
    --to=alex.bluesman.smirnov-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
    --cc=alan-yzvJWuRpmD1zbRFIqnYvSA@public.gmane.org \
    --cc=davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-zigbee-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
    --cc=netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.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.