Date: Tue, 15 Dec 2015 15:37:24 +0000 From: "rpokala (Ravi Pokala)" <phabric-noreply@FreeBSD.org> To: freebsd-net@freebsd.org Subject: [Differential] [Updated, 203 lines] D1986: Teach lagg(4) to change MTU Message-ID: <7201bd5d6eef08f9d7dd90d39c21fe10@localhost.localdomain> In-Reply-To: <differential-rev-PHID-DREV-i34kfg4qpajia7fo5u5l-req@FreeBSD.org> References: <differential-rev-PHID-DREV-i34kfg4qpajia7fo5u5l-req@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--b1_7201bd5d6eef08f9d7dd90d39c21fe10 Content-Type: text/plain; charset = "utf-8" Content-Transfer-Encoding: 8bit rpokala updated this revision to Diff 11321. rpokala added a comment. Updated patch from LN, addressing comments from hrs@, melifaro@, and internal Panasas review. REPOSITORY rS FreeBSD src repository CHANGES SINCE LAST UPDATE https://reviews.freebsd.org/D1986?vs=4079&id=11321 BRANCH /head REVISION DETAIL https://reviews.freebsd.org/D1986 AFFECTED FILES sys/net/if_lagg.c sys/net/if_lagg.h EMAIL PREFERENCES https://reviews.freebsd.org/settings/panel/emailpreferences/ To: rpokala, rstone, rpokala-panasas.com Cc: imp, melifaro, hrs, sbruno, lakshmi.n_msystechnologies.com, emaste, ae, freebsd-net-list --b1_7201bd5d6eef08f9d7dd90d39c21fe10 Content-Type: text/x-patch; charset=utf-8; name="D1986.11321.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="D1986.11321.patch" ZGlmZiAtLWdpdCBhL3N5cy9uZXQvaWZfbGFnZy5oIGIvc3lzL25ldC9pZl9sYWdnLmgKLS0tIGEv c3lzL25ldC9pZl9sYWdnLmgKKysrIGIvc3lzL25ldC9pZl9sYWdnLmgKQEAgLTIwOCw5ICsyMDgs MTkgQEAKIAogLyogTGlzdCBvZiBpbnRlcmZhY2VzIHRvIGhhdmUgdGhlIE1BQyBhZGRyZXNzIG1v ZGlmaWVkICovCiBzdHJ1Y3QgbGFnZ19sbHEgeworCiAJc3RydWN0IGlmbmV0CQkqbGxxX2lmcDsK IAl1aW50OF90CQkJbGxxX2xsYWRkcltFVEhFUl9BRERSX0xFTl07CiAJbGFnZ19sbHF0eXBlCQls bHFfdHlwZTsKKworI2RlZmluZSBMQUdHX0FTWU5DX1NFVF9NQUNfQUREUgkweDAwMDEKKyNkZWZp bmUgTEFHR19BU1lOQ19TRVRfTVRVCTB4MDAwMgorI2RlZmluZSBMQUdHX0FTWU5DX1NFVF9NQVNL CShMQUdHX0FTWU5DX1NFVF9NQUNfQUREUiB8IExBR0dfQVNZTkNfU0VUX01UVSkKKworCXVpbnQx Nl90CQlmbGFnczsKKwlzdHJ1Y3QgaWZyZXEJCSppZnI7IC8qIENvbW1vbiB0byBhbGwgbGFnZyBt ZW1iZXIgcG9ydHMgKi8KKwl1aW50MzJfdAkJb2xkX210dTsKKwlpbnQJCQkoKmxscV9pb2N0bCko c3RydWN0IGlmbmV0ICosIHVfbG9uZywgY2FkZHJfdCk7CiAJU0xJU1RfRU5UUlkobGFnZ19sbHEp CWxscV9lbnRyaWVzOwogfTsKIApAQCAtMjM1LDkgKzI0NSw5IEBACiAJU0xJU1RfSEVBRChfX3Rw bGhkLCBsYWdnX3BvcnQpCXNjX3BvcnRzOwkvKiBsaXN0IG9mIGludGVyZmFjZXMgKi8KIAlTTElT VF9FTlRSWShsYWdnX3NvZnRjKQlzY19lbnRyaWVzOwogCi0Jc3RydWN0IHRhc2sJCQlzY19sbGFk ZHJfdGFzazsKKwlzdHJ1Y3QgdGFzawkJCXNjX2xscV90YXNrOyAvKiBBU1lOQyBvcHMgZW5xdWV1 ZWQgaGVyZSAqLwogCVNMSVNUX0hFQUQoX19sbHFoZCwgbGFnZ19sbHEpCXNjX2xscV9oZWFkOwkv KiBpbnRlcmZhY2VzIHRvIHByb2dyYW0KLQkJCQkJCQkgICB0aGUgbGxhZGRyIG9uICovCisJCQkJ CQkJICAgdGhlIE1BQywgbGxhZGRyIG9uICovCiAJZXZlbnRoYW5kbGVyX3RhZyB2bGFuX2F0dGFj aDsKIAlldmVudGhhbmRsZXJfdGFnIHZsYW5fZGV0YWNoOwogCXN0cnVjdCBjYWxsb3V0CQkJc2Nf Y2FsbG91dDsKZGlmZiAtLWdpdCBhL3N5cy9uZXQvaWZfbGFnZy5jIGIvc3lzL25ldC9pZl9sYWdn LmMKLS0tIGEvc3lzL25ldC9pZl9sYWdnLmMKKysrIGIvc3lzL25ldC9pZl9sYWdnLmMKQEAgLTEw MSw3ICsxMDEsOSBAQAogc3RhdGljIHZvaWQJbGFnZ19sbGFkZHIoc3RydWN0IGxhZ2dfc29mdGMg KiwgdWludDhfdCAqKTsKIHN0YXRpYyB2b2lkCWxhZ2dfY2FwYWJpbGl0aWVzKHN0cnVjdCBsYWdn X3NvZnRjICopOwogc3RhdGljIHZvaWQJbGFnZ19wb3J0X2xsYWRkcihzdHJ1Y3QgbGFnZ19wb3J0 ICosIHVpbnQ4X3QgKiwgbGFnZ19sbHF0eXBlKTsKLXN0YXRpYyB2b2lkCWxhZ2dfcG9ydF9zZXRs bGFkZHIodm9pZCAqLCBpbnQpOworc3RhdGljIHZvaWQJbGFnZ19wb3J0X29wcyh2b2lkICosIGlu dCk7CitzdGF0aWMgdm9pZAlsYWdnX3BvcnRfc2V0X210dShzdHJ1Y3QgbGFnZ19zb2Z0YyAqLCBz dHJ1Y3QgbGFnZ19sbHEgKik7CitzdGF0aWMgdm9pZAlsYWdnX3BvcnRfc2V0bGxhZGRyKHN0cnVj dCBsYWdnX2xscSAqKTsKIHN0YXRpYyBpbnQJbGFnZ19wb3J0X2NyZWF0ZShzdHJ1Y3QgbGFnZ19z b2Z0YyAqLCBzdHJ1Y3QgaWZuZXQgKik7CiBzdGF0aWMgaW50CWxhZ2dfcG9ydF9kZXN0cm95KHN0 cnVjdCBsYWdnX3BvcnQgKiwgaW50KTsKIHN0YXRpYyBzdHJ1Y3QgbWJ1ZiAqbGFnZ19pbnB1dChz dHJ1Y3QgaWZuZXQgKiwgc3RydWN0IG1idWYgKik7CkBAIC0xMzAsNiArMTMyLDEwIEBACiBzdGF0 aWMgdm9pZAlsYWdnX21lZGlhX3N0YXR1cyhzdHJ1Y3QgaWZuZXQgKiwgc3RydWN0IGlmbWVkaWFy ZXEgKik7CiBzdGF0aWMgc3RydWN0IGxhZ2dfcG9ydCAqbGFnZ19saW5rX2FjdGl2ZShzdHJ1Y3Qg bGFnZ19zb2Z0YyAqLAogCSAgICBzdHJ1Y3QgbGFnZ19wb3J0ICopOworc3RhdGljIGludAlsYWdn X2NoYW5nZV9tdHUoc3RydWN0IGlmbmV0ICppZnAsIHN0cnVjdCBpZnJlcSAqaWZyKTsKK3N0YXRp YyBzdHJ1Y3QgbGFnZ19sbHEJKmxhZ2dfZ2V0X2xscV9lbnRyeShzdHJ1Y3QgbGFnZ19zb2Z0YyAq LAorCQlzdHJ1Y3QgaWZuZXQgKik7CitzdGF0aWMgdm9pZCAJbGFnZ19sbHFfbGlzdF9jbGVhbnVw KHN0cnVjdCBsYWdnX3NvZnRjICopOwogCiAvKiBTaW1wbGUgcm91bmQgcm9iaW4gKi8KIHN0YXRp YyB2b2lkCWxhZ2dfcnJfYXR0YWNoKHN0cnVjdCBsYWdnX3NvZnRjICopOwpAQCAtNDg3LDcgKzQ5 Myw3IEBACiAKIAlMQUdHX0xPQ0tfSU5JVChzYyk7CiAJU0xJU1RfSU5JVCgmc2MtPnNjX3BvcnRz KTsKLQlUQVNLX0lOSVQoJnNjLT5zY19sbGFkZHJfdGFzaywgMCwgbGFnZ19wb3J0X3NldGxsYWRk ciwgc2MpOworCVRBU0tfSU5JVCgmc2MtPnNjX2xscV90YXNrLCAwLCBsYWdnX3BvcnRfb3BzLCBz Yyk7CiAKIAkvKiBJbml0aWFsaXNlIHBzZXVkbyBtZWRpYSB0eXBlcyAqLwogCWlmbWVkaWFfaW5p dCgmc2MtPnNjX21lZGlhLCAwLCBsYWdnX21lZGlhX2NoYW5nZSwKQEAgLTU1Myw3ICs1NTksNyBA QAogCVNMSVNUX1JFTU9WRSgmVl9sYWdnX2xpc3QsIHNjLCBsYWdnX3NvZnRjLCBzY19lbnRyaWVz KTsKIAlMQUdHX0xJU1RfVU5MT0NLKCk7CiAKLQl0YXNrcXVldWVfZHJhaW4odGFza3F1ZXVlX3N3 aSwgJnNjLT5zY19sbGFkZHJfdGFzayk7CisJdGFza3F1ZXVlX2RyYWluKHRhc2txdWV1ZV9zd2ks ICZzYy0+c2NfbGxxX3Rhc2spOwogCUxBR0dfTE9DS19ERVNUUk9ZKHNjKTsKIAlmcmVlKHNjLCBN X0RFVkJVRik7CiB9CkBAIC02NzIsMzUgKzY3OCwxOTcgQEAKIAogCWxscS0+bGxxX2lmcCA9IGlm cDsKIAlsbHEtPmxscV90eXBlID0gbGxxX3R5cGU7CisJbGxxLT5mbGFncyB8PSBMQUdHX0FTWU5D X1NFVF9NQUNfQUREUjsKIAliY29weShsbGFkZHIsIGxscS0+bGxxX2xsYWRkciwgRVRIRVJfQURE Ul9MRU4pOwogCS8qIFhYWDogV2Ugc2hvdWxkIGluc2VydCB0byB0YWlsICovCiAJU0xJU1RfSU5T RVJUX0hFQUQoJnNjLT5zY19sbHFfaGVhZCwgbGxxLCBsbHFfZW50cmllcyk7CiAKLQl0YXNrcXVl dWVfZW5xdWV1ZSh0YXNrcXVldWVfc3dpLCAmc2MtPnNjX2xsYWRkcl90YXNrKTsKKwl0YXNrcXVl dWVfZW5xdWV1ZSh0YXNrcXVldWVfc3dpLCAmc2MtPnNjX2xscV90YXNrKTsKIH0KIAogLyoKLSAq IFNldCB0aGUgaW50ZXJmYWNlIE1BQyBhZGRyZXNzIGZyb20gYSB0YXNrcXVldWUgdG8gYXZvaWQg YSBMT1IuCisgKiBTZXQgdGhlIGludGVyZmFjZSBNVFUsIE1BQyBhZGRyZXNzIGZyb20gYSB0YXNr cXVldWUgdG8gYXZvaWQgYSBMT1IuCiAgKgogICogU2V0IG5vaW5saW5lIHRvIGJlIGR0cmFjZS1m cmllbmRseQogICovCiBzdGF0aWMgX19ub2lubGluZSB2b2lkCi1sYWdnX3BvcnRfc2V0bGxhZGRy KHZvaWQgKmFyZywgaW50IHBlbmRpbmcpCitsYWdnX3BvcnRfb3BzKHZvaWQgKmFyZywgaW50IHBl bmRpbmcpCiB7CiAJc3RydWN0IGxhZ2dfc29mdGMgKnNjID0gKHN0cnVjdCBsYWdnX3NvZnRjICop YXJnOwogCXN0cnVjdCBsYWdnX2xscSAqbGxxLCAqaGVhZDsKLQlzdHJ1Y3QgaWZuZXQgKmlmcDsK IAogCS8qIEdyYWIgYSBsb2NhbCByZWZlcmVuY2Ugb2YgdGhlIHF1ZXVlIGFuZCByZW1vdmUgaXQg ZnJvbSB0aGUgc29mdGMgKi8KIAlMQUdHX1dMT0NLKHNjKTsKIAloZWFkID0gU0xJU1RfRklSU1Qo JnNjLT5zY19sbHFfaGVhZCk7CiAJU0xJU1RfRklSU1QoJnNjLT5zY19sbHFfaGVhZCkgPSBOVUxM OwogCUxBR0dfV1VOTE9DSyhzYyk7CiAKKwlpZiAoIWhlYWQpCisJCXJldHVybjsKKwogCS8qCiAJ ICogVHJhdmVyc2UgdGhlIHF1ZXVlIGFuZCBzZXQgdGhlIGxsYWRkciBvbiBlYWNoIGlmcC4gSXQg aXMgc2FmZSB0byBkbwogCSAqIHVubG9ja2VkIGFzIHdlIGhhdmUgdGhlIG9ubHkgcmVmZXJlbmNl IHRvIGl0LgogCSAqLworCisJaWYgKGhlYWQtPmZsYWdzICYgTEFHR19BU1lOQ19TRVRfTVRVKSB7 CisJCS8qCisJCSAqIFNldCB0aGUgbmV3IE1UVSBvbiB0aGUgbGFnZyBwb3J0IGFuZCBpdHMgbWVt YmVycy4KKwkJICogSWYgZmFpbGVkLCBSRVZFUlQgdG8gdGhlIG9sZCBNVFUuCisJCSAqLworCQls YWdnX3BvcnRfc2V0X210dShzYywgaGVhZCk7CisJfQorCisJaWYgKGhlYWQtPmZsYWdzICYgTEFH R19BU1lOQ19TRVRfTUFDX0FERFIpIHsKKwkJLyoKKwkJICogU2V0IHRoZSBNQUMgYWRkcmVzcy4K KwkJICovCisJCWxhZ2dfcG9ydF9zZXRsbGFkZHIoaGVhZCk7CisJfQorCisJaWYgKCEoaGVhZC0+ ZmxhZ3MgJiBMQUdHX0FTWU5DX1NFVF9NQVNLKSkKKwkJaWZfcHJpbnRmKHNjLT5zY19pZnAsCisJ CQkJCSJMYWdnIHBvcnQgb3BzOiBmbGFnICgweCV4KSBub3Qgc3VwcG9ydGVkXG4iLCBoZWFkLT5m bGFncyk7CisKKwkvKiBGaW5hbGx5IGZyZWUgdGhlIHBlciBwb3J0IGxscSBlbnRyeTsgRE8gVEhJ UyBPUEVSQVRJT04gTEFTVCAqLworCWZvciAobGxxID0gaGVhZDsgbGxxICE9IE5VTEw7IGxscSA9 IGhlYWQpIHsKKwkJaGVhZCA9IFNMSVNUX05FWFQobGxxLCBsbHFfZW50cmllcyk7CisJCWZyZWUo bGxxLCBNX0RFVkJVRik7CisJfQorfQorCitzdGF0aWMgdm9pZAorbGFnZ19wb3J0X3NldF9tdHUo c3RydWN0IGxhZ2dfc29mdGMgKnNjLCBzdHJ1Y3QgbGFnZ19sbHEgKmhlYWQpCit7CisJc3RydWN0 IGxhZ2dfbGxxICpsbHE7CisJaW50IGVyciA9IDA7CisKKwkvKiBTZXQgdGhlIG5ldyBNVFUgb24g dGhlIGxhZ2cgaW50ZXJmYWNlICovCisJTEFHR19XTE9DSyhzYyk7CisJc2MtPnNjX2lmcC0+aWZf bXR1ID0gaGVhZC0+aWZyLT5pZnJfbXR1OworCUxBR0dfV1VOTE9DSyhzYyk7CisKKwkvKiBTZXQg dGhlIG5ldyBNVFUgb24gdGhlIHBoeXNpY2FsIGludGVyZmFjZSAqLworCWZvciAobGxxID0gaGVh ZDsgbGxxICE9IE5VTEw7IGxscSA9IFNMSVNUX05FWFQobGxxLCBsbHFfZW50cmllcykpIHsKKwkJ ZXJyID0gKCpsbHEtPmxscV9pb2N0bCkobGxxLT5sbHFfaWZwLCBTSU9DU0lGTVRVLCAoY2FkZHJf dClsbHEtPmlmcik7CisJCWlmIChlcnIpIHsKKwkJCWlmX3ByaW50ZihsbHEtPmxscV9pZnAsCisJ CQkJCSJGYWlsZWQgdG8gY2hhbmdlIE1UVSBmcm9tICVkIHRvICVkIChlcnIgJWQpXG4iLAorCQkJ CQlsbHEtPm9sZF9tdHUsIGxscS0+aWZyLT5pZnJfbXR1LCBlcnIpOworCQkJYnJlYWs7CisJCX0K Kwl9CisKKwlpZiAoZXJyKSB7CisJCS8qIFJlc3RvcmUgdGhlIG9sZCBNVFUgb24gdGhlIGxhZ2cg aW50ZXJmYWNlICovCisJCUxBR0dfV0xPQ0soc2MpOworCQlzYy0+c2NfaWZwLT5pZl9tdHUgPSBo ZWFkLT5vbGRfbXR1OworCQlMQUdHX1dVTkxPQ0soc2MpOworCisJCS8qIFJlc3RvcmUgdGhlIG9s ZCBNVFUgb24gdGhlIHBoeXNpY2FsIGludGVyZmFjZSAqLworCQlmb3IgKGxscSA9IGhlYWQ7IGxs cSAhPSBOVUxMOyBsbHEgPSBTTElTVF9ORVhUKGxscSwgbGxxX2VudHJpZXMpKSB7CisJCQlsbHEt Pmlmci0+aWZyX210dSA9IGxscS0+b2xkX210dTsKKwkJCWVyciA9ICgqbGxxLT5sbHFfaW9jdGwp CisJCQkJKGxscS0+bGxxX2lmcCwgU0lPQ1NJRk1UVSwgKGNhZGRyX3QpbGxxLT5pZnIpOworCQkJ aWYgKGVycikgeworCQkJCWlmX3ByaW50ZihsbHEtPmxscV9pZnAsCisJCQkJCQkiRmFpbGVkIHRv IHJlc3RvcmUgTVRVIHRvICVkIChlcnIgJWQpXG4iLAorCQkJCQkJbGxxLT5vbGRfbXR1LCBlcnIp OworCQkJfQorCQl9CisJfQorCisJLyogQ29tbW9uIHRvIGFsbCBsYWdnIG1lbWJlciBwb3J0cyAq LworCWZyZWUoaGVhZC0+aWZyLCBNX0RFVkJVRik7Cit9CisKK3N0YXRpYyB2b2lkIGxhZ2dfbGxx X2xpc3RfY2xlYW51cChzdHJ1Y3QgbGFnZ19zb2Z0YyAqc2MpCit7CisJc3RydWN0IGxhZ2dfbGxx ICpoZWFkLCAqbGxxOworCisJTEFHR19XTE9DS19BU1NFUlQoc2MpOworCisJaGVhZCA9IFNMSVNU X0ZJUlNUKCZzYy0+c2NfbGxxX2hlYWQpOworCVNMSVNUX0ZJUlNUKCZzYy0+c2NfbGxxX2hlYWQp ID0gTlVMTDsKKworCWZvciAobGxxID0gaGVhZDsgbGxxICE9IE5VTEw7IGxscSA9IGhlYWQpIHsK KwkJaGVhZCA9IFNMSVNUX05FWFQobGxxLCBsbHFfZW50cmllcyk7CisJCWZyZWUobGxxLCBNX0RF VkJVRik7CisJfQorfQorCitzdGF0aWMgc3RydWN0IGxhZ2dfbGxxICoKK2xhZ2dfZ2V0X2xscV9l bnRyeShzdHJ1Y3QgbGFnZ19zb2Z0YyAqc2MsIHN0cnVjdCBpZm5ldCAqaWZwKQoreworCXN0cnVj dCBsYWdnX2xscSAqbGxxOworCisJTEFHR19XTE9DS19BU1NFUlQoc2MpOworCisJU0xJU1RfRk9S RUFDSChsbHEsICZzYy0+c2NfbGxxX2hlYWQsIGxscV9lbnRyaWVzKSB7CisJCWlmIChsbHEtPmxs cV9pZnAgPT0gaWZwKSB7CisJCQlicmVhazsKKwkJfQorCX0KKwlyZXR1cm4gbGxxOworfQorCitz dGF0aWMgaW50CitsYWdnX2NoYW5nZV9tdHUoc3RydWN0IGlmbmV0ICppZnAsIHN0cnVjdCBpZnJl cSAqaWZyKQoreworCXN0cnVjdCBsYWdnX3NvZnRjICpzYyA9IChzdHJ1Y3QgbGFnZ19zb2Z0YyAq KWlmcC0+aWZfc29mdGM7CisJc3RydWN0IGxhZ2dfcG9ydCAqbHA7CisJc3RydWN0IGxhZ2dfbGxx ICpsbHE7CisJc3RydWN0IGlmcmVxICppZnJfY29weSwgKm9sZF9pZnIgPSBOVUxMOworCisJLyog Tm8gY2hhbmdlIGluIE1UVSAqLworCWlmIChpZnAtPmlmX210dSA9PSBpZnItPmlmcl9tdHUpCisJ CXJldHVybiAoMCk7CisKKwlpZnJfY29weSA9IG1hbGxvYyhzaXplb2Yoc3RydWN0IGlmcmVxKSwg TV9ERVZCVUYsIE1fTk9XQUlUKTsKKwlpZiAoaWZyX2NvcHkgPT0gTlVMTCkKKwkJcmV0dXJuIChF Tk9NRU0pOworCisJYmNvcHkoaWZyLCBpZnJfY29weSwgc2l6ZW9mKHN0cnVjdCBpZnJlcSkpOwor CUxBR0dfV0xPQ0soc2MpOworCS8qIEFsbCBsYWdnIHBvcnRzIChNVFUgY2hhbmdlKSBzaGFsbCBi ZSBxdWV1ZWQgYXRvbWljICovCisJU0xJU1RfRk9SRUFDSChscCwgJnNjLT5zY19wb3J0cywgbHBf ZW50cmllcykgeworCQkvKiAgQ2hlY2sgdG8gbWFrZSBzdXJlIGl0cyBub3QgYWxyZWFkeSBxdWV1 ZWQgKi8KKwkJbGxxID0gbGFnZ19nZXRfbGxxX2VudHJ5KHNjLCBscC0+bHBfaWZwKTsKKwkJaWYg KCFsbHEpIHsKKwkJCWxscSA9IG1hbGxvYyhzaXplb2Yoc3RydWN0IGxhZ2dfbGxxKSwgTV9ERVZC VUYsIE1fTk9XQUlUKTsKKwkJCWlmIChsbHEgPT0gTlVMTCkgeworCQkJCWxhZ2dfbGxxX2xpc3Rf Y2xlYW51cChzYyk7CisJCQkJTEFHR19XVU5MT0NLKHNjKTsKKwkJCQlmcmVlKGlmcl9jb3B5LCBN X0RFVkJVRik7CisJCQkJaWYgKG9sZF9pZnIpCisJCQkJCWZyZWUob2xkX2lmciwgTV9ERVZCVUYp OworCQkJCXJldHVybiAoRU5PTUVNKTsKKwkJCX0KKwkJCVNMSVNUX0lOU0VSVF9IRUFEKCZzYy0+ c2NfbGxxX2hlYWQsIGxscSwgbGxxX2VudHJpZXMpOworCQl9IGVsc2UgeworCQkJb2xkX2lmciA9 IGxscS0+aWZyOworCQl9CisKKwkJLyogVXBkYXRlIHRoZSBsbHEgZXZlbiBpZiBwZW5kaW5nLCBp dCBtaWdodCBoYXZlIHVwZGF0ZWQgKi8KKwkJbGxxLT5pZnIgPSBpZnJfY29weTsKKwkJbGxxLT5v bGRfbXR1ID0gaWZwLT5pZl9tdHU7CisJCWxscS0+bGxxX2lmcCA9IGxwLT5scF9pZnA7CisJCWxs cS0+bGxxX2lvY3RsID0gbHAtPmxwX2lvY3RsOworCQlsbHEtPmZsYWdzIHw9IExBR0dfQVNZTkNf U0VUX01UVTsKKwl9CisJdGFza3F1ZXVlX2VucXVldWUodGFza3F1ZXVlX3N3aSwgJnNjLT5zY19s bHFfdGFzayk7CisJTEFHR19XVU5MT0NLKHNjKTsKKwlpZiAob2xkX2lmcikKKwkJZnJlZShvbGRf aWZyLCBNX0RFVkJVRik7CisJcmV0dXJuICgwKTsKK30KKworc3RhdGljIHZvaWQKK2xhZ2dfcG9y dF9zZXRsbGFkZHIoc3RydWN0IGxhZ2dfbGxxICpoZWFkKQoreworCXN0cnVjdCBsYWdnX2xscSAq bGxxOworCXN0cnVjdCBpZm5ldCAqaWZwOworCiAJZm9yIChsbHEgPSBoZWFkOyBsbHEgIT0gTlVM TDsgbGxxID0gaGVhZCkgewogCQlpZnAgPSBsbHEtPmxscV9pZnA7CiAKQEAgLTcxOCw3ICs4ODYs NiBAQAogCQkJRVZFTlRIQU5ETEVSX0lOVk9LRShpZmxsYWRkcl9ldmVudCwgaWZwKTsKIAkJQ1VS Vk5FVF9SRVNUT1JFKCk7CiAJCWhlYWQgPSBTTElTVF9ORVhUKGxscSwgbGxxX2VudHJpZXMpOwot CQlmcmVlKGxscSwgTV9ERVZCVUYpOwogCX0KIH0KIApAQCAtMTUyOSwxMCArMTY5NiwxMiBAQAog CQlicmVhazsKIAogCWNhc2UgU0lPQ1NJRkNBUDoKLQljYXNlIFNJT0NTSUZNVFU6Ci0JCS8qIERv IG5vdCBhbGxvdyB0aGUgTVRVIG9yIGNhcHMgdG8gYmUgZGlyZWN0bHkgY2hhbmdlZCAqLworCQkv KiBEbyBub3QgYWxsb3cgdGhlIENBUHMgdG8gYmUgZGlyZWN0bHkgY2hhbmdlZC4gKi8KIAkJZXJy b3IgPSBFSU5WQUw7CiAJCWJyZWFrOworCWNhc2UgU0lPQ1NJRk1UVToKKwkJZXJyb3IgPSBsYWdn X2NoYW5nZV9tdHUoaWZwLCBpZnIpOworCQlicmVhazsKIAogCWRlZmF1bHQ6CiAJCWVycm9yID0g ZXRoZXJfaW9jdGwoaWZwLCBjbWQsIGRhdGEpOwoK --b1_7201bd5d6eef08f9d7dd90d39c21fe10--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?7201bd5d6eef08f9d7dd90d39c21fe10>