Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 10 Jun 2016 13:43:58 +0200 (CEST)
From:      Arnaud YSMAL <arnaud.ysmal@stormshield.eu>
To:        Eric Joyner <ricera10@gmail.com>
Cc:        freebsd-net@freebsd.org
Subject:   Re: [Patch] Changing mac address does not always work
Message-ID:  <406543187.3842832.1465559038225.JavaMail.zimbra@stormshield.eu>
In-Reply-To: <CA%2Bb0zg9sSP2k1h_mHb7_VcKAi%2B1ZfE_Kh8t=YKtDRCYNyhF37w@mail.gmail.com>
References:  <494678734.3111275.1465379076220.JavaMail.zimbra@stormshield.eu> <CA%2Bb0zg9sSP2k1h_mHb7_VcKAi%2B1ZfE_Kh8t=YKtDRCYNyhF37w@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
------=_Part_3842830_249408216.1465559038223
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Thank you, you can find enclosed a patch following your suggestion.

----- Le 8 Juin 16, =C3=A0 22:40, Eric Joyner ricera10@gmail.com a =C3=A9cr=
it :

> I think a better fix here is to have the driver not call init_locked() wh=
en
> the driver is not running when setting the MTU.
>=20
> It looks like all the other Intel network drivers do the same thing as th=
is
> for the MTU.
>=20
> On Wed, Jun 8, 2016 at 2:47 AM Arnaud YSMAL <arnaud.ysmal@stormshield.eu>
> wrote:
>=20
>> Hi,
>>
>> Configuring the network card with the following commands (in this specif=
ic
>> order) does not work.
>> # ifconfig em0 down
>> # ifconfig em0 mtu 1500
>> # ifconfig em0 ether 12:34:56:12:34:56
>> # ifconfig em0 192.168.1.1/24
>> # ifconfig em0 up
>>
>> I was able to reproduce this issue on 10.3-RELEASE and HEAD with ix and =
em
>> drivers.
>>
>> From what I understand:
>> - When setting the mtu, the driver calls the init of the interface which
>> sets the IFF_DRV_RUNNING flag
>> - When setting the mac address, if_setlladdr (from if.c) copy the mac
>> address but does nothing else (the interface is not up)
>> - When setting the ip address, the driver does not call the init as the
>> IFF_DRV_RUNNING is already set.
>> - When setting the up flag, same as above, the IFF_DRV_RUNNING is alread=
y
>> set.
>>
>> In this case the network card does not work as the mac address filter is
>> not up to date.
>>
>> The enclosed path fixes this issue,
>> It changes if_setlladdr in if.c to call the ifp->if_ioctl function with
>> the IFF_UP flag clear even when the interface is not up.
>> The driver will then call its stop function which clear the
>> IFF_DRV_RUNNING.
>> The init will be called when setting the ip address or the up flag.
>>
>> Do you have any advice regarding this patch?
>>
>> Arnaud_______________________________________________
>> freebsd-net@freebsd.org mailing list
>> https://lists.freebsd.org/mailman/listinfo/freebsd-net
> > To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"

------=_Part_3842830_249408216.1465559038223
Content-Type: text/x-patch; name=fix_init_on_set_mtu.patch
Content-Disposition: attachment; filename=fix_init_on_set_mtu.patch
Content-Transfer-Encoding: base64

ZGlmZiAtLWdpdCBhL3N5cy9kZXYvZTEwMDAvaWZfZW0uYyBiL3N5cy9kZXYvZTEwMDAvaWZfZW0u
YwppbmRleCAxNGY1NDYzLi5kZGQ2NTFkIDEwMDY0NAotLS0gYS9zeXMvZGV2L2UxMDAwL2lmX2Vt
LmMKKysrIGIvc3lzL2Rldi9lMTAwMC9pZl9lbS5jCkBAIC0xMjE0LDcgKzEyMTQsOCBAQCBlbV9p
b2N0bChpZl90IGlmcCwgdV9sb25nIGNvbW1hbmQsIGNhZGRyX3QgZGF0YSkKIAkJaWZfc2V0bXR1
KGlmcCwgaWZyLT5pZnJfbXR1KTsKIAkJYWRhcHRlci0+aHcubWFjLm1heF9mcmFtZV9zaXplID0K
IAkJICAgIGlmX2dldG10dShpZnApICsgRVRIRVJfSERSX0xFTiArIEVUSEVSX0NSQ19MRU47Ci0J
CWVtX2luaXRfbG9ja2VkKGFkYXB0ZXIpOworCQlpZiAoaWZfZ2V0ZHJ2ZmxhZ3MoaWZwKSAmIElG
Rl9EUlZfUlVOTklORykKKwkJCWVtX2luaXRfbG9ja2VkKGFkYXB0ZXIpOwogCQlFTV9DT1JFX1VO
TE9DSyhhZGFwdGVyKTsKIAkJYnJlYWs7CiAJICAgIH0KZGlmZiAtLWdpdCBhL3N5cy9kZXYvZTEw
MDAvaWZfaWdiLmMgYi9zeXMvZGV2L2UxMDAwL2lmX2lnYi5jCmluZGV4IDgzZTFlODMuLmVmNTI1
NmYgMTAwNjQ0Ci0tLSBhL3N5cy9kZXYvZTEwMDAvaWZfaWdiLmMKKysrIGIvc3lzL2Rldi9lMTAw
MC9pZl9pZ2IuYwpAQCAtMTEwNiw3ICsxMTA2LDggQEAgaWdiX2lvY3RsKHN0cnVjdCBpZm5ldCAq
aWZwLCB1X2xvbmcgY29tbWFuZCwgY2FkZHJfdCBkYXRhKQogCQlpZnAtPmlmX210dSA9IGlmci0+
aWZyX210dTsKIAkJYWRhcHRlci0+bWF4X2ZyYW1lX3NpemUgPQogCQkgICAgaWZwLT5pZl9tdHUg
KyBFVEhFUl9IRFJfTEVOICsgRVRIRVJfQ1JDX0xFTjsKLQkJaWdiX2luaXRfbG9ja2VkKGFkYXB0
ZXIpOworCQlpZiAoKGlmcC0+aWZfZHJ2X2ZsYWdzICYgSUZGX0RSVl9SVU5OSU5HKSkKKwkJCWln
Yl9pbml0X2xvY2tlZChhZGFwdGVyKTsKIAkJSUdCX0NPUkVfVU5MT0NLKGFkYXB0ZXIpOwogCQli
cmVhazsKIAkgICAgfQpkaWZmIC0tZ2l0IGEvc3lzL2Rldi9lMTAwMC9pZl9sZW0uYyBiL3N5cy9k
ZXYvZTEwMDAvaWZfbGVtLmMKaW5kZXggNTBiMmNiMC4uNTViODMxMCAxMDA2NDQKLS0tIGEvc3lz
L2Rldi9lMTAwMC9pZl9sZW0uYworKysgYi9zeXMvZGV2L2UxMDAwL2lmX2xlbS5jCkBAIC0xMDUz
LDcgKzEwNTMsOCBAQCBsZW1faW9jdGwoaWZfdCBpZnAsIHVfbG9uZyBjb21tYW5kLCBjYWRkcl90
IGRhdGEpCiAJCWlmX3NldG10dShpZnAsIGlmci0+aWZyX210dSk7CiAJCWFkYXB0ZXItPm1heF9m
cmFtZV9zaXplID0KIAkJICAgIGlmX2dldG10dShpZnApICsgRVRIRVJfSERSX0xFTiArIEVUSEVS
X0NSQ19MRU47Ci0JCWxlbV9pbml0X2xvY2tlZChhZGFwdGVyKTsKKwkJaWYgKChpZl9nZXRkcnZm
bGFncyhpZnApICYgSUZGX0RSVl9SVU5OSU5HKSkKKwkJCWxlbV9pbml0X2xvY2tlZChhZGFwdGVy
KTsKIAkJRU1fQ09SRV9VTkxPQ0soYWRhcHRlcik7CiAJCWJyZWFrOwogCSAgICB9CmRpZmYgLS1n
aXQgYS9zeXMvZGV2L2l4Z2IvaWZfaXhnYi5jIGIvc3lzL2Rldi9peGdiL2lmX2l4Z2IuYwppbmRl
eCA0ZWY0OTI5Li40ZGIyNzJjIDEwMDY0NAotLS0gYS9zeXMvZGV2L2l4Z2IvaWZfaXhnYi5jCisr
KyBiL3N5cy9kZXYvaXhnYi9pZl9peGdiLmMKQEAgLTUzOSw3ICs1MzksOCBAQCBpeGdiX2lvY3Rs
KHN0cnVjdCBpZm5ldCAqIGlmcCwgSU9DVExfQ01EX1RZUEUgY29tbWFuZCwgY2FkZHJfdCBkYXRh
KQogCQkJYWRhcHRlci0+aHcubWF4X2ZyYW1lX3NpemUgPQogCQkJCWlmcC0+aWZfbXR1ICsgRVRI
RVJfSERSX0xFTiArIEVUSEVSX0NSQ19MRU47CiAKLQkJCWl4Z2JfaW5pdF9sb2NrZWQoYWRhcHRl
cik7CisJCQlpZiAoaWZwLT5pZl9kcnZfZmxhZ3MgJiBJRkZfRFJWX1JVTk5JTkcpCisJCQkJaXhn
Yl9pbml0X2xvY2tlZChhZGFwdGVyKTsKIAkJCUlYR0JfVU5MT0NLKGFkYXB0ZXIpOwogCQl9CiAJ
CWJyZWFrOwpkaWZmIC0tZ2l0IGEvc3lzL2Rldi9peGdiZS9pZl9peC5jIGIvc3lzL2Rldi9peGdi
ZS9pZl9peC5jCmluZGV4IGRkZWU2OTkuLmNmMjIzMWQgMTAwNjQ0Ci0tLSBhL3N5cy9kZXYvaXhn
YmUvaWZfaXguYworKysgYi9zeXMvZGV2L2l4Z2JlL2lmX2l4LmMKQEAgLTg5Myw3ICs4OTMsOCBA
QCBpeGdiZV9pb2N0bChzdHJ1Y3QgaWZuZXQgKiBpZnAsIHVfbG9uZyBjb21tYW5kLCBjYWRkcl90
IGRhdGEpCiAJCQlpZnAtPmlmX210dSA9IGlmci0+aWZyX210dTsKIAkJCWFkYXB0ZXItPm1heF9m
cmFtZV9zaXplID0KIAkJCQlpZnAtPmlmX210dSArIElYR0JFX01UVV9IRFI7Ci0JCQlpeGdiZV9p
bml0X2xvY2tlZChhZGFwdGVyKTsKKwkJCWlmIChpZnAtPmlmX2Rydl9mbGFncyAmIElGRl9EUlZf
UlVOTklORykKKwkJCQlpeGdiZV9pbml0X2xvY2tlZChhZGFwdGVyKTsKICNpZmRlZiBQQ0lfSU9W
CiAJCQlpeGdiZV9yZWNhbGN1bGF0ZV9tYXhfZnJhbWUoYWRhcHRlcik7CiAjZW5kaWYKZGlmZiAt
LWdpdCBhL3N5cy9kZXYvaXhnYmUvaWZfaXh2LmMgYi9zeXMvZGV2L2l4Z2JlL2lmX2l4di5jCmlu
ZGV4IDEzYzJiZWYuLjgwZmIxYjMgMTAwNjQ0Ci0tLSBhL3N5cy9kZXYvaXhnYmUvaWZfaXh2LmMK
KysrIGIvc3lzL2Rldi9peGdiZS9pZl9peHYuYwpAQCAtNTc4LDcgKzU3OCw4IEBAIGl4dl9pb2N0
bChzdHJ1Y3QgaWZuZXQgKiBpZnAsIHVfbG9uZyBjb21tYW5kLCBjYWRkcl90IGRhdGEpCiAJCQlp
ZnAtPmlmX210dSA9IGlmci0+aWZyX210dTsKIAkJCWFkYXB0ZXItPm1heF9mcmFtZV9zaXplID0K
IAkJCQlpZnAtPmlmX210dSArIElYR0JFX01UVV9IRFI7Ci0JCQlpeHZfaW5pdF9sb2NrZWQoYWRh
cHRlcik7CisJCQlpZiAoaWZwLT5pZl9kcnZfZmxhZ3MgJiBJRkZfRFJWX1JVTk5JTkcpCisJCQkJ
aXh2X2luaXRfbG9ja2VkKGFkYXB0ZXIpOwogCQkJSVhHQkVfQ09SRV9VTkxPQ0soYWRhcHRlcik7
CiAJCX0KIAkJYnJlYWs7CmRpZmYgLS1naXQgYS9zeXMvZGV2L2l4bC9pZl9peGwuYyBiL3N5cy9k
ZXYvaXhsL2lmX2l4bC5jCmluZGV4IGQ3NTljZmQuLjhlOWJhODAgMTAwNjQ0Ci0tLSBhL3N5cy9k
ZXYvaXhsL2lmX2l4bC5jCisrKyBiL3N5cy9kZXYvaXhsL2lmX2l4bC5jCkBAIC05ODAsNyArOTgw
LDggQEAgaXhsX2lvY3RsKHN0cnVjdCBpZm5ldCAqIGlmcCwgdV9sb25nIGNvbW1hbmQsIGNhZGRy
X3QgZGF0YSkKIAkJCXZzaS0+bWF4X2ZyYW1lX3NpemUgPQogCQkJCWlmcC0+aWZfbXR1ICsgRVRI
RVJfSERSX0xFTiArIEVUSEVSX0NSQ19MRU4KIAkJCSAgICArIEVUSEVSX1ZMQU5fRU5DQVBfTEVO
OwotCQkJaXhsX2luaXRfbG9ja2VkKHBmKTsKKwkJCWlmIChpZnAtPmlmX2Rydl9mbGFncyAmIElG
Rl9EUlZfUlVOTklORykKKwkJCQlpeGxfaW5pdF9sb2NrZWQocGYpOwogCQkJSVhMX1BGX1VOTE9D
SyhwZik7CiAJCX0KIAkJYnJlYWs7CmRpZmYgLS1naXQgYS9zeXMvZGV2L2l4bC9pZl9peGx2LmMg
Yi9zeXMvZGV2L2l4bC9pZl9peGx2LmMKaW5kZXggOWU1MjQyYy4uOWJlOGEzNiAxMDA2NDQKLS0t
IGEvc3lzL2Rldi9peGwvaWZfaXhsdi5jCisrKyBiL3N5cy9kZXYvaXhsL2lmX2l4bHYuYwpAQCAt
Njc2LDcgKzY3Niw4IEBAIGl4bHZfaW9jdGwoc3RydWN0IGlmbmV0ICppZnAsIHVfbG9uZyBjb21t
YW5kLCBjYWRkcl90IGRhdGEpCiAJCQl2c2ktPm1heF9mcmFtZV9zaXplID0KIAkJCSAgICBpZnAt
PmlmX210dSArIEVUSEVSX0hEUl9MRU4gKyBFVEhFUl9DUkNfTEVOCiAJCQkgICAgKyBFVEhFUl9W
TEFOX0VOQ0FQX0xFTjsKLQkJCWl4bHZfaW5pdF9sb2NrZWQoc2MpOworCQkJaWYgKGlmcC0+aWZf
ZHJ2X2ZsYWdzICYgSUZGX0RSVl9SVU5OSU5HKQorCQkJCWl4bHZfaW5pdF9sb2NrZWQoc2MpOwog
CQl9CiAJCW10eF91bmxvY2soJnNjLT5tdHgpOwogCQlicmVhazsK
------=_Part_3842830_249408216.1465559038223--



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