From: Lorenzo Bianconi <lorenzo.bianconi@redhat.com>
To: Johannes Berg <johannes@sipsolutions.net>
Cc: linux-wireless <linux-wireless@vger.kernel.org>
Subject: Re: [PATCH v2] mac80211: do not aggregate frames if max_frags is set to one
Date: Thu, 30 Aug 2018 10:31:16 +0200 [thread overview]
Message-ID: <20180830083115.GA9867@localhost.localdomain> (raw)
In-Reply-To: <1535616192.5215.37.camel@sipsolutions.net>
> First of all, I applied your patch with now, but changed the commit
> message. I hope it still makes sense.
Thx, definitely better than mine :)
>
> > Ops, maybe I got your point:
> > ieee80211_amsdu_realloc_pad() in ieee80211_amsdu_prepare_head() can
> > expand the headroom on the first frame
>
> Right.
>
> > but if ieee80211_amsdu_realloc_pad() on the second one fails, we do
> > not take into account the extra len added on the
> > first subframe. Is that what you mean?
>
> Yes, that's what I was thinking of, but you described it much better
> than me :)
>
> If this needs to be addressed, please send a separate patch.
Reviewing the code I guess it is not necessary since pskb_expand_head routine
does not modify head->len (or skb->len). Packet len (if we consider padding)
is only modified in:
memset(skb_push(skb, pad), 0, pad);
and if we hit that point, we will account new skb->len in flow backlog. Do you
agree?
Looking at the code maybe I spotted another issue, I guess there is an
off-by-one issue in 'n' estimation since it does not take into account
the first frame. We hit the line:
while (*frag_tail) {
}
starting from the second subframe, but if the head does not have packet in the
fraglist we will end up having n = 1, while it is actually the second frame.
Does n count just subsequent frames or also the first one?
Regards,
Lorenzo
>
> johannes
next prev parent reply other threads:[~2018-08-30 12:32 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <cover.1535567864.git.lorenzo.bianconi@redhat.com>
2018-08-29 19:03 ` [PATCH v2] mac80211: do not aggregate frames if max_frags is set to one Lorenzo Bianconi
2018-08-29 19:05 ` Johannes Berg
2018-08-29 19:12 ` Lorenzo Bianconi
[not found] ` <1535570007.5215.34.camel@sipsolutions.net>
2018-08-29 19:30 ` Lorenzo Bianconi
2018-08-30 8:03 ` Johannes Berg
2018-08-30 8:31 ` Lorenzo Bianconi [this message]
2018-08-30 8:39 ` Johannes Berg
2018-08-30 8:50 ` Lorenzo Bianconi
2018-08-30 8:53 ` Johannes Berg
2018-08-30 9:00 ` Lorenzo Bianconi
2018-08-30 9:03 ` Johannes Berg
2018-08-30 9:06 ` Johannes Berg
2018-08-30 9:07 ` Lorenzo Bianconi
2018-08-30 9:07 ` Johannes Berg
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=20180830083115.GA9867@localhost.localdomain \
--to=lorenzo.bianconi@redhat.com \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@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.