Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 19 May 2005 16:34:15 +0100
From:      Peter Edwards <peadar.edwards@gmail.com>
To:        Matti Saarinen <mjsaarin@cc.helsinki.fi>, Scot Hetzel <swhetzel@gmail.com>, freebsd-current@freebsd.org
Cc:        peadar@freebsd.org
Subject:   Re: CURRENT: ifconfig tap0 results in core dump
Message-ID:  <34cb7c84050519083477639cd5@mail.gmail.com>
In-Reply-To: <790a9fff0505190809428abb15@mail.gmail.com>
References:  <yq3jekc34sc6.fsf@lagavulin.it.helsinki.fi> <790a9fff0505190809428abb15@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
------=_Part_3241_23428101.1116516855132
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

> > % ifconfig tap0
> > tap0: flags=3D8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500
> >        inet6 fe80::2bd:9ff:fe7c:100%tap0 prefixlen 64 scopeid 0x5
> > zsh: segmentation fault (core dumped)  ifconfig tap0
> >
> >
> > I remember that ifconfig didn't dump core when my laptop ran CURRENT
> > from a few months ago.
> >
> You'll probably need to build a version of ifconfig with debugging
> symbols. And then provide a backtrace of the core dump.
>=20
> How soon after killing openvpn, do you use the ifconfig command.  It
> might be possible that devfs was in the process of removing tap0, when
> you used the ifconfig command.
>=20
Hm.
It looks like the "close" code for if_tap clears out the addresses of
the interface with a pretty blunt-edged "bzero", rather than removing
them in any clean fashion. As a result, ifconfig gets confused over
the address families in the tags it sees on the addresses it
enumerates off the tap interface, and collapses with a corefile.

if_tap's "close" seems to be trying to do part of what's done in
if_detach, so I split out what I think are the relevant bits from
there and used it in both places.

Any networking experts care to take a look at the patch? I suspect
there's a whole mess of locking I'm not doing for a start, but I think
it might be an improvement over the current situation.

Cheers,
Peadar.

------=_Part_3241_23428101.1116516855132
Content-Type: text/plain; name="iftap.txt"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="iftap.txt"

SW5kZXg6IG5ldC9pZi5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC91c3IvY3ZzL0ZyZWVCU0QtQ1ZT
L3NyYy9zeXMvbmV0L2lmLmMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMjI3CmRpZmYgLXUgLXcg
LXIxLjIyNyBpZi5jCi0tLSBuZXQvaWYuYwkyMCBBcHIgMjAwNSAwOTozMDo1NCAtMDAwMAkxLjIy
NworKysgbmV0L2lmLmMJOSBNYXkgMjAwNSAxNTozMzo0MCAtMDAwMApAQCAtNTMwLDEzICs1MzAs
NTIgQEAKIH0KIAogLyoKKyAqIFJlbW92ZSBhbnkgbmV0d29yayBhZGRyZXNzZXMgZnJvbSBhbiBp
bnRlcmZhY2UuCisgKi8KKwordm9pZAoraWZfcHVyZ2VhZGRycyhzdHJ1Y3QgaWZuZXQgKmlmcCkK
K3sKKwlzdHJ1Y3QgaWZhZGRyICppZmEsICpuZXh0OworCisJVEFJTFFfRk9SRUFDSF9TQUZFKGlm
YSwgJmlmcC0+aWZfYWRkcmhlYWQsIGlmYV9saW5rLCBuZXh0KSB7CisKKwkJaWYgKGlmYS0+aWZh
X2FkZHItPnNhX2ZhbWlseSA9PSBBRl9MSU5LKQorCQkJY29udGludWU7CisjaWZkZWYgSU5FVAor
CQkvKiBYWFg6IFVnbHkhISBhZCBob2MganVzdCBmb3IgSU5FVCAqLworCQlpZiAoaWZhLT5pZmFf
YWRkciAmJiBpZmEtPmlmYV9hZGRyLT5zYV9mYW1pbHkgPT0gQUZfSU5FVCkgeworCQkJc3RydWN0
IGlmYWxpYXNyZXEgaWZyOworCisJCQliemVybygmaWZyLCBzaXplb2YoaWZyKSk7CisJCQlpZnIu
aWZyYV9hZGRyID0gKmlmYS0+aWZhX2FkZHI7CisJCQlpZiAoaWZhLT5pZmFfZHN0YWRkcikKKwkJ
CQlpZnIuaWZyYV9icm9hZGFkZHIgPSAqaWZhLT5pZmFfZHN0YWRkcjsKKwkJCWlmIChpbl9jb250
cm9sKE5VTEwsIFNJT0NESUZBRERSLCAoY2FkZHJfdCkmaWZyLCBpZnAsCisJCQkgICAgTlVMTCkg
PT0gMCkKKwkJCQljb250aW51ZTsKKwkJfQorI2VuZGlmIC8qIElORVQgKi8KKyNpZmRlZiBJTkVU
NgorCQlpZiAoaWZhLT5pZmFfYWRkciAmJiBpZmEtPmlmYV9hZGRyLT5zYV9mYW1pbHkgPT0gQUZf
SU5FVDYpIHsKKwkJCWluNl9wdXJnZWFkZHIoaWZhKTsKKwkJCS8qIGlmcF9hZGRyaGVhZCBpcyBh
bHJlYWR5IHVwZGF0ZWQgKi8KKwkJCWNvbnRpbnVlOworCQl9CisjZW5kaWYgLyogSU5FVDYgKi8K
KwkJVEFJTFFfUkVNT1ZFKCZpZnAtPmlmX2FkZHJoZWFkLCBpZmEsIGlmYV9saW5rKTsKKwkJSUZB
RlJFRShpZmEpOworCX0KK30KKworLyoKICAqIERldGFjaCBhbiBpbnRlcmZhY2UsIHJlbW92aW5n
IGl0IGZyb20gdGhlCiAgKiBsaXN0IG9mICJhY3RpdmUiIGludGVyZmFjZXMuCiAgKi8KIHZvaWQK
IGlmX2RldGFjaChzdHJ1Y3QgaWZuZXQgKmlmcCkKIHsKLQlzdHJ1Y3QgaWZhZGRyICppZmEsICpu
ZXh0OworCXN0cnVjdCBpZmFkZHIgKmlmYTsKIAlzdHJ1Y3QgcmFkaXhfbm9kZV9oZWFkCSpybmg7
CiAJaW50IHM7CiAJaW50IGk7CkBAIC01NjgsMzUgKzYwNyw5IEBACiAJCWFsdHFfZGV0YWNoKCZp
ZnAtPmlmX3NuZCk7CiAjZW5kaWYKIAotCWZvciAoaWZhID0gVEFJTFFfRklSU1QoJmlmcC0+aWZf
YWRkcmhlYWQpOyBpZmE7IGlmYSA9IG5leHQpIHsKLQkJbmV4dCA9IFRBSUxRX05FWFQoaWZhLCBp
ZmFfbGluayk7CisJaWZfcHVyZ2VhZGRycyhpZnApOwogCi0JCWlmIChpZmEtPmlmYV9hZGRyLT5z
YV9mYW1pbHkgPT0gQUZfTElOSykKLQkJCWNvbnRpbnVlOwotI2lmZGVmIElORVQKLQkJLyogWFhY
OiBVZ2x5ISEgYWQgaG9jIGp1c3QgZm9yIElORVQgKi8KLQkJaWYgKGlmYS0+aWZhX2FkZHIgJiYg
aWZhLT5pZmFfYWRkci0+c2FfZmFtaWx5ID09IEFGX0lORVQpIHsKLQkJCXN0cnVjdCBpZmFsaWFz
cmVxIGlmcjsKIAotCQkJYnplcm8oJmlmciwgc2l6ZW9mKGlmcikpOwotCQkJaWZyLmlmcmFfYWRk
ciA9ICppZmEtPmlmYV9hZGRyOwotCQkJaWYgKGlmYS0+aWZhX2RzdGFkZHIpCi0JCQkJaWZyLmlm
cmFfYnJvYWRhZGRyID0gKmlmYS0+aWZhX2RzdGFkZHI7Ci0JCQlpZiAoaW5fY29udHJvbChOVUxM
LCBTSU9DRElGQUREUiwgKGNhZGRyX3QpJmlmciwgaWZwLAotCQkJICAgIE5VTEwpID09IDApCi0J
CQkJY29udGludWU7Ci0JCX0KLSNlbmRpZiAvKiBJTkVUICovCi0jaWZkZWYgSU5FVDYKLQkJaWYg
KGlmYS0+aWZhX2FkZHIgJiYgaWZhLT5pZmFfYWRkci0+c2FfZmFtaWx5ID09IEFGX0lORVQ2KSB7
Ci0JCQlpbjZfcHVyZ2VhZGRyKGlmYSk7Ci0JCQkvKiBpZnBfYWRkcmhlYWQgaXMgYWxyZWFkeSB1
cGRhdGVkICovCi0JCQljb250aW51ZTsKLQkJfQotI2VuZGlmIC8qIElORVQ2ICovCi0JCVRBSUxR
X1JFTU9WRSgmaWZwLT5pZl9hZGRyaGVhZCwgaWZhLCBpZmFfbGluayk7Ci0JCUlGQUZSRUUoaWZh
KTsKLQl9CiAKICNpZmRlZiBJTkVUNgogCS8qCkluZGV4OiBuZXQvaWZfdGFwLmMKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQpSQ1MgZmlsZTogL3Vzci9jdnMvRnJlZUJTRC1DVlMvc3JjL3N5cy9uZXQvaWZfdGFwLmMsdgpy
ZXRyaWV2aW5nIHJldmlzaW9uIDEuNTMKZGlmZiAtdSAtdyAtcjEuNTMgaWZfdGFwLmMKLS0tIG5l
dC9pZl90YXAuYwk0IE1heSAyMDA1IDE4OjU1OjAyIC0wMDAwCTEuNTMKKysrIG5ldC9pZl90YXAu
Ywk5IE1heSAyMDA1IDIxOjAxOjUyIC0wMDAwCkBAIC0zNTYsOSArMzU2LDYgQEAKIAlzdHJ1Y3Qg
aWZuZXQJCSppZnAgPSBOVUxMOwogCWludAkJCSBzOwogCi0JaWYgKHRhcHVvcGVuID09IDAgJiYg
c3VzZXIodGQpICE9IDApCi0JCXJldHVybiAoRVBFUk0pOwotCiAJaWYgKChkZXYydW5pdChkZXYp
ICYgQ0xPTkVfVU5JVE1BU0spID4gVEFQTUFYVU5JVCkKIAkJcmV0dXJuIChFTlhJTyk7CiAKQEAg
LTQwOCw2ICs0MDUsNyBAQAogCWludAkJIGJhcjsKIAlzdHJ1Y3QgdGhyZWFkCSp0ZDsKIHsKKwlz
dHJ1Y3QgaWZhZGRyICppZmE7CiAJc3RydWN0IHRhcF9zb2Z0YwkqdHAgPSBkZXYtPnNpX2RydjE7
CiAJc3RydWN0IGlmbmV0CQkqaWZwID0gJnRwLT50YXBfaWY7CiAJaW50CQkJczsKQEAgLTQyNiwy
NCArNDI0LDEwIEBACiAJCXMgPSBzcGxpbXAoKTsKIAkJaWZfZG93bihpZnApOwogCQlpZiAoaWZw
LT5pZl9mbGFncyAmIElGRl9SVU5OSU5HKSB7Ci0JCQkvKiBmaW5kIGludGVybmV0IGFkZHJlc3Nl
cyBhbmQgZGVsZXRlIHJvdXRlcyAqLwotCQkJc3RydWN0IGlmYWRkcgkqaWZhID0gTlVMTDsKLQot
CQkJLyogSW4gZGVzcGFyYXRlIG5lZWQgb2YgaWZhZGRyIGxvY2tpbmcuICovCiAJCQlUQUlMUV9G
T1JFQUNIKGlmYSwgJmlmcC0+aWZfYWRkcmhlYWQsIGlmYV9saW5rKSB7Ci0JCQkJaWYgKGlmYS0+
aWZhX2FkZHItPnNhX2ZhbWlseSA9PSBBRl9JTkVUKSB7CiAJCQkJCXJ0aW5pdChpZmEsIChpbnQp
UlRNX0RFTEVURSwgMCk7Ci0KLQkJCQkJLyogcmVtb3ZlIGFkZHJlc3MgZnJvbSBpbnRlcmZhY2Ug
Ki8KLQkJCQkJYnplcm8oaWZhLT5pZmFfYWRkciwKLQkJCQkJCSAgIHNpemVvZigqKGlmYS0+aWZh
X2FkZHIpKSk7Ci0JCQkJCWJ6ZXJvKGlmYS0+aWZhX2RzdGFkZHIsCi0JCQkJCQkgICBzaXplb2Yo
KihpZmEtPmlmYV9kc3RhZGRyKSkpOwotCQkJCQliemVybyhpZmEtPmlmYV9uZXRtYXNrLAotCQkJ
CQkJICAgc2l6ZW9mKCooaWZhLT5pZmFfbmV0bWFzaykpKTsKIAkJCQl9Ci0JCQl9Ci0KKwkJCWlm
X3B1cmdlYWRkcnMoaWZwKTsKIAkJCWlmcC0+aWZfZmxhZ3MgJj0gfklGRl9SVU5OSU5HOwogCQl9
CiAJCXNwbHgocyk7CkluZGV4OiBuZXQvaWZfdmFyLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL3Vz
ci9jdnMvRnJlZUJTRC1DVlMvc3JjL3N5cy9uZXQvaWZfdmFyLmgsdgpyZXRyaWV2aW5nIHJldmlz
aW9uIDEuOTUKZGlmZiAtdSAtdyAtcjEuOTUgaWZfdmFyLmgKLS0tIG5ldC9pZl92YXIuaAkyMCBB
cHIgMjAwNSAwOTozMDo1NCAtMDAwMAkxLjk1CisrKyBuZXQvaWZfdmFyLmgJOSBNYXkgMjAwNSAx
NTozMzo0MSAtMDAwMApAQCAtNjI5LDYgKzYyOSw3IEBACiB2b2lkCWlmX2F0dGFjaChzdHJ1Y3Qg
aWZuZXQgKik7CiBpbnQJaWZfZGVsbXVsdGkoc3RydWN0IGlmbmV0ICosIHN0cnVjdCBzb2NrYWRk
ciAqKTsKIHZvaWQJaWZfZGV0YWNoKHN0cnVjdCBpZm5ldCAqKTsKK3ZvaWQJaWZfcHVyZ2VhZGRy
cyhzdHJ1Y3QgaWZuZXQgKik7CiB2b2lkCWlmX2Rvd24oc3RydWN0IGlmbmV0ICopOwogdm9pZAlp
Zl9pbml0bmFtZShzdHJ1Y3QgaWZuZXQgKiwgY29uc3QgY2hhciAqLCBpbnQpOwogdm9pZAlpZl9s
aW5rX3N0YXRlX2NoYW5nZShzdHJ1Y3QgaWZuZXQgKiwgaW50KTsK
------=_Part_3241_23428101.1116516855132--



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