Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Jul 2017 14:43:37 -0300
From:      Luiz Otavio O Souza <lists.br@gmail.com>
To:        Vincenzo Maffione <v.maffione@gmail.com>, Marius Strobl <marius@freebsd.org>, hps@freebsd.org, ae@freebsd.org
Cc:        FreeBSD Net <freebsd-net@freebsd.org>, "Eggert, Lars" <lars@netapp.com>
Subject:   Re: NULL pointer dereference bug triggered by netmap
Message-ID:  <CAB=2f8zaFmF_mW3wq_zgp9R47_X4Q%2B=1c53qStUFm=vM8rRwXA@mail.gmail.com>
In-Reply-To: <CA%2B_eA9jC6WFDk-96XDzCEZqea2_E3N8eL9_fHvevtVLXU40dHg@mail.gmail.com>
References:  <CA%2B_eA9goJ6j=q6UO-%2BfOt-aHVgFmujQfH8WfYEHf9=PQobdwHg@mail.gmail.com> <20170705110512.GA28058@alchemy.franken.de> <CA%2B_eA9h138BhHaeyEojzM3UFc__GWxV72uVSHCWVWw-6CbnGsw@mail.gmail.com> <20170711200510.GB60651@alchemy.franken.de> <CA%2B_eA9jC6WFDk-96XDzCEZqea2_E3N8eL9_fHvevtVLXU40dHg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
--94eb2c0ddb0a32921105549b0ec4
Content-Type: text/plain; charset="UTF-8"

On 12 July 2017 at 02:19, Vincenzo Maffione wrote:
> Yes.
>
> Actually, we would also need one beteween the following two options:
> 1) Implementing a dummy if_start() for if_loop.c
> 2) Prevent netmap from using if_loop.

Hi,

Please, check the attached patches.

Luiz

>
> 2017-07-11 22:05 GMT+02:00 Marius Strobl <marius@freebsd.org>:
>
>> On Thu, Jul 06, 2017 at 02:19:42PM -0700, Vincenzo Maffione wrote:
>> > Sure, can anyone commit this?
>>
>> The addition of KASSERTs like the below one to if_handoff() and
>> if_start()? Sure.
>>
>> Marius
>>
>> >
>> > Il 5 lug 2017 4:05 AM, "Marius Strobl" <marius@freebsd.org> ha scritto:
>> >
>> > > On Mon, Jul 03, 2017 at 05:08:09PM +0200, Vincenzo Maffione wrote:
>> > > > Details here:
>> > > >
>> > > > https://github.com/luigirizzo/netmap/issues/322
>> > > >
>> > > > Is it acceptable to commit the proposed patch?
>> > >
>> > > As suggested by hselasky@, the outliner problem at hand is better
>> solved
>> > > by a dummy if_start method in order to not hurt the fast-path. Thus, if
>> > > anything at all, a KASSERT(ifp->if_start != NULL, "no if_start method")
>> > > should be added to if_handoff() and if_start().

--94eb2c0ddb0a32921105549b0ec4
Content-Type: text/plain; charset="US-ASCII"; name="if_loop.diff"
Content-Disposition: attachment; filename="if_loop.diff"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_j59v9lh80

SW5kZXg6IHN5cy9uZXQvaWZfbG9vcC5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHN5cy9uZXQvaWZfbG9vcC5j
CShyZXZpc2lvbiAzMjA2NzQpCisrKyBzeXMvbmV0L2lmX2xvb3AuYwkod29ya2luZyBjb3B5KQpA
QCAtMTA0LDYgKzEwNCwxNyBAQAogc3RhdGljIHN0cnVjdCBpZl9jbG9uZSAqbG9fY2xvbmVyOwog
c3RhdGljIGNvbnN0IGNoYXIgbG9uYW1lW10gPSAibG8iOwogCisvKiBpZl9sb29wIGRvIG5vdCBz
dXBwb3J0IHBhY2tldHMgY29tbWluZyBmcm9tIGlmX3RyYW5zbWl0KCkvaWZfc3RhcnQoKS4gKi8K
K3N0YXRpYyBpbnQKK2xvX2lmX3RyYW5zbWl0KHN0cnVjdCBpZm5ldCAqaWZwLCBzdHJ1Y3QgbWJ1
ZiAqbSkKK3sKKworCUtBU1NFUlQobSA9PSBOVUxMLCAoIiVzOiBpZl90cmFuc21pdCgpIG5vdCBz
dXBwb3J0ZWQuIiwgX19mdW5jX18pKTsKKwltX2ZyZWVtKG0pOworCisJcmV0dXJuIChFTk9CVUZT
KTsKK30KKwogc3RhdGljIHZvaWQKIGxvX2Nsb25lX2Rlc3Ryb3koc3RydWN0IGlmbmV0ICppZnAp
CiB7CkBAIC0xMzcsNiArMTQ4LDcgQEAKIAkgICAgSUZDQVBfSFdDU1VNIHwgSUZDQVBfSFdDU1VN
X0lQVjY7CiAJaWZwLT5pZl9od2Fzc2lzdCA9IExPX0NTVU1fRkVBVFVSRVMgfCBMT19DU1VNX0ZF
QVRVUkVTNjsKIAlpZl9hdHRhY2goaWZwKTsKKwlpZl9zZXR0cmFuc21pdGZuKGlmcCwgbG9faWZf
dHJhbnNtaXQpOwogCWJwZmF0dGFjaChpZnAsIERMVF9OVUxMLCBzaXplb2YodV9pbnQzMl90KSk7
CiAJaWYgKFZfbG9pZiA9PSBOVUxMKQogCQlWX2xvaWYgPSBpZnA7Cg==
--94eb2c0ddb0a32921105549b0ec4
Content-Type: text/plain; charset="US-ASCII"; name="netmap_generic.diff"
Content-Disposition: attachment; filename="netmap_generic.diff"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_j59v9uax1

SW5kZXg6IHN5cy9kZXYvbmV0bWFwL25ldG1hcF9nZW5lcmljLmMKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gc3lz
L2Rldi9uZXRtYXAvbmV0bWFwX2dlbmVyaWMuYwkocmV2aXNpb24gMzIwNjc0KQorKysgc3lzL2Rl
di9uZXRtYXAvbmV0bWFwX2dlbmVyaWMuYwkod29ya2luZyBjb3B5KQpAQCAtNzUsNiArNzUsNyBA
QAogI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4gLyogc29ja2FkZHJzICovCiAjaW5jbHVkZSA8c3lz
L3NlbGluZm8uaD4KICNpbmNsdWRlIDxuZXQvaWYuaD4KKyNpbmNsdWRlIDxuZXQvaWZfdHlwZXMu
aD4KICNpbmNsdWRlIDxuZXQvaWZfdmFyLmg+CiAjaW5jbHVkZSA8bWFjaGluZS9idXMuaD4gICAg
ICAgIC8qIGJ1c19kbWFtYXBfKiBpbiBuZXRtYXBfa2Vybi5oICovCiAKQEAgLTExOTgsNiArMTE5
OSwxMyBAQAogCWludCByZXR2YWw7CiAJdV9pbnQgbnVtX3R4X2Rlc2MsIG51bV9yeF9kZXNjOwog
CisjaWZkZWYgX19GcmVlQlNEX18KKwlpZiAoaWZwLT5pZl90eXBlID09IElGVF9MT09QKSB7CisJ
CUQoImlmX2xvb3AgaXMgbm90IHN1cHBvcnRlZCBieSAlcyIsIF9fZnVuY19fKTsKKwkJcmV0dXJu
IEVJTlZBTDsKKwl9CisjZW5kaWYKKwogCW51bV90eF9kZXNjID0gbnVtX3J4X2Rlc2MgPSBuZXRt
YXBfZ2VuZXJpY19yaW5nc2l6ZTsgLyogc3RhcnRpbmcgcG9pbnQgKi8KIAogCW5tX29zX2dlbmVy
aWNfZmluZF9udW1fZGVzYyhpZnAsICZudW1fdHhfZGVzYywgJm51bV9yeF9kZXNjKTsgLyogaWdu
b3JlIGVycm9ycyAqLwo=
--94eb2c0ddb0a32921105549b0ec4--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAB=2f8zaFmF_mW3wq_zgp9R47_X4Q%2B=1c53qStUFm=vM8rRwXA>