Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Oct 2017 01:50:54 +0300
From:      "Andriy Voskoboinyk" <avos@freebsd.org>
To:        "Bryan Drewery" <bdrewery@freebsd.org>
Cc:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r324673 - head/sys/kern
Message-ID:  <op.y774e4id4dikkl@localhost>
In-Reply-To: <5305175e-e8d2-453d-9ba6-0281af1582a9@FreeBSD.org>
References:  <201710162146.v9GLkB6t036842@repo.freebsd.org> <5305175e-e8d2-453d-9ba6-0281af1582a9@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Tue, 17 Oct 2017 00:53:28 +0300 =D0=B1=D1=83=D0=BB=D0=BE =D0=BD=D0=B0=D0=
=BF=D0=B8=D1=81=D0=B0=D0=BD=D0=BE Bryan Drewery  =

<bdrewery@freebsd.org>:

> On 10/16/2017 2:46 PM, Andriy Voskoboinyk wrote:
>> Author: avos
>> Date: Mon Oct 16 21:46:11 2017
>> New Revision: 324673
>> URL: https://svnweb.freebsd.org/changeset/base/324673
>>
>> Log:
>>   mbuf(9): unbreak m_fragment()
>
> How was it broken

Due to m_cat() usage reason (as described below); this part was
not changed since function creation in r119644.

> and since when?

No idea here - probably, it was partially working until m_cat()
improvement in r242256.

P.S. Just checked with m_fragment(m, M_NOWAIT, -2) placed
right before ieee80211_mbuf_defrag() (from D4077) and
various m_len printf's before and after - it defragments
frames before this change and works as intended after it.

>
>>
>>   - Fix it by replacing m_cat() with m_prev->m_next =3D m_new
>>   (m_cat() will try to append data - as a result, there will be no
>>   fragmentation).
>>   - Move some constants out of the loop.
>>
>>   Was previously tested with D4077.
>>
>>   Differential Revision:	https://reviews.freebsd.org/D4090
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?op.y774e4id4dikkl>