linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Johannes Berg <johannes.berg@intel.com>
To: linux-wireless@vger.kernel.org
Cc: John Linville <linville@tuxdriver.com>
Subject: [PATCH 5/5 v2] mac80211: move packet flags into packet
Date: Fri, 24 Sep 2010 12:38:25 +0200	[thread overview]
Message-ID: <1285324705.3699.10.camel@jlt3.sipsolutions.net> (raw)
In-Reply-To: <20100924092306.234695699@sipsolutions.net>

RnJvbTogSm9oYW5uZXMgQmVyZyA8am9oYW5uZXMuYmVyZ0BpbnRlbC5jb20+Cgpjb21taXQgOGMw
YzcwOWVlYTVjYmFiOTdmYjQ2NGNkNjhiMDZmMjRhY2M1OGVlMQpBdXRob3I6IEpvaGFubmVzIEJl
cmcgPGpvaGFubmVzQHNpcHNvbHV0aW9ucy5uZXQ+CkRhdGU6ICAgV2VkIE5vdiAyNSAxNzo0Njox
NSAyMDA5ICswMTAwCgogICAgbWFjODAyMTE6IG1vdmUgY21udHIgZmxhZyBvdXQgb2YgcnggZmxh
Z3MKCm1vdmVkIHRoZSBDTU5UUiBmbGFnIGludG8gdGhlIHNrYiBSWCBmbGFncyBmb3IKc29tZSBh
Z2dyZWdhdGlvbiBjbGVhbnVwcywgYnV0IHRoaXMgd2FzIHdyb25nCnNpbmNlIHRoZSBvcHRpbWlz
YXRpb24gdGhpcyBmbGFnIHRyaWVkIHRvIG1ha2UKcmVxdWlyZXMgdGhhdCBpdCBpcyBrZXB0IGFj
cm9zcyB0aGUgcHJvY2Vzc2luZwpvZiBtdWx0aXBsZSBpbnRlcmZhY2VzIC0tIHdoaWNoIGlzbid0
IHRydWUgZm9yCmZsYWdzIGluIHRoZSBza2IuIFRoZSBwYXRjaCBub3Qgb25seSBicm9rZSB0aGUK
b3B0aW1pc2F0aW9uLCBpdCBhbHNvIGludHJvZHVjZWQgYSBidWc6IHVuZGVyCnNvbWUgKGNvbW1v
biEpIGNpcmN1bXN0YW5jZXMgdGhlIGZsYWcgd2lsbCBiZQpzZXQgb24gYW4gYWxyZWFkeSBmcmVl
ZCBza2IhCgpIb3dldmVyLCBpbnZlc3RpZ2F0aW5nIHRoaXMgaW4gbW9yZSBkZXRhaWwsIEkKZm91
bmQgdGhhdCBtb3N0IG9mIHRoZSBmbGFncyB0aGF0IHdlIHNldCBzaG91bGQKYmUgcGVyIHBhY2tl
dCwgX2V4Y2VwdF8gZm9yIHRoaXMgb25lLCBkdWUgdG8KYS1NUERVIHByb2Nlc3NpbmcuIEFkZGl0
aW9uYWxseSwgdGhlIGZsYWdzIHVzZWQKZm9yIHByb2Nlc3NpbmcgKGN1cnJlbnRseSBqdXN0IHRo
aXMgb25lKSBuZWVkCnRvIGJlIHJlc2V0IGJlZm9yZSBwcm9jZXNzaW5nIGEgbmV3IHBhY2tldC4K
ClNpbmNlIHdlIGhhdmVuJ3QgYWN0dWFsbHkgc2VlbiBidWdzIHJlcG9ydGVkIGFzCmEgcmVzdWx0
IG9mIHRoZSB3cm9uZyBmbGFncyBoYW5kbGluZyAod2hpY2ggaXMKbm90IHRvbyBzdXJwcmlzaW5n
IC0tIHRoZSBvbmx5IHJlYWwgYnVnIGNhc2UgSQpjYW4gY29tZSB1cCB3aXRoIGlzIGFuIGEtTVNE
VSBjb250YWluZWQgaW4gYW4KYS1NUERVKSwgSSdsbCBtYWtlIGEgZGlmZmVyZW50IGZpeCBmb3Ig
cmMuCgpTaWduZWQtb2ZmLWJ5OiBKb2hhbm5lcyBCZXJnIDxqb2hhbm5lcy5iZXJnQGludGVsLmNv
bT4KLS0tCnYyOiBmaXggc21hbGwgYnVnIGluIGRvY3MgZm9yIGEtTVNEVSBmbGFnCgogaW5jbHVk
ZS9uZXQvbWFjODAyMTEuaCAgICAgfCAgICA2IC0tCiBuZXQvbWFjODAyMTEvaWVlZTgwMjExX2ku
aCB8ICAgMzggKysrKysrKysrKysrKy0tLQogbmV0L21hYzgwMjExL3J4LmMgICAgICAgICAgfCAg
MTAyICsrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQogbmV0L21h
YzgwMjExL3dwYS5jICAgICAgICAgfCAgICAyIAogNCBmaWxlcyBjaGFuZ2VkLCA5MSBpbnNlcnRp
b25zKCspLCA1NyBkZWxldGlvbnMoLSkKCi0tLSB3aXJlbGVzcy10ZXN0aW5nLm9yaWcvbmV0L21h
YzgwMjExL3J4LmMJMjAxMC0wOS0yNCAxMjozNzowNS4wMDAwMDAwMDAgKzAyMDAKKysrIHdpcmVs
ZXNzLXRlc3RpbmcvbmV0L21hYzgwMjExL3J4LmMJMjAxMC0wOS0yNCAxMjozNzoyMC4wMDAwMDAw
MDAgKzAyMDAKQEAgLTMxNSw2ICszMTUsNyBAQCBpZWVlODAyMTFfcnhfbW9uaXRvcihzdHJ1Y3Qg
aWVlZTgwMjExX2xvCiBzdGF0aWMgdm9pZCBpZWVlODAyMTFfcGFyc2VfcW9zKHN0cnVjdCBpZWVl
ODAyMTFfcnhfZGF0YSAqcngpCiB7CiAJc3RydWN0IGllZWU4MDIxMV9oZHIgKmhkciA9IChzdHJ1
Y3QgaWVlZTgwMjExX2hkciAqKXJ4LT5za2ItPmRhdGE7CisJc3RydWN0IGllZWU4MDIxMV9yeF9z
dGF0dXMgKnN0YXR1cyA9IElFRUU4MDIxMV9TS0JfUlhDQihyeC0+c2tiKTsKIAlpbnQgdGlkOwog
CiAJLyogZG9lcyB0aGUgZnJhbWUgaGF2ZSBhIHFvcyBjb250cm9sIGZpZWxkPyAqLwpAQCAtMzIz
LDkgKzMyNCw3IEBAIHN0YXRpYyB2b2lkIGllZWU4MDIxMV9wYXJzZV9xb3Moc3RydWN0IGkKIAkJ
LyogZnJhbWUgaGFzIHFvcyBjb250cm9sICovCiAJCXRpZCA9ICpxYyAmIElFRUU4MDIxMV9RT1Nf
Q1RMX1RJRF9NQVNLOwogCQlpZiAoKnFjICYgSUVFRTgwMjExX1FPU19DT05UUk9MX0FfTVNEVV9Q
UkVTRU5UKQotCQkJcngtPmZsYWdzIHw9IElFRUU4MDIxMV9SWF9BTVNEVTsKLQkJZWxzZQotCQkJ
cngtPmZsYWdzICY9IH5JRUVFODAyMTFfUlhfQU1TRFU7CisJCQlzdGF0dXMtPnJ4X2ZsYWdzIHw9
IElFRUU4MDIxMV9SWF9BTVNEVTsKIAl9IGVsc2UgewogCQkvKgogCQkgKiBJRUVFIDgwMi4xMS0y
MDA3LCA3LjEuMy40LjEgKCJTZXF1ZW5jZSBOdW1iZXIgZmllbGQiKToKQEAgLTM4Nyw5ICszODYs
MTAgQEAgc3RhdGljIGllZWU4MDIxMV9yeF9yZXN1bHQgZGVidWdfbm9pbmxpbgogaWVlZTgwMjEx
X3J4X2hfcGFzc2l2ZV9zY2FuKHN0cnVjdCBpZWVlODAyMTFfcnhfZGF0YSAqcngpCiB7CiAJc3Ry
dWN0IGllZWU4MDIxMV9sb2NhbCAqbG9jYWwgPSByeC0+bG9jYWw7CisJc3RydWN0IGllZWU4MDIx
MV9yeF9zdGF0dXMgKnN0YXR1cyA9IElFRUU4MDIxMV9TS0JfUlhDQihyeC0+c2tiKTsKIAlzdHJ1
Y3Qgc2tfYnVmZiAqc2tiID0gcngtPnNrYjsKIAotCWlmIChsaWtlbHkoIShyeC0+ZmxhZ3MgJiBJ
RUVFODAyMTFfUlhfSU5fU0NBTikpKQorCWlmIChsaWtlbHkoIShzdGF0dXMtPnJ4X2ZsYWdzICYg
SUVFRTgwMjExX1JYX0lOX1NDQU4pKSkKIAkJcmV0dXJuIFJYX0NPTlRJTlVFOwogCiAJaWYgKHRl
c3RfYml0KFNDQU5fSFdfU0NBTk5JTkcsICZsb2NhbC0+c2Nhbm5pbmcpKQpAQCAtNzgzLDEzICs3
ODMsMTQgQEAgc3RhdGljIGllZWU4MDIxMV9yeF9yZXN1bHQgZGVidWdfbm9pbmxpbgogaWVlZTgw
MjExX3J4X2hfY2hlY2soc3RydWN0IGllZWU4MDIxMV9yeF9kYXRhICpyeCkKIHsKIAlzdHJ1Y3Qg
aWVlZTgwMjExX2hkciAqaGRyID0gKHN0cnVjdCBpZWVlODAyMTFfaGRyICopcngtPnNrYi0+ZGF0
YTsKKwlzdHJ1Y3QgaWVlZTgwMjExX3J4X3N0YXR1cyAqc3RhdHVzID0gSUVFRTgwMjExX1NLQl9S
WENCKHJ4LT5za2IpOwogCiAJLyogRHJvcCBkdXBsaWNhdGUgODAyLjExIHJldHJhbnNtaXNzaW9u
cyAoSUVFRSA4MDIuMTEgQ2hhcC4gOS4yLjkpICovCiAJaWYgKHJ4LT5zdGEgJiYgIWlzX211bHRp
Y2FzdF9ldGhlcl9hZGRyKGhkci0+YWRkcjEpKSB7CiAJCWlmICh1bmxpa2VseShpZWVlODAyMTFf
aGFzX3JldHJ5KGhkci0+ZnJhbWVfY29udHJvbCkgJiYKIAkJCSAgICAgcngtPnN0YS0+bGFzdF9z
ZXFfY3RybFtyeC0+cXVldWVdID09CiAJCQkgICAgIGhkci0+c2VxX2N0cmwpKSB7Ci0JCQlpZiAo
cngtPmZsYWdzICYgSUVFRTgwMjExX1JYX1JBX01BVENIKSB7CisJCQlpZiAoc3RhdHVzLT5yeF9m
bGFncyAmIElFRUU4MDIxMV9SWF9SQV9NQVRDSCkgewogCQkJCXJ4LT5sb2NhbC0+ZG90MTFGcmFt
ZUR1cGxpY2F0ZUNvdW50Kys7CiAJCQkJcngtPnN0YS0+bnVtX2R1cGxpY2F0ZXMrKzsKIAkJCX0K
QEAgLTgyMiw3ICs4MjMsNyBAQCBpZWVlODAyMTFfcnhfaF9jaGVjayhzdHJ1Y3QgaWVlZTgwMjEx
X3J4CiAJCWlmICgoIWllZWU4MDIxMV9oYXNfZnJvbWRzKGhkci0+ZnJhbWVfY29udHJvbCkgJiYK
IAkJICAgICAhaWVlZTgwMjExX2hhc190b2RzKGhkci0+ZnJhbWVfY29udHJvbCkgJiYKIAkJICAg
ICBpZWVlODAyMTFfaXNfZGF0YShoZHItPmZyYW1lX2NvbnRyb2wpKSB8fAotCQkgICAgIShyeC0+
ZmxhZ3MgJiBJRUVFODAyMTFfUlhfUkFfTUFUQ0gpKSB7CisJCSAgICAhKHN0YXR1cy0+cnhfZmxh
Z3MgJiBJRUVFODAyMTFfUlhfUkFfTUFUQ0gpKSB7CiAJCQkvKiBEcm9wIElCU1MgZnJhbWVzIGFu
ZCBmcmFtZXMgZm9yIG90aGVyIGhvc3RzCiAJCQkgKiBzaWxlbnRseS4gKi8KIAkJCXJldHVybiBS
WF9EUk9QX01PTklUT1I7CkBAIC04NzksNyArODgwLDcgQEAgaWVlZTgwMjExX3J4X2hfZGVjcnlw
dChzdHJ1Y3QgaWVlZTgwMjExXwogCSAqIE5vIHBvaW50IGluIGZpbmRpbmcgYSBrZXkgYW5kIGRl
Y3J5cHRpbmcgaWYgdGhlIGZyYW1lIGlzIG5laXRoZXIKIAkgKiBhZGRyZXNzZWQgdG8gdXMgbm9y
IGEgbXVsdGljYXN0IGZyYW1lLgogCSAqLwotCWlmICghKHJ4LT5mbGFncyAmIElFRUU4MDIxMV9S
WF9SQV9NQVRDSCkpCisJaWYgKCEoc3RhdHVzLT5yeF9mbGFncyAmIElFRUU4MDIxMV9SWF9SQV9N
QVRDSCkpCiAJCXJldHVybiBSWF9DT05USU5VRTsKIAogCS8qIHN0YXJ0IHdpdGhvdXQgYSBrZXkg
Ki8KQEAgLTExMTIsNyArMTExMyw3IEBAIGllZWU4MDIxMV9yeF9oX3N0YV9wcm9jZXNzKHN0cnVj
dCBpZWVlODAKIAkJc3RhLT5sYXN0X3J4ID0gamlmZmllczsKIAl9CiAKLQlpZiAoIShyeC0+Zmxh
Z3MgJiBJRUVFODAyMTFfUlhfUkFfTUFUQ0gpKQorCWlmICghKHN0YXR1cy0+cnhfZmxhZ3MgJiBJ
RUVFODAyMTFfUlhfUkFfTUFUQ0gpKQogCQlyZXR1cm4gUlhfQ09OVElOVUU7CiAKIAlpZiAocngt
PnNkYXRhLT52aWYudHlwZSA9PSBOTDgwMjExX0lGVFlQRV9TVEFUSU9OKQpAQCAtMTI2OSw2ICsx
MjcwLDcgQEAgaWVlZTgwMjExX3J4X2hfZGVmcmFnbWVudChzdHJ1Y3QgaWVlZTgwMgogCXVuc2ln
bmVkIGludCBmcmFnLCBzZXE7CiAJc3RydWN0IGllZWU4MDIxMV9mcmFnbWVudF9lbnRyeSAqZW50
cnk7CiAJc3RydWN0IHNrX2J1ZmYgKnNrYjsKKwlzdHJ1Y3QgaWVlZTgwMjExX3J4X3N0YXR1cyAq
c3RhdHVzOwogCiAJaGRyID0gKHN0cnVjdCBpZWVlODAyMTFfaGRyICopcngtPnNrYi0+ZGF0YTsK
IAlmYyA9IGhkci0+ZnJhbWVfY29udHJvbDsKQEAgLTEzNjgsNyArMTM3MCw4IEBAIGllZWU4MDIx
MV9yeF9oX2RlZnJhZ21lbnQoc3RydWN0IGllZWU4MDIKIAl9CiAKIAkvKiBDb21wbGV0ZSBmcmFt
ZSBoYXMgYmVlbiByZWFzc2VtYmxlZCAtIHByb2Nlc3MgaXQgbm93ICovCi0JcngtPmZsYWdzIHw9
IElFRUU4MDIxMV9SWF9GUkFHTUVOVEVEOworCXN0YXR1cyA9IElFRUU4MDIxMV9TS0JfUlhDQihy
eC0+c2tiKTsKKwlzdGF0dXMtPnJ4X2ZsYWdzIHw9IElFRUU4MDIxMV9SWF9GUkFHTUVOVEVEOwog
CiAgb3V0OgogCWlmIChyeC0+c3RhKQpAQCAtMTM4NSw5ICsxMzg4LDEwIEBAIGllZWU4MDIxMV9y
eF9oX3BzX3BvbGwoc3RydWN0IGllZWU4MDIxMV8KIHsKIAlzdHJ1Y3QgaWVlZTgwMjExX3N1Yl9p
Zl9kYXRhICpzZGF0YSA9IHJ4LT5zZGF0YTsKIAlfX2xlMTYgZmMgPSAoKHN0cnVjdCBpZWVlODAy
MTFfaGRyICopcngtPnNrYi0+ZGF0YSktPmZyYW1lX2NvbnRyb2w7CisJc3RydWN0IGllZWU4MDIx
MV9yeF9zdGF0dXMgKnN0YXR1cyA9IElFRUU4MDIxMV9TS0JfUlhDQihyeC0+c2tiKTsKIAogCWlm
IChsaWtlbHkoIXJ4LT5zdGEgfHwgIWllZWU4MDIxMV9pc19wc3BvbGwoZmMpIHx8Ci0JCSAgICEo
cngtPmZsYWdzICYgSUVFRTgwMjExX1JYX1JBX01BVENIKSkpCisJCSAgICEoc3RhdHVzLT5yeF9m
bGFncyAmIElFRUU4MDIxMV9SWF9SQV9NQVRDSCkpKQogCQlyZXR1cm4gUlhfQ09OVElOVUU7CiAK
IAlpZiAoKHNkYXRhLT52aWYudHlwZSAhPSBOTDgwMjExX0lGVFlQRV9BUCkgJiYKQEAgLTE1NDgs
NiArMTU1Miw3IEBAIGllZWU4MDIxMV9kZWxpdmVyX3NrYihzdHJ1Y3QgaWVlZTgwMjExX3IKIAlz
dHJ1Y3Qgc2tfYnVmZiAqc2tiLCAqeG1pdF9za2I7CiAJc3RydWN0IGV0aGhkciAqZWhkciA9IChz
dHJ1Y3QgZXRoaGRyICopIHJ4LT5za2ItPmRhdGE7CiAJc3RydWN0IHN0YV9pbmZvICpkc3RhOwor
CXN0cnVjdCBpZWVlODAyMTFfcnhfc3RhdHVzICpzdGF0dXMgPSBJRUVFODAyMTFfU0tCX1JYQ0Io
cngtPnNrYik7CiAKIAlza2IgPSByeC0+c2tiOwogCXhtaXRfc2tiID0gTlVMTDsKQEAgLTE1NTUs
NyArMTU2MCw3IEBAIGllZWU4MDIxMV9kZWxpdmVyX3NrYihzdHJ1Y3QgaWVlZTgwMjExX3IKIAlp
ZiAoKHNkYXRhLT52aWYudHlwZSA9PSBOTDgwMjExX0lGVFlQRV9BUCB8fAogCSAgICAgc2RhdGEt
PnZpZi50eXBlID09IE5MODAyMTFfSUZUWVBFX0FQX1ZMQU4pICYmCiAJICAgICEoc2RhdGEtPmZs
YWdzICYgSUVFRTgwMjExX1NEQVRBX0RPTlRfQlJJREdFX1BBQ0tFVFMpICYmCi0JICAgIChyeC0+
ZmxhZ3MgJiBJRUVFODAyMTFfUlhfUkFfTUFUQ0gpICYmCisJICAgIChzdGF0dXMtPnJ4X2ZsYWdz
ICYgSUVFRTgwMjExX1JYX1JBX01BVENIKSAmJgogCSAgICAoc2RhdGEtPnZpZi50eXBlICE9IE5M
ODAyMTFfSUZUWVBFX0FQX1ZMQU4gfHwgIXNkYXRhLT51LnZsYW4uc3RhKSkgewogCQlpZiAoaXNf
bXVsdGljYXN0X2V0aGVyX2FkZHIoZWhkci0+aF9kZXN0KSkgewogCQkJLyoKQEAgLTE2MzIsNiAr
MTYzNyw3IEBAIGllZWU4MDIxMV9yeF9oX2Ftc2R1KHN0cnVjdCBpZWVlODAyMTFfcngKIAlzdHJ1
Y3QgaWVlZTgwMjExX2hkciAqaGRyID0gKHN0cnVjdCBpZWVlODAyMTFfaGRyICopc2tiLT5kYXRh
OwogCV9fbGUxNiBmYyA9IGhkci0+ZnJhbWVfY29udHJvbDsKIAlzdHJ1Y3Qgc2tfYnVmZl9oZWFk
IGZyYW1lX2xpc3Q7CisJc3RydWN0IGllZWU4MDIxMV9yeF9zdGF0dXMgKnN0YXR1cyA9IElFRUU4
MDIxMV9TS0JfUlhDQihyeC0+c2tiKTsKIAogCWlmICh1bmxpa2VseSghaWVlZTgwMjExX2lzX2Rh
dGEoZmMpKSkKIAkJcmV0dXJuIFJYX0NPTlRJTlVFOwpAQCAtMTYzOSw3ICsxNjQ1LDcgQEAgaWVl
ZTgwMjExX3J4X2hfYW1zZHUoc3RydWN0IGllZWU4MDIxMV9yeAogCWlmICh1bmxpa2VseSghaWVl
ZTgwMjExX2lzX2RhdGFfcHJlc2VudChmYykpKQogCQlyZXR1cm4gUlhfRFJPUF9NT05JVE9SOwog
Ci0JaWYgKCEocngtPmZsYWdzICYgSUVFRTgwMjExX1JYX0FNU0RVKSkKKwlpZiAoIShzdGF0dXMt
PnJ4X2ZsYWdzICYgSUVFRTgwMjExX1JYX0FNU0RVKSkKIAkJcmV0dXJuIFJYX0NPTlRJTlVFOwog
CiAJaWYgKGllZWU4MDIxMV9oYXNfYTQoaGRyLT5mcmFtZV9jb250cm9sKSAmJgpAQCAtMTY5MCw2
ICsxNjk2LDcgQEAgaWVlZTgwMjExX3J4X2hfbWVzaF9md2Rpbmcoc3RydWN0IGllZWU4MAogCXN0
cnVjdCBza19idWZmICpza2IgPSByeC0+c2tiLCAqZndkX3NrYjsKIAlzdHJ1Y3QgaWVlZTgwMjEx
X2xvY2FsICpsb2NhbCA9IHJ4LT5sb2NhbDsKIAlzdHJ1Y3QgaWVlZTgwMjExX3N1Yl9pZl9kYXRh
ICpzZGF0YSA9IHJ4LT5zZGF0YTsKKwlzdHJ1Y3QgaWVlZTgwMjExX3J4X3N0YXR1cyAqc3RhdHVz
ID0gSUVFRTgwMjExX1NLQl9SWENCKHNrYik7CiAKIAloZHIgPSAoc3RydWN0IGllZWU4MDIxMV9o
ZHIgKikgc2tiLT5kYXRhOwogCWhkcmxlbiA9IGllZWU4MDIxMV9oZHJsZW4oaGRyLT5mcmFtZV9j
b250cm9sKTsKQEAgLTE3MzUsNyArMTc0Miw3IEBAIGllZWU4MDIxMV9yeF9oX21lc2hfZndkaW5n
KHN0cnVjdCBpZWVlODAKIAogCW1lc2hfaGRyLT50dGwtLTsKIAotCWlmIChyeC0+ZmxhZ3MgJiBJ
RUVFODAyMTFfUlhfUkFfTUFUQ0gpIHsKKwlpZiAoc3RhdHVzLT5yeF9mbGFncyAmIElFRUU4MDIx
MV9SWF9SQV9NQVRDSCkgewogCQlpZiAoIW1lc2hfaGRyLT50dGwpCiAJCQlJRUVFODAyMTFfSUZT
VEFfTUVTSF9DVFJfSU5DKCZyeC0+c2RhdGEtPnUubWVzaCwKIAkJCQkJCSAgICAgZHJvcHBlZF9m
cmFtZXNfdHRsKTsKQEAgLTE5NDUsNiArMTk1Miw3IEBAIHN0YXRpYyBpZWVlODAyMTFfcnhfcmVz
dWx0IGRlYnVnX25vaW5saW4KIGllZWU4MDIxMV9yeF9oX21nbXRfY2hlY2soc3RydWN0IGllZWU4
MDIxMV9yeF9kYXRhICpyeCkKIHsKIAlzdHJ1Y3QgaWVlZTgwMjExX21nbXQgKm1nbXQgPSAoc3Ry
dWN0IGllZWU4MDIxMV9tZ210ICopIHJ4LT5za2ItPmRhdGE7CisJc3RydWN0IGllZWU4MDIxMV9y
eF9zdGF0dXMgKnN0YXR1cyA9IElFRUU4MDIxMV9TS0JfUlhDQihyeC0+c2tiKTsKIAogCS8qCiAJ
ICogRnJvbSBoZXJlIG9uLCBsb29rIG9ubHkgYXQgbWFuYWdlbWVudCBmcmFtZXMuCkBAIC0xOTU3
LDcgKzE5NjUsNyBAQCBpZWVlODAyMTFfcnhfaF9tZ210X2NoZWNrKHN0cnVjdCBpZWVlODAyCiAJ
aWYgKCFpZWVlODAyMTFfaXNfbWdtdChtZ210LT5mcmFtZV9jb250cm9sKSkKIAkJcmV0dXJuIFJY
X0RST1BfTU9OSVRPUjsKIAotCWlmICghKHJ4LT5mbGFncyAmIElFRUU4MDIxMV9SWF9SQV9NQVRD
SCkpCisJaWYgKCEoc3RhdHVzLT5yeF9mbGFncyAmIElFRUU4MDIxMV9SWF9SQV9NQVRDSCkpCiAJ
CXJldHVybiBSWF9EUk9QX01PTklUT1I7CiAKIAlpZiAoaWVlZTgwMjExX2Ryb3BfdW5lbmNyeXB0
ZWRfbWdtdChyeCkpCkBAIC0xOTcyLDYgKzE5ODAsNyBAQCBpZWVlODAyMTFfcnhfaF9hY3Rpb24o
c3RydWN0IGllZWU4MDIxMV9yCiAJc3RydWN0IGllZWU4MDIxMV9sb2NhbCAqbG9jYWwgPSByeC0+
bG9jYWw7CiAJc3RydWN0IGllZWU4MDIxMV9zdWJfaWZfZGF0YSAqc2RhdGEgPSByeC0+c2RhdGE7
CiAJc3RydWN0IGllZWU4MDIxMV9tZ210ICptZ210ID0gKHN0cnVjdCBpZWVlODAyMTFfbWdtdCAq
KSByeC0+c2tiLT5kYXRhOworCXN0cnVjdCBpZWVlODAyMTFfcnhfc3RhdHVzICpzdGF0dXMgPSBJ
RUVFODAyMTFfU0tCX1JYQ0IocngtPnNrYik7CiAJaW50IGxlbiA9IHJ4LT5za2ItPmxlbjsKIAog
CWlmICghaWVlZTgwMjExX2lzX2FjdGlvbihtZ210LT5mcmFtZV9jb250cm9sKSkKQEAgLTE5ODQs
NyArMTk5Myw3IEBAIGllZWU4MDIxMV9yeF9oX2FjdGlvbihzdHJ1Y3QgaWVlZTgwMjExX3IKIAlp
ZiAoIXJ4LT5zdGEgJiYgbWdtdC0+dS5hY3Rpb24uY2F0ZWdvcnkgIT0gV0xBTl9DQVRFR09SWV9Q
VUJMSUMpCiAJCXJldHVybiBSWF9EUk9QX1VOVVNBQkxFOwogCi0JaWYgKCEocngtPmZsYWdzICYg
SUVFRTgwMjExX1JYX1JBX01BVENIKSkKKwlpZiAoIShzdGF0dXMtPnJ4X2ZsYWdzICYgSUVFRTgw
MjExX1JYX1JBX01BVENIKSkKIAkJcmV0dXJuIFJYX0RST1BfVU5VU0FCTEU7CiAKIAlzd2l0Y2gg
KG1nbXQtPnUuYWN0aW9uLmNhdGVnb3J5KSB7CkBAIC0yMDgwLDcgKzIwODksNyBAQCBpZWVlODAy
MTFfcnhfaF9hY3Rpb24oc3RydWN0IGllZWU4MDIxMV9yCiAJcmV0dXJuIFJYX0NPTlRJTlVFOwog
CiAgaW52YWxpZDoKLQlyeC0+ZmxhZ3MgfD0gSUVFRTgwMjExX01BTEZPUk1FRF9BQ1RJT05fRlJN
OworCXN0YXR1cy0+cnhfZmxhZ3MgfD0gSUVFRTgwMjExX1JYX01BTEZPUk1FRF9BQ1RJT05fRlJN
OwogCS8qIHdpbGwgcmV0dXJuIGluIHRoZSBuZXh0IGhhbmRsZXJzICovCiAJcmV0dXJuIFJYX0NP
TlRJTlVFOwogCkBAIC0yMTAyLDEwICsyMTExLDEwIEBAIGllZWU4MDIxMV9yeF9oX2FjdGlvbihz
dHJ1Y3QgaWVlZTgwMjExX3IKIHN0YXRpYyBpZWVlODAyMTFfcnhfcmVzdWx0IGRlYnVnX25vaW5s
aW5lCiBpZWVlODAyMTFfcnhfaF91c2Vyc3BhY2VfbWdtdChzdHJ1Y3QgaWVlZTgwMjExX3J4X2Rh
dGEgKnJ4KQogewotCXN0cnVjdCBpZWVlODAyMTFfcnhfc3RhdHVzICpzdGF0dXM7CisJc3RydWN0
IGllZWU4MDIxMV9yeF9zdGF0dXMgKnN0YXR1cyA9IElFRUU4MDIxMV9TS0JfUlhDQihyeC0+c2ti
KTsKIAogCS8qIHNraXAga25vd24tYmFkIGFjdGlvbiBmcmFtZXMgYW5kIHJldHVybiB0aGVtIGlu
IHRoZSBuZXh0IGhhbmRsZXIgKi8KLQlpZiAocngtPmZsYWdzICYgSUVFRTgwMjExX01BTEZPUk1F
RF9BQ1RJT05fRlJNKQorCWlmIChzdGF0dXMtPnJ4X2ZsYWdzICYgSUVFRTgwMjExX1JYX01BTEZP
Uk1FRF9BQ1RJT05fRlJNKQogCQlyZXR1cm4gUlhfQ09OVElOVUU7CiAKIAkvKgpAQCAtMjExNCw3
ICsyMTIzLDYgQEAgaWVlZTgwMjExX3J4X2hfdXNlcnNwYWNlX21nbXQoc3RydWN0IGllZQogCSAq
IHNvIHVzZXJzcGFjZSBjYW4gcmVnaXN0ZXIgZm9yIHRob3NlIHRvIGtub3cgd2hldGhlciBvbmVz
CiAJICogaXQgdHJhbnNtaXR0ZWQgd2VyZSBwcm9jZXNzZWQgb3IgcmV0dXJuZWQuCiAJICovCi0J
c3RhdHVzID0gSUVFRTgwMjExX1NLQl9SWENCKHJ4LT5za2IpOwogCiAJaWYgKGNmZzgwMjExX3J4
X21nbXQocngtPnNkYXRhLT5kZXYsIHN0YXR1cy0+ZnJlcSwKIAkJCSAgICAgcngtPnNrYi0+ZGF0
YSwgcngtPnNrYi0+bGVuLApAQCAtMjEzNiw2ICsyMTQ0LDcgQEAgaWVlZTgwMjExX3J4X2hfYWN0
aW9uX3JldHVybihzdHJ1Y3QgaWVlZQogCXN0cnVjdCBpZWVlODAyMTFfbWdtdCAqbWdtdCA9IChz
dHJ1Y3QgaWVlZTgwMjExX21nbXQgKikgcngtPnNrYi0+ZGF0YTsKIAlzdHJ1Y3Qgc2tfYnVmZiAq
bnNrYjsKIAlzdHJ1Y3QgaWVlZTgwMjExX3N1Yl9pZl9kYXRhICpzZGF0YSA9IHJ4LT5zZGF0YTsK
KwlzdHJ1Y3QgaWVlZTgwMjExX3J4X3N0YXR1cyAqc3RhdHVzID0gSUVFRTgwMjExX1NLQl9SWENC
KHJ4LT5za2IpOwogCiAJaWYgKCFpZWVlODAyMTFfaXNfYWN0aW9uKG1nbXQtPmZyYW1lX2NvbnRy
b2wpKQogCQlyZXR1cm4gUlhfQ09OVElOVUU7CkBAIC0yMTUwLDcgKzIxNTksNyBAQCBpZWVlODAy
MTFfcnhfaF9hY3Rpb25fcmV0dXJuKHN0cnVjdCBpZWVlCiAJICogcmVnaXN0cmF0aW9uIG1lY2hh
bmlzbXMsIGJ1dCBvbGRlciBvbmVzIHN0aWxsIHVzZSBjb29rZWQKIAkgKiBtb25pdG9yIGludGVy
ZmFjZXMgc28gcHVzaCBhbGwgZnJhbWVzIHRoZXJlLgogCSAqLwotCWlmICghKHJ4LT5mbGFncyAm
IElFRUU4MDIxMV9NQUxGT1JNRURfQUNUSU9OX0ZSTSkgJiYKKwlpZiAoIShzdGF0dXMtPnJ4X2Zs
YWdzICYgSUVFRTgwMjExX1JYX01BTEZPUk1FRF9BQ1RJT05fRlJNKSAmJgogCSAgICAoc2RhdGEt
PnZpZi50eXBlID09IE5MODAyMTFfSUZUWVBFX0FQIHx8CiAJICAgICBzZGF0YS0+dmlmLnR5cGUg
PT0gTkw4MDIxMV9JRlRZUEVfQVBfVkxBTikpCiAJCXJldHVybiBSWF9EUk9QX01PTklUT1I7CkBA
IC0yMjg0LDggKzIyOTMsMTMgQEAgc3RhdGljIHZvaWQgaWVlZTgwMjExX3J4X2Nvb2tlZF9tb25p
dG9yKAogCXN0cnVjdCBuZXRfZGV2aWNlICpwcmV2X2RldiA9IE5VTEw7CiAJc3RydWN0IGllZWU4
MDIxMV9yeF9zdGF0dXMgKnN0YXR1cyA9IElFRUU4MDIxMV9TS0JfUlhDQihza2IpOwogCi0JaWYg
KHN0YXR1cy0+ZmxhZyAmIFJYX0ZMQUdfSU5URVJOQUxfQ01UUikKKwkvKgorCSAqIElmIGNvb2tl
ZCBtb25pdG9yIGhhcyBiZWVuIHByb2Nlc3NlZCBhbHJlYWR5LCB0aGVuCisJICogZG9uJ3QgZG8g
aXQgYWdhaW4uIElmIG5vdCwgc2V0IHRoZSBmbGFnLgorCSAqLworCWlmIChyeC0+ZmxhZ3MgJiBJ
RUVFODAyMTFfUlhfQ01OVFIpCiAJCWdvdG8gb3V0X2ZyZWVfc2tiOworCXJ4LT5mbGFncyB8PSBJ
RUVFODAyMTFfUlhfQ01OVFI7CiAKIAlpZiAoc2tiX2hlYWRyb29tKHNrYikgPCBzaXplb2YoKnJ0
aGRyKSAmJgogCSAgICBwc2tiX2V4cGFuZF9oZWFkKHNrYiwgc2l6ZW9mKCpydGhkciksIDAsIEdG
UF9BVE9NSUMpKQpAQCAtMjM0MSwxMiArMjM1NSw4IEBAIHN0YXRpYyB2b2lkIGllZWU4MDIxMV9y
eF9jb29rZWRfbW9uaXRvcigKIAlpZiAocHJldl9kZXYpIHsKIAkJc2tiLT5kZXYgPSBwcmV2X2Rl
djsKIAkJbmV0aWZfcmVjZWl2ZV9za2Ioc2tiKTsKLQkJc2tiID0gTlVMTDsKLQl9IGVsc2UKLQkJ
Z290byBvdXRfZnJlZV9za2I7Ci0KLQlzdGF0dXMtPmZsYWcgfD0gUlhfRkxBR19JTlRFUk5BTF9D
TVRSOwotCXJldHVybjsKKwkJcmV0dXJuOworCX0KIAogIG91dF9mcmVlX3NrYjoKIAlkZXZfa2Zy
ZWVfc2tiKHNrYik7CkBAIC0yNDA3LDYgKzI0MTcsNyBAQCBzdGF0aWMgdm9pZCBpZWVlODAyMTFf
cnhfaGFuZGxlcnMoc3RydWN0CiAJCSAqIHNhbWUgVElEIGZyb20gdGhlIHNhbWUgc3RhdGlvbgog
CQkgKi8KIAkJcngtPnNrYiA9IHNrYjsKKwkJcngtPmZsYWdzID0gMDsKIAogCQlDQUxMX1JYSChp
ZWVlODAyMTFfcnhfaF9kZWNyeXB0KQogCQlDQUxMX1JYSChpZWVlODAyMTFfcnhfaF9jaGVja19t
b3JlX2RhdGEpCkBAIC0yNDc3LDcgKzI0ODgsMTIgQEAgc3RhdGljIHZvaWQgaWVlZTgwMjExX2lu
dm9rZV9yeF9oYW5kbGVycwogdm9pZCBpZWVlODAyMTFfcmVsZWFzZV9yZW9yZGVyX3RpbWVvdXQo
c3RydWN0IHN0YV9pbmZvICpzdGEsIGludCB0aWQpCiB7CiAJc3RydWN0IHNrX2J1ZmZfaGVhZCBm
cmFtZXM7Ci0Jc3RydWN0IGllZWU4MDIxMV9yeF9kYXRhIHJ4ID0geyB9OworCXN0cnVjdCBpZWVl
ODAyMTFfcnhfZGF0YSByeCA9IHsKKwkJLnN0YSA9IHN0YSwKKwkJLnNkYXRhID0gc3RhLT5zZGF0
YSwKKwkJLmxvY2FsID0gc3RhLT5sb2NhbCwKKwkJLnF1ZXVlID0gdGlkLAorCX07CiAJc3RydWN0
IHRpZF9hbXBkdV9yeCAqdGlkX2FnZ19yeDsKIAogCXRpZF9hZ2dfcnggPSByY3VfZGVyZWZlcmVu
Y2Uoc3RhLT5hbXBkdV9tbG1lLnRpZF9yeFt0aWRdKTsKQEAgLTI0ODYsMTMgKzI1MDIsNiBAQCB2
b2lkIGllZWU4MDIxMV9yZWxlYXNlX3Jlb3JkZXJfdGltZW91dChzCiAKIAlfX3NrYl9xdWV1ZV9o
ZWFkX2luaXQoJmZyYW1lcyk7CiAKLQkvKiBjb25zdHJ1Y3Qgcnggc3RydWN0ICovCi0Jcnguc3Rh
ID0gc3RhOwotCXJ4LnNkYXRhID0gc3RhLT5zZGF0YTsKLQlyeC5sb2NhbCA9IHN0YS0+bG9jYWw7
Ci0JcngucXVldWUgPSB0aWQ7Ci0JcnguZmxhZ3MgfD0gSUVFRTgwMjExX1JYX1JBX01BVENIOwot
CiAJc3Bpbl9sb2NrKCZ0aWRfYWdnX3J4LT5yZW9yZGVyX2xvY2spOwogCWllZWU4MDIxMV9zdGFf
cmVvcmRlcl9yZWxlYXNlKCZzdGEtPmxvY2FsLT5odywgdGlkX2FnZ19yeCwgJmZyYW1lcyk7CiAJ
c3Bpbl91bmxvY2soJnRpZF9hZ2dfcngtPnJlb3JkZXJfbG9jayk7CkBAIC0yNTE5LDcgKzI1Mjgs
NyBAQCBzdGF0aWMgaW50IHByZXBhcmVfZm9yX2hhbmRsZXJzKHN0cnVjdCBpCiAJCSAgICBjb21w
YXJlX2V0aGVyX2FkZHIoc2RhdGEtPnZpZi5hZGRyLCBoZHItPmFkZHIxKSAhPSAwKSB7CiAJCQlp
ZiAoIShzZGF0YS0+ZGV2LT5mbGFncyAmIElGRl9QUk9NSVNDKSkKIAkJCQlyZXR1cm4gMDsKLQkJ
CXJ4LT5mbGFncyAmPSB+SUVFRTgwMjExX1JYX1JBX01BVENIOworCQkJc3RhdHVzLT5yeF9mbGFn
cyAmPSB+SUVFRTgwMjExX1JYX1JBX01BVENIOwogCQl9CiAJCWJyZWFrOwogCWNhc2UgTkw4MDIx
MV9JRlRZUEVfQURIT0M6CkBAIC0yNTI5LDE1ICsyNTM4LDE1IEBAIHN0YXRpYyBpbnQgcHJlcGFy
ZV9mb3JfaGFuZGxlcnMoc3RydWN0IGkKIAkJCXJldHVybiAxOwogCQl9CiAJCWVsc2UgaWYgKCFp
ZWVlODAyMTFfYnNzaWRfbWF0Y2goYnNzaWQsIHNkYXRhLT51Lmlic3MuYnNzaWQpKSB7Ci0JCQlp
ZiAoIShyeC0+ZmxhZ3MgJiBJRUVFODAyMTFfUlhfSU5fU0NBTikpCisJCQlpZiAoIShzdGF0dXMt
PnJ4X2ZsYWdzICYgSUVFRTgwMjExX1JYX0lOX1NDQU4pKQogCQkJCXJldHVybiAwOwotCQkJcngt
PmZsYWdzICY9IH5JRUVFODAyMTFfUlhfUkFfTUFUQ0g7CisJCQlzdGF0dXMtPnJ4X2ZsYWdzICY9
IH5JRUVFODAyMTFfUlhfUkFfTUFUQ0g7CiAJCX0gZWxzZSBpZiAoIW11bHRpY2FzdCAmJgogCQkJ
ICAgY29tcGFyZV9ldGhlcl9hZGRyKHNkYXRhLT52aWYuYWRkciwKIAkJCQkJICAgICAgaGRyLT5h
ZGRyMSkgIT0gMCkgewogCQkJaWYgKCEoc2RhdGEtPmRldi0+ZmxhZ3MgJiBJRkZfUFJPTUlTQykp
CiAJCQkJcmV0dXJuIDA7Ci0JCQlyeC0+ZmxhZ3MgJj0gfklFRUU4MDIxMV9SWF9SQV9NQVRDSDsK
KwkJCXN0YXR1cy0+cnhfZmxhZ3MgJj0gfklFRUU4MDIxMV9SWF9SQV9NQVRDSDsKIAkJfSBlbHNl
IGlmICghcngtPnN0YSkgewogCQkJaW50IHJhdGVfaWR4OwogCQkJaWYgKHN0YXR1cy0+ZmxhZyAm
IFJYX0ZMQUdfSFQpCkBAIC0yNTU1LDcgKzI1NjQsNyBAQCBzdGF0aWMgaW50IHByZXBhcmVfZm9y
X2hhbmRsZXJzKHN0cnVjdCBpCiAJCQlpZiAoIShzZGF0YS0+ZGV2LT5mbGFncyAmIElGRl9QUk9N
SVNDKSkKIAkJCQlyZXR1cm4gMDsKIAotCQkJcngtPmZsYWdzICY9IH5JRUVFODAyMTFfUlhfUkFf
TUFUQ0g7CisJCQlzdGF0dXMtPnJ4X2ZsYWdzICY9IH5JRUVFODAyMTFfUlhfUkFfTUFUQ0g7CiAJ
CX0KIAkJYnJlYWs7CiAJY2FzZSBOTDgwMjExX0lGVFlQRV9BUF9WTEFOOgpAQCAtMjU2Niw5ICsy
NTc1LDkgQEAgc3RhdGljIGludCBwcmVwYXJlX2Zvcl9oYW5kbGVycyhzdHJ1Y3QgaQogCQkJCXJl
dHVybiAwOwogCQl9IGVsc2UgaWYgKCFpZWVlODAyMTFfYnNzaWRfbWF0Y2goYnNzaWQsCiAJCQkJ
CXNkYXRhLT52aWYuYWRkcikpIHsKLQkJCWlmICghKHJ4LT5mbGFncyAmIElFRUU4MDIxMV9SWF9J
Tl9TQ0FOKSkKKwkJCWlmICghKHN0YXR1cy0+cnhfZmxhZ3MgJiBJRUVFODAyMTFfUlhfSU5fU0NB
TikpCiAJCQkJcmV0dXJuIDA7Ci0JCQlyeC0+ZmxhZ3MgJj0gfklFRUU4MDIxMV9SWF9SQV9NQVRD
SDsKKwkJCXN0YXR1cy0+cnhfZmxhZ3MgJj0gfklFRUU4MDIxMV9SWF9SQV9NQVRDSDsKIAkJfQog
CQlicmVhazsKIAljYXNlIE5MODAyMTFfSUZUWVBFX1dEUzoKQEAgLTI2MDIsMTQgKzI2MTEsMTQg
QEAgc3RhdGljIGJvb2wgaWVlZTgwMjExX3ByZXBhcmVfYW5kX3J4X2hhbgogCWludCBwcmVwYXJl
czsKIAogCXJ4LT5za2IgPSBza2I7Ci0JcngtPmZsYWdzIHw9IElFRUU4MDIxMV9SWF9SQV9NQVRD
SDsKKwlzdGF0dXMtPnJ4X2ZsYWdzIHw9IElFRUU4MDIxMV9SWF9SQV9NQVRDSDsKIAlwcmVwYXJl
cyA9IHByZXBhcmVfZm9yX2hhbmRsZXJzKHJ4LCBoZHIpOwogCiAJaWYgKCFwcmVwYXJlcykKIAkJ
cmV0dXJuIGZhbHNlOwogCiAJaWYgKHN0YXR1cy0+ZmxhZyAmIFJYX0ZMQUdfTU1JQ19FUlJPUikg
ewotCQlpZiAocngtPmZsYWdzICYgSUVFRTgwMjExX1JYX1JBX01BVENIKQorCQlpZiAoc3RhdHVz
LT5yeF9mbGFncyAmIElFRUU4MDIxMV9SWF9SQV9NQVRDSCkKIAkJCWllZWU4MDIxMV9yeF9taWNo
YWVsX21pY19yZXBvcnQoaGRyLCByeCk7CiAJCXJldHVybiBmYWxzZTsKIAl9CkBAIC0yNjM4LDYg
KzI2NDcsNyBAQCBzdGF0aWMgYm9vbCBpZWVlODAyMTFfcHJlcGFyZV9hbmRfcnhfaGFuCiBzdGF0
aWMgdm9pZCBfX2llZWU4MDIxMV9yeF9oYW5kbGVfcGFja2V0KHN0cnVjdCBpZWVlODAyMTFfaHcg
Kmh3LAogCQkJCQkgc3RydWN0IHNrX2J1ZmYgKnNrYikKIHsKKwlzdHJ1Y3QgaWVlZTgwMjExX3J4
X3N0YXR1cyAqc3RhdHVzID0gSUVFRTgwMjExX1NLQl9SWENCKHNrYik7CiAJc3RydWN0IGllZWU4
MDIxMV9sb2NhbCAqbG9jYWwgPSBod190b19sb2NhbChodyk7CiAJc3RydWN0IGllZWU4MDIxMV9z
dWJfaWZfZGF0YSAqc2RhdGE7CiAJc3RydWN0IGllZWU4MDIxMV9oZHIgKmhkcjsKQEAgLTI2NTcs
NyArMjY2Nyw3IEBAIHN0YXRpYyB2b2lkIF9faWVlZTgwMjExX3J4X2hhbmRsZV9wYWNrZXQKIAog
CWlmICh1bmxpa2VseSh0ZXN0X2JpdChTQ0FOX0hXX1NDQU5OSU5HLCAmbG9jYWwtPnNjYW5uaW5n
KSB8fAogCQkgICAgIHRlc3RfYml0KFNDQU5fT0ZGX0NIQU5ORUwsICZsb2NhbC0+c2Nhbm5pbmcp
KSkKLQkJcnguZmxhZ3MgfD0gSUVFRTgwMjExX1JYX0lOX1NDQU47CisJCXN0YXR1cy0+cnhfZmxh
Z3MgfD0gSUVFRTgwMjExX1JYX0lOX1NDQU47CiAKIAlpZiAoaWVlZTgwMjExX2lzX21nbXQoZmMp
KQogCQllcnIgPSBza2JfbGluZWFyaXplKHNrYik7CkBAIC0yODA4LDYgKzI4MTgsOCBAQCB2b2lk
IGllZWU4MDIxMV9yeChzdHJ1Y3QgaWVlZTgwMjExX2h3ICpoCiAJCX0KIAl9CiAKKwlzdGF0dXMt
PnJ4X2ZsYWdzID0gMDsKKwogCS8qCiAJICoga2V5IHJlZmVyZW5jZXMgYW5kIHZpcnR1YWwgaW50
ZXJmYWNlcyBhcmUgcHJvdGVjdGVkIHVzaW5nIFJDVQogCSAqIGFuZCB0aGlzIHJlcXVpcmVzIHRo
YXQgd2UgYXJlIGluIGEgcmVhZC1zaWRlIFJDVSBzZWN0aW9uIGR1cmluZwotLS0gd2lyZWxlc3Mt
dGVzdGluZy5vcmlnL25ldC9tYWM4MDIxMS9pZWVlODAyMTFfaS5oCTIwMTAtMDktMjQgMTI6Mzc6
MDUuMDAwMDAwMDAwICswMjAwCisrKyB3aXJlbGVzcy10ZXN0aW5nL25ldC9tYWM4MDIxMS9pZWVl
ODAyMTFfaS5oCTIwMTAtMDktMjQgMTI6Mzc6MjAuMDAwMDAwMDAwICswMjAwCkBAIC0xNTksMTMg
KzE1OSwzNyBAQCB0eXBlZGVmIHVuc2lnbmVkIF9fYml0d2lzZV9fIGllZWU4MDIxMV9yCiAjZGVm
aW5lIFJYX0RST1BfTU9OSVRPUgkJKChfX2ZvcmNlIGllZWU4MDIxMV9yeF9yZXN1bHQpIDJ1KQog
I2RlZmluZSBSWF9RVUVVRUQJCSgoX19mb3JjZSBpZWVlODAyMTFfcnhfcmVzdWx0KSAzdSkKIAot
I2RlZmluZSBJRUVFODAyMTFfUlhfSU5fU0NBTgkJQklUKDApCi0vKiBmcmFtZSBpcyBkZXN0aW5l
ZCB0byBpbnRlcmZhY2UgY3VycmVudGx5IHByb2Nlc3NlZCAoaW5jbC4gbXVsdGljYXN0IGZyYW1l
cykgKi8KLSNkZWZpbmUgSUVFRTgwMjExX1JYX1JBX01BVENICQlCSVQoMSkKLSNkZWZpbmUgSUVF
RTgwMjExX1JYX0FNU0RVCQlCSVQoMikKLSNkZWZpbmUgSUVFRTgwMjExX1JYX0ZSQUdNRU5URUQJ
CUJJVCgzKQotI2RlZmluZSBJRUVFODAyMTFfTUFMRk9STUVEX0FDVElPTl9GUk0JQklUKDQpCi0v
KiBvbmx5IGFkZCBmbGFncyBoZXJlIHRoYXQgZG8gbm90IGNoYW5nZSB3aXRoIHN1YmZyYW1lcyBv
ZiBhbiBhTVBEVSAqLworLyoqCisgKiBlbnVtIGllZWU4MDIxMV9wYWNrZXRfcnhfZmxhZ3MgLSBw
YWNrZXQgUlggZmxhZ3MKKyAqIEBJRUVFODAyMTFfUlhfUkFfTUFUQ0g6IGZyYW1lIGlzIGRlc3Rp
bmVkIHRvIGludGVyZmFjZSBjdXJyZW50bHkgcHJvY2Vzc2VkCisgKgkoaW5jbC4gbXVsdGljYXN0
IGZyYW1lcykKKyAqIEBJRUVFODAyMTFfUlhfSU5fU0NBTjogcmVjZWl2ZWQgd2hpbGUgc2Nhbm5p
bmcKKyAqIEBJRUVFODAyMTFfUlhfRlJBR01FTlRFRDogZnJhZ21lbnRlZCBmcmFtZQorICogQElF
RUU4MDIxMV9SWF9BTVNEVTogYS1NU0RVIHBhY2tldAorICogQElFRUU4MDIxMV9SWF9NQUxGT1JN
RURfQUNUSU9OX0ZSTTogYWN0aW9uIGZyYW1lIGlzIG1hbGZvcm1lZAorICoKKyAqIFRoZXNlIGFy
ZSBwZXItZnJhbWUgZmxhZ3MgdGhhdCBhcmUgYXR0YWNoZWQgdG8gYSBmcmFtZSBpbiB0aGUKKyAq
IEByeF9mbGFncyBmaWVsZCBvZiAmc3RydWN0IGllZWU4MDIxMV9yeF9zdGF0dXMuCisgKi8KK2Vu
dW0gaWVlZTgwMjExX3BhY2tldF9yeF9mbGFncyB7CisJSUVFRTgwMjExX1JYX0lOX1NDQU4JCQk9
IEJJVCgwKSwKKwlJRUVFODAyMTFfUlhfUkFfTUFUQ0gJCQk9IEJJVCgxKSwKKwlJRUVFODAyMTFf
UlhfRlJBR01FTlRFRAkJCT0gQklUKDIpLAorCUlFRUU4MDIxMV9SWF9BTVNEVQkJCT0gQklUKDMp
LAorCUlFRUU4MDIxMV9SWF9NQUxGT1JNRURfQUNUSU9OX0ZSTQk9IEJJVCg0KSwKK307CisKKy8q
KgorICogZW51bSBpZWVlODAyMTFfcnhfZmxhZ3MgLSBSWCBkYXRhIGZsYWdzCisgKgorICogQElF
RUU4MDIxMV9SWF9DTU5UUjogcmVjZWl2ZWQgb24gY29va2VkIG1vbml0b3IgYWxyZWFkeQorICoK
KyAqIFRoZXNlIGZsYWdzIGFyZSB1c2VkIGFjcm9zcyBoYW5kbGluZyBtdWx0aXBsZSBpbnRlcmZh
Y2VzCisgKiBmb3IgYSBzaW5nbGUgZnJhbWUuCisgKi8KK2VudW0gaWVlZTgwMjExX3J4X2ZsYWdz
IHsKKwlJRUVFODAyMTFfUlhfQ01OVFIJCT0gQklUKDApLAorfTsKIAogc3RydWN0IGllZWU4MDIx
MV9yeF9kYXRhIHsKIAlzdHJ1Y3Qgc2tfYnVmZiAqc2tiOwotLS0gd2lyZWxlc3MtdGVzdGluZy5v
cmlnL2luY2x1ZGUvbmV0L21hYzgwMjExLmgJMjAxMC0wOS0yNCAxMjozNzowNS4wMDAwMDAwMDAg
KzAyMDAKKysrIHdpcmVsZXNzLXRlc3RpbmcvaW5jbHVkZS9uZXQvbWFjODAyMTEuaAkyMDEwLTA5
LTI0IDEyOjM3OjIwLjAwMDAwMDAwMCArMDIwMApAQCAtNTY1LDkgKzU2NSw2IEBAIGllZWU4MDIx
MV90eF9pbmZvX2NsZWFyX3N0YXR1cyhzdHJ1Y3QgaWUKICAqIEBSWF9GTEFHX0hUOiBIVCBNQ1Mg
d2FzIHVzZWQgYW5kIHJhdGVfaWR4IGlzIE1DUyBpbmRleAogICogQFJYX0ZMQUdfNDBNSFo6IEhU
NDAgKDQwIE1Ieikgd2FzIHVzZWQKICAqIEBSWF9GTEFHX1NIT1JUX0dJOiBTaG9ydCBndWFyZCBp
bnRlcnZhbCB3YXMgdXNlZAotICogQFJYX0ZMQUdfSU5URVJOQUxfQ01UUjogc2V0IGludGVybmFs
bHkgYWZ0ZXIgZnJhbWUgd2FzIHJlcG9ydGVkCi0gKglvbiBjb29rZWQgbW9uaXRvciB0byBhdm9p
ZCBkb3VibGUtcmVwb3J0aW5nIGl0IGZvciBtdWx0aXBsZQotICoJdmlydHVhbCBpbnRlcmZhY2Vz
CiAgKi8KIGVudW0gbWFjODAyMTFfcnhfZmxhZ3MgewogCVJYX0ZMQUdfTU1JQ19FUlJPUgk9IDE8
PDAsCkBAIC01ODEsNyArNTc4LDYgQEAgZW51bSBtYWM4MDIxMV9yeF9mbGFncyB7CiAJUlhfRkxB
R19IVAkJPSAxPDw5LAogCVJYX0ZMQUdfNDBNSFoJCT0gMTw8MTAsCiAJUlhfRkxBR19TSE9SVF9H
SQk9IDE8PDExLAotCVJYX0ZMQUdfSU5URVJOQUxfQ01UUgk9IDE8PDEyLAogfTsKIAogLyoqCkBA
IC02MDIsNiArNTk4LDcgQEAgZW51bSBtYWM4MDIxMV9yeF9mbGFncyB7CiAgKiBAcmF0ZV9pZHg6
IGluZGV4IG9mIGRhdGEgcmF0ZSBpbnRvIGJhbmQncyBzdXBwb3J0ZWQgcmF0ZXMgb3IgTUNTIGlu
ZGV4IGlmCiAgKglIVCByYXRlcyBhcmUgdXNlIChSWF9GTEFHX0hUKQogICogQGZsYWc6ICVSWF9G
TEFHXyoKKyAqIEByeF9mbGFnczogaW50ZXJuYWwgUlggZmxhZ3MgZm9yIG1hYzgwMjExCiAgKi8K
IHN0cnVjdCBpZWVlODAyMTFfcnhfc3RhdHVzIHsKIAl1NjQgbWFjdGltZTsKQEAgLTYxMSw2ICs2
MDgsNyBAQCBzdHJ1Y3QgaWVlZTgwMjExX3J4X3N0YXR1cyB7CiAJaW50IGFudGVubmE7CiAJaW50
IHJhdGVfaWR4OwogCWludCBmbGFnOworCXVuc2lnbmVkIGludCByeF9mbGFnczsKIH07CiAKIC8q
KgotLS0gd2lyZWxlc3MtdGVzdGluZy5vcmlnL25ldC9tYWM4MDIxMS93cGEuYwkyMDEwLTA5LTI0
IDEyOjM3OjA1LjAwMDAwMDAwMCArMDIwMAorKysgd2lyZWxlc3MtdGVzdGluZy9uZXQvbWFjODAy
MTEvd3BhLmMJMjAxMC0wOS0yNCAxMjozNzoyMC4wMDAwMDAwMDAgKzAyMDAKQEAgLTExNyw3ICsx
MTcsNyBAQCBpZWVlODAyMTFfcnhfaF9taWNoYWVsX21pY192ZXJpZnkoc3RydWN0CiAJa2V5ID0g
JnJ4LT5rZXktPmNvbmYua2V5W2tleV9vZmZzZXRdOwogCW1pY2hhZWxfbWljKGtleSwgaGRyLCBk
YXRhLCBkYXRhX2xlbiwgbWljKTsKIAlpZiAobWVtY21wKG1pYywgZGF0YSArIGRhdGFfbGVuLCBN
SUNIQUVMX01JQ19MRU4pICE9IDAgfHwgd3BhX3Rlc3QpIHsKLQkJaWYgKCEocngtPmZsYWdzICYg
SUVFRTgwMjExX1JYX1JBX01BVENIKSkKKwkJaWYgKCEoc3RhdHVzLT5yeF9mbGFncyAmIElFRUU4
MDIxMV9SWF9SQV9NQVRDSCkpCiAJCQlyZXR1cm4gUlhfRFJPUF9VTlVTQUJMRTsKIAogCQltYWM4
MDIxMV9ldl9taWNoYWVsX21pY19mYWlsdXJlKHJ4LT5zZGF0YSwgcngtPmtleS0+Y29uZi5rZXlp
ZHgsCgoKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KSW50ZWwgR21iSApEb3JuYWNoZXIg
U3RyYXNzZSAxCjg1NjIyIEZlbGRraXJjaGVuL011ZW5jaGVuLCBEZXV0c2NobGFuZCAKU2l0eiBk
ZXIgR2VzZWxsc2NoYWZ0OiBGZWxka2lyY2hlbiBiZWkgTXVlbmNoZW4KR2VzY2hhZWZ0c2Z1ZWhy
ZXI6IERvdWdsYXMgTHVzaywgUGV0ZXIgR2xlaXNzbmVyLCBIYW5uZXMgU2Nod2FkZXJlcgpSZWdp
c3RlcmdlcmljaHQ6IE11ZW5jaGVuIEhSQiA0NzQ1NiAKVXN0Li1JZE5yLi9WQVQgUmVnaXN0cmF0
aW9uIE5vLjogREUxMjkzODU4OTUKQ2l0aWJhbmsgRnJhbmtmdXJ0IGEuTS4gKEJMWiA1MDIgMTA5
IDAwKSA2MDAxMTkwNTIK


      reply	other threads:[~2010-09-24 10:38 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-24  9:21 [PATCH 0/5] mac80211 cleanups & fixes Johannes Berg
2010-09-24  9:21 ` [PATCH 1/5] mac80211: remove prepare_for_handlers sdata argument Johannes Berg
2010-09-24  9:21 ` [PATCH 2/5] mac80211: consolidate packet processing Johannes Berg
2010-09-24  9:21 ` [PATCH 3/5] mac80211: clean up rx handling wrt. found_sta Johannes Berg
2010-09-24  9:21 ` [PATCH 4/5] mac80211: fix release_reorder_timeout in scan Johannes Berg
2010-09-24  9:21 ` [PATCH 5/5] mac80211: move packet flags into packet Johannes Berg
2010-09-24 10:38   ` Johannes Berg [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1285324705.3699.10.camel@jlt3.sipsolutions.net \
    --to=johannes.berg@intel.com \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).