Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 11 Feb 2012 21:33:45 -0800
From:      Adrian Chadd <adrian@freebsd.org>
To:        freebsd-wireless@freebsd.org
Subject:   [ath] patch: lock vap->iv_bss before using it in a few places
Message-ID:  <CAJ-Vmo=0u2_U_mY-QnPYo20MqK_ob6qiTRHTi3ruBFgW6=f0sA@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
--00504502d75d9f48de04b8bdb4b5
Content-Type: text/plain; charset=ISO-8859-1

Hi all,

This quick patch mirrors what was done in r212127 - it enforces
locking of whatever the vap->iv_bss node is before using it.

I'd appreciate some testing and feedback before I commit it. I'm going
to try and reproduce breaking it in sta/hostap mode but I won't be
able to until I'm back in the lab next week.

Thanks,


Adrian

--00504502d75d9f48de04b8bdb4b5
Content-Type: application/octet-stream; name="if_ath_net80211_lock.diff"
Content-Disposition: attachment; filename="if_ath_net80211_lock.diff"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_gyjn1fcp0

SW5kZXg6IHN5cy9kZXYvYXRoL2lmX2F0aC5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHN5cy9kZXYvYXRoL2lm
X2F0aC5jCShyZXZpc2lvbiAyMzE1NDEpCisrKyBzeXMvZGV2L2F0aC9pZl9hdGguYwkod29ya2lu
ZyBjb3B5KQpAQCAtMTY2OSw2ICsxNjY5LDcgQEAKIAkJc3RydWN0IGF0aF9zb2Z0YyAqc2MgPSBp
ZnAtPmlmX3NvZnRjOwogCQl1X2ludDY0X3QgbGFzdHJ4ID0gc2MtPnNjX2xhc3RyeDsKIAkJdV9p
bnQ2NF90IHRzZiA9IGF0aF9oYWxfZ2V0dHNmNjQoc2MtPnNjX2FoKTsKKwkJLyogWFhYIHNob3Vs
ZCB0YWtlIGEgbG9ja2VkIHJlZiB0byBpdl9ic3MgKi8KIAkJdV9pbnQgYm1pc3N0aW1lb3V0ID0K
IAkJCXZhcC0+aXZfYm1pc3N0aHJlc2hvbGQgKiB2YXAtPml2X2Jzcy0+bmlfaW50dmFsICogMTAy
NDsKIApAQCAtMzI0NSw3ICszMjQ2LDcgQEAKIAogCWlmICh2YXAgPT0gTlVMTCkKIAkJdmFwID0g
VEFJTFFfRklSU1QoJmljLT5pY192YXBzKTsJLyogWFhYICovCi0JbmkgPSB2YXAtPml2X2JzczsK
KwluaSA9IGllZWU4MDIxMV9yZWZfbm9kZSh2YXAtPml2X2Jzcyk7CiAKIAkvKiBleHRyYWN0IHRz
dGFtcCBmcm9tIGxhc3QgYmVhY29uIGFuZCBjb252ZXJ0IHRvIFRVICovCiAJbmV4dHRidHQgPSBU
U0ZfVE9fVFUoTEVfUkVBRF80KG5pLT5uaV90c3RhbXAuZGF0YSArIDQpLApAQCAtMzQxNSw2ICsz
NDE2LDcgQEAKIAkJCWF0aF9iZWFjb25fc3RhcnRfYWRob2Moc2MsIHZhcCk7CiAJfQogCXNjLT5z
Y19zeW5jYmVhY29uID0gMDsKKwlpZWVlODAyMTFfZnJlZV9ub2RlKG5pKTsKICN1bmRlZiBGVURH
RQogI3VuZGVmIFRTRl9UT19UVQogfQpAQCAtMzg1Myw2ICszODU1LDcgQEAKIAlzd2l0Y2ggKHN1
YnR5cGUpIHsKIAljYXNlIElFRUU4MDIxMV9GQzBfU1VCVFlQRV9CRUFDT046CiAJCS8qIHVwZGF0
ZSByc3NpIHN0YXRpc3RpY3MgZm9yIHVzZSBieSB0aGUgaGFsICovCisJCS8qIFhYWCB1bmxvY2tl
ZCBjaGVjayBhZ2FpbnN0IHZhcC0+aXZfYnNzPyAqLwogCQlBVEhfUlNTSV9MUEYoc2MtPnNjX2hh
bHN0YXRzLm5zX2F2Z2Jyc3NpLCByc3NpKTsKIAkJaWYgKHNjLT5zY19zeW5jYmVhY29uICYmCiAJ
CSAgICBuaSA9PSB2YXAtPml2X2JzcyAmJiB2YXAtPml2X3N0YXRlID09IElFRUU4MDIxMV9TX1JV
TikgewpAQCAtNTcyMSw3ICs1NzI0LDcgQEAKIAkJdGFza3F1ZXVlX3VuYmxvY2soc2MtPnNjX3Rx
KTsKIAl9CiAKLQluaSA9IHZhcC0+aXZfYnNzOworCW5pID0gaWVlZTgwMjExX3JlZl9ub2RlKHZh
cC0+aXZfYnNzKTsKIAlyZmlsdCA9IGF0aF9jYWxjcnhmaWx0ZXIoc2MpOwogCXN0YW1vZGUgPSAo
dmFwLT5pdl9vcG1vZGUgPT0gSUVFRTgwMjExX01fU1RBIHx8CiAJCSAgIHZhcC0+aXZfb3Btb2Rl
ID09IElFRUU4MDIxMV9NX0FIREVNTyB8fApAQCAtNTc1Miw3ICs1NzU1LDggQEAKIAogCWlmIChu
c3RhdGUgPT0gSUVFRTgwMjExX1NfUlVOKSB7CiAJCS8qIE5COiBjb2xsZWN0IGJzcyBub2RlIGFn
YWluLCBpdCBtYXkgaGF2ZSBjaGFuZ2VkICovCi0JCW5pID0gdmFwLT5pdl9ic3M7CisJCWllZWU4
MDIxMV9mcmVlX25vZGUobmkpOworCQluaSA9IGllZWU4MDIxMV9yZWZfbm9kZSh2YXAtPml2X2Jz
cyk7CiAKIAkJRFBSSU5URihzYywgQVRIX0RFQlVHX1NUQVRFLAogCQkgICAgIiVzKFJVTik6IGl2
X2ZsYWdzIDB4JTA4eCBiaW50dmwgJWQgYnNzaWQgJXMgIgpAQCAtNTg3NSw2ICs1ODc5LDcgQEAK
ICNlbmRpZgogCX0KIGJhZDoKKwlpZWVlODAyMTFfZnJlZV9ub2RlKG5pKTsKIAlyZXR1cm4gZXJy
b3I7CiB9CiAKQEAgLTU4OTMsNiArNTg5OCw3IEBACiAJc3RydWN0IGF0aF9zb2Z0YyAqc2MgPSB2
YXAtPml2X2ljLT5pY19pZnAtPmlmX3NvZnRjOwogCWllZWU4MDIxMV9rZXlpeCBrZXlpeCwgcnhr
ZXlpeDsKIAorCS8qIFhYWCBzaG91bGQgdGFrZSBhIGxvY2tlZCByZWYgdG8gdmFwLT5pdl9ic3Mg
Ki8KIAlpZiAoIWF0aF9rZXlfYWxsb2ModmFwLCAmbmktPm5pX3VjYXN0a2V5LCAma2V5aXgsICZy
eGtleWl4KSkgewogCQkvKgogCQkgKiBLZXkgY2FjaGUgaXMgZnVsbDsgd2UnbGwgZmFsbCBiYWNr
IHRvIGRvaW5nCkBAIC02NDQ4LDYgKzY0NTQsNyBAQAogCQkJcmV0dXJuOwogCQl9CiAJfQorCS8q
IFhYWCBzaG91bGQgdGFrZSBhIGxvY2tlZCByZWYgdG8gaXZfYnNzICovCiAJdHAgPSB2YXAtPml2
X2Jzcy0+bmlfdHhwYXJtczsKIAkvKgogCSAqIENhbGN1bGF0ZSB0aGUgZ3VhcmQgdGltZSBmb3Ig
ZWFjaCBzbG90LiAgVGhpcyBpcyB0aGUKQEAgLTY2OTcsNiArNjcwNCw3IEBACiAJCSAqIFJlY29y
ZCBsb2NhbCBUU0YgZm9yIG91ciBsYXN0IHNlbmQgZm9yIHVzZQogCQkgKiBpbiBhcmJpdHJhdGlu
ZyBzbG90IGNvbGxpc2lvbnMuCiAJCSAqLworCQkvKiBYWFggc2hvdWxkIHRha2UgYSBsb2NrZWQg
cmVmIHRvIGl2X2JzcyAqLwogCQl2YXAtPml2X2Jzcy0+bmlfdHN0YW1wLnRzZiA9IGF0aF9oYWxf
Z2V0dHNmNjQoYWgpOwogCX0KIH0K
--00504502d75d9f48de04b8bdb4b5--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-Vmo=0u2_U_mY-QnPYo20MqK_ob6qiTRHTi3ruBFgW6=f0sA>