From owner-freebsd-net@FreeBSD.ORG Wed Dec 28 00:50:45 2011 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 63B22106564A for ; Wed, 28 Dec 2011 00:50:45 +0000 (UTC) (envelope-from pluknet@gmail.com) Received: from mail-tul01m020-f182.google.com (mail-tul01m020-f182.google.com [209.85.214.182]) by mx1.freebsd.org (Postfix) with ESMTP id 266148FC08 for ; Wed, 28 Dec 2011 00:50:44 +0000 (UTC) Received: by obbwd18 with SMTP id wd18so11840701obb.13 for ; Tue, 27 Dec 2011 16:50:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=pUtUe96JUea04YrihrZGgyKM7mMt+99SRq3e3a40YGM=; b=KZQ24IuQoErHiI3EBXeUI6zKKn+2Gks0xP7Fj4k08Xn0OfJLNco7Bt77ftkugtF+yK DgSYElRPWBpB3lNBFFwnyG7BSRPMKDOkSUPGUp1534auvpG8vzGtXErfZb+JcMjO8ZGp SDAZ/0cqWc0x2OSesppCXRWeXpqAMR74zYmqU= MIME-Version: 1.0 Received: by 10.182.76.134 with SMTP id k6mr18516203obw.10.1325032040097; Tue, 27 Dec 2011 16:27:20 -0800 (PST) Received: by 10.182.171.67 with HTTP; Tue, 27 Dec 2011 16:27:20 -0800 (PST) In-Reply-To: <1325015120.17645.7.camel@hitfishpass-lx.corp.yahoo.com> References: <1325015120.17645.7.camel@hitfishpass-lx.corp.yahoo.com> Date: Wed, 28 Dec 2011 03:27:20 +0300 Message-ID: From: Sergey Kandaurov To: Sean Bruno Content-Type: multipart/mixed; boundary=f46d044787a510e6be04b51c1088 Cc: "freebsd-net@freebsd.org" Subject: Re: i386 compile sys/dev/ie X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 28 Dec 2011 00:50:45 -0000 --f46d044787a510e6be04b51c1088 Content-Type: text/plain; charset=ISO-8859-1 On 27 December 2011 23:45, Sean Bruno wrote: > Doing a lot of compiles recently and keep noting this noise in > sys/dev/ie: > > > > /dumpster/scratch/sbruno-scratch/head/sys/dev/ie/if_ie.c: In function > 'ieget': > /dumpster/scratch/sbruno-scratch/head/sys/dev/ie/if_ie.c:682: warning: > passing argument 1 of 'bcopy' discards qualifiers from pointer target > type [snip similar] These type of errors are because bzero takes a volatile argument but wants a non-volatile. This can be "solved" by casting to remove volatile modifier. > /dumpster/scratch/sbruno-scratch/head/sys/dev/ie/if_ie.c: At top level: > /dumpster/scratch/sbruno-scratch/head/sys/dev/ie/if_ie.c:1155: warning: > 'ee16_read_eeprom' defined but not used > /dumpster/scratch/sbruno-scratch/head/sys/dev/ie/if_ie.c:1097: warning: > 'find_ie_mem_size' defined but not used These were used in probe routine and are left from the newbus rewrite. I hacked ie a bit to build cleanly. [Not sure if I did this correctly.] -- wbr, pluknet --f46d044787a510e6be04b51c1088 Content-Type: text/x-patch; charset=US-ASCII; name="ie.diff" Content-Disposition: attachment; filename="ie.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gwplpzq10 ZGlmZiAtdXJwTiBzeXMvZGV2L2llLm9yaWcvaWZfaWUuYyBzeXMvZGV2L2llL2lmX2llLmMKLS0t IHN5cy9kZXYvaWUub3JpZy9pZl9pZS5jCTIwMTEtMTItMjggMDI6MDA6MTkuMDAwMDAwMDAwICsw NDAwCisrKyBzeXMvZGV2L2llL2lmX2llLmMJMjAxMS0xMi0yOCAwNDowNTozNi4wMDAwMDAwMDAg KzA0MDAKQEAgLTE2OSwxNyArMTY5LDEyIEBAIHN0YXRpYyB2b2lkCWllc3RhcnRfbG9ja2VkCQko c3RydWN0IGlmbmUKIAogc3RhdGljIF9faW5saW5lIHZvaWQKIAkJZWUxNl9pbnRlcnJ1cHRfZW5h YmxlCShzdHJ1Y3QgaWVfc29mdGMgKik7Ci1zdGF0aWMgdm9pZAllZTE2X2VlcHJvbV9vdXRiaXRz CShzdHJ1Y3QgaWVfc29mdGMgKiwgaW50LCBpbnQpOwotc3RhdGljIHZvaWQJZWUxNl9lZXByb21f Y2xvY2sJKHN0cnVjdCBpZV9zb2Z0YyAqLCBpbnQpOwotc3RhdGljIHVfc2hvcnQJZWUxNl9yZWFk X2VlcHJvbQkoc3RydWN0IGllX3NvZnRjICosIGludCk7Ci1zdGF0aWMgaW50CWVlMTZfZWVwcm9t X2luYml0cwkoc3RydWN0IGllX3NvZnRjICopOwogCiBzdGF0aWMgX19pbmxpbmUgdm9pZAogCQlp ZV9hY2sJCQkoc3RydWN0IGllX3NvZnRjICosIHVfaW50KTsKIHN0YXRpYyB2b2lkCWllcmVzZXQJ CQkoc3RydWN0IGllX3NvZnRjICopOwogc3RhdGljIHZvaWQJaWVfcmVhZGZyYW1lCQkoc3RydWN0 IGllX3NvZnRjICosIGludCk7CiBzdGF0aWMgdm9pZAlpZV9kcm9wX3BhY2tldF9idWZmZXIJKHN0 cnVjdCBpZV9zb2Z0YyAqKTsKLXN0YXRpYyB2b2lkCWZpbmRfaWVfbWVtX3NpemUJKHN0cnVjdCBp ZV9zb2Z0YyAqKTsKIHN0YXRpYyBpbnQJY29tbWFuZF9hbmRfd2FpdAkoc3RydWN0IGllX3NvZnRj ICosCiAJCQkJCSBpbnQsIHZvaWQgdm9sYXRpbGUgKiwgaW50KTsKIHN0YXRpYyB2b2lkCXJ1bl90 ZHIJCQkoc3RydWN0IGllX3NvZnRjICosCkBAIC0zMDAsMTIgKzI5NSwxMiBAQCBpZV9hdHRhY2go ZGV2aWNlX3QgZGV2KQogCX0KIAlzYy0+cmJ1ZmZzID0KIAkgICAgKHZvbGF0aWxlIHN0cnVjdCBp ZV9yZWN2X2J1Zl9kZXNjICoqKSZzYy0+cmZyYW1lc1tzYy0+bmZyYW1lc107Ci0Jc2MtPmNidWZm cyA9ICh2b2xhdGlsZSB1X2NoYXIgKiopJnNjLT5yYnVmZnNbc2MtPm5yeGJ1ZnNdOworCXNjLT5j YnVmZnMgPSBfX0RFVk9MQVRJTEUodV9jaGFyICoqLCAmc2MtPnJidWZmc1tzYy0+bnJ4YnVmc10p OwogCXNjLT54bWl0X2NtZHMgPQogCSAgICAodm9sYXRpbGUgc3RydWN0IGllX3htaXRfY21kICoq KSZzYy0+Y2J1ZmZzW3NjLT5ucnhidWZzXTsKIAlzYy0+eG1pdF9idWZmcyA9CiAJICAgICh2b2xh dGlsZSBzdHJ1Y3QgaWVfeG1pdF9idWYgKiopJnNjLT54bWl0X2NtZHNbc2MtPm50eGJ1ZnNdOwot CXNjLT54bWl0X2NidWZmcyA9ICh2b2xhdGlsZSB1X2NoYXIgKiopJnNjLT54bWl0X2J1ZmZzW3Nj LT5udHhidWZzXTsKKwlzYy0+eG1pdF9jYnVmZnMgPSBfX0RFVk9MQVRJTEUodV9jaGFyICoqLCAm c2MtPnhtaXRfYnVmZnNbc2MtPm50eGJ1ZnNdKTsKIAogCWlmIChib290dmVyYm9zZSkKIAkJZGV2 aWNlX3ByaW50ZihzYy0+ZGV2LCAiaGFyZHdhcmUgdHlwZSAlcywgcmV2aXNpb24gJWRcbiIsCkBA IC03NzEsNyArNzY2LDcgQEAgaWVnZXQoc3RydWN0IGllX3NvZnRjICpzYywgc3RydWN0IG1idWYg KgogCQlpZiAodGhpc2xlbiA+IG0tPm1fbGVuIC0gdGhpc21ib2ZmKSB7CiAJCQlpbnQJbmV3bGVu ID0gbS0+bV9sZW4gLSB0aGlzbWJvZmY7CiAKLQkJCWJjb3B5KCh2X2NhZGRyX3QpIChzYy0+Y2J1 ZmZzW2hlYWRdICsgb2Zmc2V0KSwKKwkJCWJjb3B5KHNjLT5jYnVmZnNbaGVhZF0gKyBvZmZzZXQs CiAJCQkgICAgICBtdG9kKG0sIGNhZGRyX3QpICt0aGlzbWJvZmYsICh1bnNpZ25lZCkgbmV3bGVu KTsKIAkJCS8qIGlnbm9yZSBjYXN0LXF1YWwgd2FybmluZyAqLwogCQkJbSA9IG0tPm1fbmV4dDsK QEAgLTc4OCw3ICs3ODMsNyBAQCBpZWdldChzdHJ1Y3QgaWVfc29mdGMgKnNjLCBzdHJ1Y3QgbWJ1 ZiAqCiAJCSAqIHBvaW50ZXJzLCBhbmQgc28gb24uCiAJCSAqLwogCQlpZiAodGhpc2xlbiA8IG0t Pm1fbGVuIC0gdGhpc21ib2ZmKSB7Ci0JCQliY29weSgodl9jYWRkcl90KSAoc2MtPmNidWZmc1to ZWFkXSArIG9mZnNldCksCisJCQliY29weShzYy0+Y2J1ZmZzW2hlYWRdICsgb2Zmc2V0LAogCQkJ ICAgIG10b2QobSwgY2FkZHJfdCkgK3RoaXNtYm9mZiwgKHVuc2lnbmVkKSB0aGlzbGVuKTsKIAkJ CXRoaXNtYm9mZiArPSB0aGlzbGVuOwkvKiB3ZSBhcmUgdGhpcyBmYXIgaW50byB0aGUKIAkJCQkJ CSAqIG1idWYgKi8KQEAgLTgwMCw3ICs3OTUsNyBAQCBpZWdldChzdHJ1Y3QgaWVfc29mdGMgKnNj LCBzdHJ1Y3QgbWJ1ZiAqCiAJCSAqIGJ1ZmZlcidzIGNvbnRlbnRzIGludG8gdGhlIGN1cnJlbnQg bWJ1Zi4gIERvIHRoZQogCQkgKiBjb21iaW5hdGlvbiBvZiB0aGUgYWJvdmUgYWN0aW9ucy4KIAkJ ICovCi0JCWJjb3B5KCh2X2NhZGRyX3QpIChzYy0+Y2J1ZmZzW2hlYWRdICsgb2Zmc2V0KSwKKwkJ YmNvcHkoc2MtPmNidWZmc1toZWFkXSArIG9mZnNldCwKIAkJICAgICAgbXRvZChtLCBjYWRkcl90 KSArIHRoaXNtYm9mZiwgKHVuc2lnbmVkKSB0aGlzbGVuKTsKIAkJbSA9IG0tPm1fbmV4dDsKIAkJ dGhpc21ib2ZmID0gMDsJCS8qIG5ldyBtYnVmLCBzdGFydCBhdCB0aGUgYmVnaW5uaW5nICovCkBA IC04NDYsNyArODQxLDcgQEAgaWVfcmVhZGZyYW1lKHN0cnVjdCBpZV9zb2Z0YyAqc2MsIGludAlu dQogCXN0cnVjdCBldGhlcl9oZWFkZXIgKmVoOwogI2VuZGlmCiAKLQliY29weSgodl9jYWRkcl90 KSAoc2MtPnJmcmFtZXNbbnVtXSksICZyZmQsCisJYmNvcHkoX19ERVZPTEFUSUxFKGNhZGRyX3Qs IHNjLT5yZnJhbWVzW251bV0pLCAmcmZkLAogCSAgICAgIHNpemVvZihzdHJ1Y3QgaWVfcmVjdl9m cmFtZV9kZXNjKSk7CiAKIAkvKgpAQCAtOTM2LDcgKzkzMSw3IEBAIGllc3RhcnRfbG9ja2VkKHN0 cnVjdCBpZm5ldCAqaWZwKQogewogCXN0cnVjdAkgaWVfc29mdGMgKnNjID0gaWZwLT5pZl9zb2Z0 YzsKIAlzdHJ1Y3QJIG1idWYgKm0wLCAqbTsKLQl2b2xhdGlsZSB1bnNpZ25lZCBjaGFyICpidWZm ZXI7CisJdW5zaWduZWQgY2hhciAqYnVmZmVyOwogCXVfc2hvcnQJIGxlbjsKIAogCS8qCkBAIC0x MDIzLDcgKzEwMTgsNyBAQCBjaGVja19pZV9wcmVzZW50KHN0cnVjdCBpZV9zb2Z0YyAqc2MpCiAK IAlzY3AgPSAodm9sYXRpbGUgc3RydWN0IGllX3N5c19jb25mX3B0ciAqKSAodWludHB0cl90KQog CSAgICAgIChyZWFsYmFzZSArIElFX1NDUF9BRERSKTsKLQliemVybygodm9sYXRpbGUgY2hhciAq KSBzY3AsIHNpemVvZiAqc2NwKTsKKwliemVybyhfX0RFVk9MQVRJTEUodm9pZCAqLCBzY3ApLCBz aXplb2YgKnNjcCk7CiAKIAkvKgogCSAqIEZpcnN0IHdlIHB1dCB0aGUgSVNDUCBhdCB0aGUgYm90 dG9tIG9mIG1lbW9yeTsgdGhpcyB0ZXN0cyB0byBtYWtlCkBAIC0xMDMyLDEwICsxMDI3LDEwIEBA IGNoZWNrX2llX3ByZXNlbnQoc3RydWN0IGllX3NvZnRjICpzYykKIAkgKiBvcGVyYXRpb24uCiAJ ICovCiAJaXNjcCA9ICh2b2xhdGlsZSBzdHJ1Y3QgaWVfaW50X3N5c19jb25mX3B0ciAqKSBzYy0+ aW9tZW1ib3Q7Ci0JYnplcm8oKHZvbGF0aWxlIGNoYXIgKilpc2NwLCBzaXplb2YgKmlzY3ApOwor CWJ6ZXJvKF9fREVWT0xBVElMRShjaGFyICosIGlzY3ApLCBzaXplb2YgKmlzY3ApOwogCiAJc2Ni ID0gKHZvbGF0aWxlIHN0cnVjdCBpZV9zeXNfY3RsX2Jsb2NrICopIHNjLT5pb21lbWJvdDsKLQli emVybygodm9sYXRpbGUgY2hhciAqKXNjYiwgc2l6ZW9mICpzY2IpOworCWJ6ZXJvKF9fREVWT0xB VElMRShjaGFyICosIHNjYiksIHNpemVvZiAqc2NiKTsKIAogCXNjcC0+aWVfYnVzX3VzZSA9IHNj LT5idXNfdXNlOwkvKiA4LWJpdCBvciAxNi1iaXQgKi8KIAlzY3AtPmllX2lzY3BfcHRyID0gKGNh ZGRyX3QpICh1aW50cHRyX3QpCkBAIC0xMDU5LDcgKzEwNTQsNyBAQCBjaGVja19pZV9wcmVzZW50 KHN0cnVjdCBpZV9zb2Z0YyAqc2MpCiAJaXNjcCA9ICh2b2lkICopIEFsaWduKChjYWRkcl90KSAo dWludHB0cl90KQogCQkJICAgICAgKHJlYWxiYXNlICsgSUVfU0NQX0FERFIgLQogCQkJICAgICAg IHNpemVvZihzdHJ1Y3QgaWVfaW50X3N5c19jb25mX3B0cikpKTsKLQliemVybygodm9sYXRpbGUg Y2hhciAqKSBpc2NwLCBzaXplb2YgKmlzY3ApOwkvKiBpZ25vcmUgY2FzdC1xdWFsICovCisJYnpl cm8oX19ERVZPTEFUSUxFKGNoYXIgKiwgaXNjcCksIHNpemVvZiAqaXNjcCk7CS8qIGlnbm9yZSBj YXN0LXF1YWwgKi8KIAogCXNjcC0+aWVfaXNjcF9wdHIgPSAoY2FkZHJfdCkgKHVpbnRwdHJfdCkK IAkgICAgKCh2b2xhdGlsZSBjaGFyICopIGlzY3AgLSAodm9sYXRpbGUgY2hhciAqKSAodWludHB0 cl90KSByZWFsYmFzZSk7CkBAIC0xMDg4LDI2ICsxMDgzLDYgQEAgY2hlY2tfaWVfcHJlc2VudChz dHJ1Y3QgaWVfc29mdGMgKnNjKQogCXJldHVybiAoMSk7CiB9CiAKLS8qCi0gKiBEaXZpbmUgdGhl IG1lbW9yeSBzaXplIG9mIGllIGJvYXJkIFVOSVQuCi0gKiBCZXR0ZXIgaG9wZSB0aGVyZSdzIG5v dGhpbmcgaW1wb3J0YW50IGhpZGluZyBqdXN0IGJlbG93IHRoZSBpZSBjYXJkLi4uCi0gKi8KLXN0 YXRpYyB2b2lkCi1maW5kX2llX21lbV9zaXplKHN0cnVjdCBpZV9zb2Z0YyAqc2MpCi17Ci0JdW5z aWduZWQgc2l6ZTsKLQotCXNjLT5pb3NpemUgPSAwOwotCi0JZm9yIChzaXplID0gNjU1MzY7IHNp emUgPj0gODE5Mjsgc2l6ZSAtPSA4MTkyKSB7Ci0JCWlmIChjaGVja19pZV9wcmVzZW50KHNjKSkg ewotCQkJcmV0dXJuOwotCQl9Ci0JfQotCi0JcmV0dXJuOwotfQotCiB2b2lkCiBlbF9yZXNldF81 ODYoc3RydWN0IGllX3NvZnRjICpzYykKIHsKQEAgLTExNTAsODIgKzExMjUsNiBAQCBlZTE2X2No YW5fYXR0bihzdHJ1Y3QgaWVfc29mdGMgKnNjKQogCW91dGIoUE9SVChzYykgKyBJRUUxNl9BVFRO LCAwKTsKIH0KIAotdV9zaG9ydAotZWUxNl9yZWFkX2VlcHJvbShzdHJ1Y3QgaWVfc29mdGMgKnNj LCBpbnQgbG9jYXRpb24pCi17Ci0JaW50CWVjdHJsLCBlZGF0YTsKLQotCWVjdHJsID0gaW5iKHNj LT5wb3J0ICsgSUVFMTZfRUNUUkwpOwotCWVjdHJsICY9IElFRTE2X0VDVFJMX01BU0s7Ci0JZWN0 cmwgfD0gSUVFMTZfRUNUUkxfRUVDUzsKLQlvdXRiKHNjLT5wb3J0ICsgSUVFMTZfRUNUUkwsIGVj dHJsKTsKLQotCWVlMTZfZWVwcm9tX291dGJpdHMoc2MsIElFRTE2X0VFUFJPTV9SRUFELCBJRUUx Nl9FRVBST01fT1BTSVpFMSk7Ci0JZWUxNl9lZXByb21fb3V0Yml0cyhzYywgbG9jYXRpb24sIElF RTE2X0VFUFJPTV9BRERSX1NJWkUpOwotCWVkYXRhID0gZWUxNl9lZXByb21faW5iaXRzKHNjKTsK LQllY3RybCA9IGluYihzYy0+cG9ydCArIElFRTE2X0VDVFJMKTsKLQllY3RybCAmPSB+KElFRTE2 X1JFU0VUX0FTSUMgfCBJRUUxNl9FQ1RSTF9FRURJIHwgSUVFMTZfRUNUUkxfRUVDUyk7Ci0Jb3V0 YihzYy0+cG9ydCArIElFRTE2X0VDVFJMLCBlY3RybCk7Ci0JZWUxNl9lZXByb21fY2xvY2soc2Ms IDEpOwotCWVlMTZfZWVwcm9tX2Nsb2NrKHNjLCAwKTsKLQlyZXR1cm4gZWRhdGE7Ci19Ci0KLXN0 YXRpYyB2b2lkCi1lZTE2X2VlcHJvbV9vdXRiaXRzKHN0cnVjdCBpZV9zb2Z0YyAqc2MsIGludCBl ZGF0YSwgaW50IGNvdW50KQotewotCWludAllY3RybCwgaTsKLQotCWVjdHJsID0gaW5iKHNjLT5w b3J0ICsgSUVFMTZfRUNUUkwpOwotCWVjdHJsICY9IH5JRUUxNl9SRVNFVF9BU0lDOwotCWZvciAo aSA9IGNvdW50IC0gMTsgaSA+PSAwOyBpLS0pIHsKLQkJZWN0cmwgJj0gfklFRTE2X0VDVFJMX0VF REk7Ci0JCWlmIChlZGF0YSAmICgxIDw8IGkpKSB7Ci0JCQllY3RybCB8PSBJRUUxNl9FQ1RSTF9F RURJOwotCQl9Ci0JCW91dGIoc2MtPnBvcnQgKyBJRUUxNl9FQ1RSTCwgZWN0cmwpOwotCQlERUxB WSgxKTsJLyogZWVwcm9tIGRhdGEgbXVzdCBiZSBzZXR1cCBmb3IgMC40IHVTZWMgKi8KLQkJZWUx Nl9lZXByb21fY2xvY2soc2MsIDEpOwotCQllZTE2X2VlcHJvbV9jbG9jayhzYywgMCk7Ci0JfQot CWVjdHJsICY9IH5JRUUxNl9FQ1RSTF9FRURJOwotCW91dGIoc2MtPnBvcnQgKyBJRUUxNl9FQ1RS TCwgZWN0cmwpOwotCURFTEFZKDEpOwkJLyogZWVwcm9tIGRhdGEgbXVzdCBiZSBoZWxkIGZvciAw LjQgdVNlYyAqLwotfQotCi1zdGF0aWMgaW50Ci1lZTE2X2VlcHJvbV9pbmJpdHMoc3RydWN0IGll X3NvZnRjICpzYykKLXsKLQlpbnQJZWN0cmwsIGVkYXRhLCBpOwotCi0JZWN0cmwgPSBpbmIoc2Mt PnBvcnQgKyBJRUUxNl9FQ1RSTCk7Ci0JZWN0cmwgJj0gfklFRTE2X1JFU0VUX0FTSUM7Ci0JZm9y IChlZGF0YSA9IDAsIGkgPSAwOyBpIDwgMTY7IGkrKykgewotCQllZGF0YSA9IGVkYXRhIDw8IDE7 Ci0JCWVlMTZfZWVwcm9tX2Nsb2NrKHNjLCAxKTsKLQkJZWN0cmwgPSBpbmIoc2MtPnBvcnQgKyBJ RUUxNl9FQ1RSTCk7Ci0JCWlmIChlY3RybCAmIElFRTE2X0VDVFJMX0VFRE8pIHsKLQkJCWVkYXRh IHw9IDE7Ci0JCX0KLQkJZWUxNl9lZXByb21fY2xvY2soc2MsIDApOwotCX0KLQlyZXR1cm4gKGVk YXRhKTsKLX0KLQotc3RhdGljIHZvaWQKLWVlMTZfZWVwcm9tX2Nsb2NrKHN0cnVjdCBpZV9zb2Z0 YyAqc2MsIGludCBzdGF0ZSkKLXsKLQlpbnQJZWN0cmw7Ci0KLQllY3RybCA9IGluYihzYy0+cG9y dCArIElFRTE2X0VDVFJMKTsKLQllY3RybCAmPSB+KElFRTE2X1JFU0VUX0FTSUMgfCBJRUUxNl9F Q1RSTF9FRVNLKTsKLQlpZiAoc3RhdGUpIHsKLQkJZWN0cmwgfD0gSUVFMTZfRUNUUkxfRUVTSzsK LQl9Ci0Jb3V0YihzYy0+cG9ydCArIElFRTE2X0VDVFJMLCBlY3RybCk7Ci0JREVMQVkoOSk7CQkv KiBFRVNLIG11c3QgYmUgc3RhYmxlIGZvciA4LjM4IHVTZWMgKi8KLX0KLQogc3RhdGljIF9faW5s aW5lIHZvaWQKIGVlMTZfaW50ZXJydXB0X2VuYWJsZShzdHJ1Y3QgaWVfc29mdGMgKnNjKQogewpA QCAtMTM4NCw3ICsxMjgzLDcgQEAgc2V0dXBfcmZhKHN0cnVjdCBpZV9zb2Z0YyAqc2MsIHZfY2Fk ZHJfdAogCS8qIEZpcnN0IGxheSB0aGVtIG91dCAqLwogCWZvciAoaSA9IDA7IGkgPCBzYy0+bmZy YW1lczsgaSsrKSB7CiAJCXNjLT5yZnJhbWVzW2ldID0gcmZkOwotCQliemVybygodm9sYXRpbGUg Y2hhciAqKSByZmQsIHNpemVvZiAqcmZkKTsJLyogaWdub3JlIGNhc3QtcXVhbCAqLworCQliemVy byhfX0RFVk9MQVRJTEUoY2hhciAqLCByZmQpLCBzaXplb2YgKnJmZCk7CS8qIGlnbm9yZSBjYXN0 LXF1YWwgKi8KIAkJcmZkKys7CiAJfQogCkBAIC0xNDA4LDExICsxMzA3LDExIEBAIHNldHVwX3Jm YShzdHJ1Y3QgaWVfc29mdGMgKnNjLCB2X2NhZGRyX3QKIAogCWZvciAoaSA9IDA7IGkgPCBzYy0+ bnJ4YnVmczsgaSsrKSB7CiAJCXNjLT5yYnVmZnNbaV0gPSByYmQ7Ci0JCWJ6ZXJvKCh2b2xhdGls ZSBjaGFyICopcmJkLCBzaXplb2YgKnJiZCk7CisJCWJ6ZXJvKF9fREVWT0xBVElMRShjaGFyICos IHJiZCksIHNpemVvZiAqcmJkKTsKIAkJcHRyID0gQWxpZ252b2wocHRyICsgc2l6ZW9mICpyYmQp OwogCQlyYmQtPmllX3JiZF9sZW5ndGggPSBJRV9SQlVGX1NJWkU7CiAJCXJiZC0+aWVfcmJkX2J1 ZmZlciA9IE1LXzI0KE1FTShzYyksIHB0cik7Ci0JCXNjLT5jYnVmZnNbaV0gPSAodm9sYXRpbGUg dm9pZCAqKSBwdHI7CisJCXNjLT5jYnVmZnNbaV0gPSBfX0RFVk9MQVRJTEUodm9pZCAqLCBwdHIp OwogCQlwdHIgKz0gSUVfUkJVRl9TSVpFOwogCQlyYmQgPSAodm9sYXRpbGUgdm9pZCAqKSBwdHI7 CiAJfQpAQCAtMTQ0OCwxNCArMTM0NywxNCBAQCBzZXR1cF9yZmEoc3RydWN0IGllX3NvZnRjICpz Yywgdl9jYWRkcl90CiBzdGF0aWMgaW50CiBtY19zZXR1cChzdHJ1Y3QgaWVfc29mdGMgKnNjKQog ewotCXZvbGF0aWxlIHN0cnVjdCBpZV9tY2FzdF9jbWQgKmNtZCA9ICh2b2xhdGlsZSB2b2lkICop c2MtPnhtaXRfY2J1ZmZzWzBdOworCXN0cnVjdCBpZV9tY2FzdF9jbWQgKmNtZCA9ICh2b2lkICop c2MtPnhtaXRfY2J1ZmZzWzBdOwogCiAJY21kLT5jb20uaWVfY21kX3N0YXR1cyA9IDA7CiAJY21k LT5jb20uaWVfY21kX2NtZCA9IElFX0NNRF9NQ0FTVCB8IElFX0NNRF9MQVNUOwogCWNtZC0+Y29t LmllX2NtZF9saW5rID0gMHhmZmZmOwogCiAJLyogaWdub3JlIGNhc3QtcXVhbCAqLwotCWJjb3B5 KCh2X2NhZGRyX3QpIHNjLT5tY2FzdF9hZGRycywgKHZfY2FkZHJfdCkgY21kLT5pZV9tY2FzdF9h ZGRycywKKwliY29weSgoY2FkZHJfdCkgc2MtPm1jYXN0X2FkZHJzLCAoY2FkZHJfdCkgY21kLT5p ZV9tY2FzdF9hZGRycywKIAkgICAgICBzYy0+bWNhc3RfY291bnQgKiBzaXplb2YgKnNjLT5tY2Fz dF9hZGRycyk7CiAKIAljbWQtPmllX21jYXN0X2J5dGVzID0gc2MtPm1jYXN0X2NvdW50ICogNjsJ LyogZ3Jyci4uLiAqLwpAQCAtMTQ5MSw3ICsxMzkwLDcgQEAgaWVpbml0X2xvY2tlZChzdHJ1Y3Qg aWVfc29mdGMgKnNjKQogewogCXN0cnVjdCBpZm5ldCAqaWZwID0gc2MtPmlmcDsKIAl2b2xhdGls ZSBzdHJ1Y3QgaWVfc3lzX2N0bF9ibG9jayAqc2NiID0gc2MtPnNjYjsKLQljYWRkcl90IHB0cjsK Kwl2X2NhZGRyX3QgcHRyOwogCWludAlpOwogCiAJcHRyID0gQWxpZ252b2woKHZvbGF0aWxlIGNo YXIgKikgc2NiICsgc2l6ZW9mICpzY2IpOwpAQCAtMTUwMCw3ICsxMzk5LDcgQEAgaWVpbml0X2xv Y2tlZChzdHJ1Y3QgaWVfc29mdGMgKnNjKQogCSAqIFNlbmQgdGhlIGNvbmZpZ3VyZSBjb21tYW5k IGZpcnN0LgogCSAqLwogCXsKLQkJdm9sYXRpbGUgc3RydWN0IGllX2NvbmZpZ19jbWQgKmNtZCA9 ICh2b2xhdGlsZSB2b2lkICopIHB0cjsKKwkJc3RydWN0IGllX2NvbmZpZ19jbWQgKmNtZCA9IF9f REVWT0xBVElMRSh2b2lkICosIHB0cik7CiAKIAkJaWVfc2V0dXBfY29uZmlnKGNtZCwgc2MtPnBy b21pc2MsCiAJCQkJc2MtPmhhcmRfdHlwZSA9PSBJRV9TVEFSTEFOMTApOwpAQCAtMTUyMCwxNCAr MTQxOSwxNCBAQCBpZWluaXRfbG9ja2VkKHN0cnVjdCBpZV9zb2Z0YyAqc2MpCiAJICogTm93IHNl bmQgdGhlIEluZGl2aWR1YWwgQWRkcmVzcyBTZXR1cCBjb21tYW5kLgogCSAqLwogCXsKLQkJdm9s YXRpbGUgc3RydWN0IGllX2lhc2V0dXBfY21kICpjbWQgPSAodm9sYXRpbGUgdm9pZCAqKSBwdHI7 CisJCXN0cnVjdCBpZV9pYXNldHVwX2NtZCAqY21kID0gX19ERVZPTEFUSUxFKHZvaWQgKiwgcHRy KTsKIAogCQljbWQtPmNvbS5pZV9jbWRfc3RhdHVzID0gMDsKIAkJY21kLT5jb20uaWVfY21kX2Nt ZCA9IElFX0NNRF9JQVNFVFVQIHwgSUVfQ01EX0xBU1Q7CiAJCWNtZC0+Y29tLmllX2NtZF9saW5r ID0gMHhmZmZmOwogCi0JCWJjb3B5KCh2b2xhdGlsZSBjaGFyICopSUZfTExBRERSKGlmcCksCi0J CSAgICAgICh2b2xhdGlsZSBjaGFyICopJmNtZC0+aWVfYWRkcmVzcywgc2l6ZW9mIGNtZC0+aWVf YWRkcmVzcyk7CisJCWJjb3B5KChjaGFyICopSUZfTExBRERSKGlmcCksCisJCSAgICAgIChjaGFy ICopJmNtZC0+aWVfYWRkcmVzcywgc2l6ZW9mIGNtZC0+aWVfYWRkcmVzcyk7CiAJCXNjYi0+aWVf Y29tbWFuZF9saXN0ID0gTUtfMTYoTUVNKHNjKSwgY21kKTsKIAkJaWYgKGNvbW1hbmRfYW5kX3dh aXQoc2MsIElFX0NVX1NUQVJULCBjbWQsIElFX1NUQVRfQ09NUEwpCiAJCSAgICB8fCAhKGNtZC0+ Y29tLmllX2NtZF9zdGF0dXMgJiBJRV9TVEFUX09LKSkgewpAQCAtMTU2OSwxNSArMTQ2OCwxNSBA QCBpZWluaXRfbG9ja2VkKHN0cnVjdCBpZV9zb2Z0YyAqc2MpCiAKIAkvKiB0cmFuc21pdCBidWZm ZXJzICovCiAJZm9yIChpID0gMDsgaSA8IHNjLT5udHhidWZzIC0gMTsgaSsrKSB7Ci0JCXNjLT54 bWl0X2NidWZmc1tpXSA9ICh2b2xhdGlsZSB2b2lkICopcHRyOworCQlzYy0+eG1pdF9jYnVmZnNb aV0gPSBfX0RFVk9MQVRJTEUodm9pZCAqLCBwdHIpOwogCQlwdHIgKz0gSUVfQlVGX0xFTjsKIAkJ cHRyID0gQWxpZ252b2wocHRyKTsKIAl9Ci0Jc2MtPnhtaXRfY2J1ZmZzW3NjLT5udHhidWZzIC0g MV0gPSAodm9sYXRpbGUgdm9pZCAqKSBwdHI7CisJc2MtPnhtaXRfY2J1ZmZzW3NjLT5udHhidWZz IC0gMV0gPSBfX0RFVk9MQVRJTEUodm9pZCAqLCBwdHIpOwogCiAJZm9yIChpID0gMTsgaSA8IHNj LT5udHhidWZzOyBpKyspIHsKLQkJYnplcm8oKHZfY2FkZHJfdCkgc2MtPnhtaXRfY21kc1tpXSwg c2l6ZW9mICpzYy0+eG1pdF9jbWRzW2ldKTsKLQkJYnplcm8oKHZfY2FkZHJfdCkgc2MtPnhtaXRf YnVmZnNbaV0sIHNpemVvZiAqc2MtPnhtaXRfYnVmZnNbaV0pOworCQliemVybyhfX0RFVk9MQVRJ TEUoY2FkZHJfdCwgc2MtPnhtaXRfY21kc1tpXSksIHNpemVvZiAqc2MtPnhtaXRfY21kc1tpXSk7 CisJCWJ6ZXJvKF9fREVWT0xBVElMRShjYWRkcl90LCBzYy0+eG1pdF9idWZmc1tpXSksIHNpemVv ZiAqc2MtPnhtaXRfYnVmZnNbaV0pOwogCX0KIAogCS8qCmRpZmYgLXVycE4gc3lzL2Rldi9pZS5v cmlnL2lmX2lldmFyLmggc3lzL2Rldi9pZS9pZl9pZXZhci5oCi0tLSBzeXMvZGV2L2llLm9yaWcv aWZfaWV2YXIuaAkyMDExLTEyLTI4IDAyOjAzOjE0LjAwMDAwMDAwMCArMDQwMAorKysgc3lzL2Rl di9pZS9pZl9pZXZhci5oCTIwMTEtMTItMjggMDI6NDE6MTMuMDAwMDAwMDAwICswNDAwCkBAIC01 NSwxMiArNTUsMTIgQEAgc3RydWN0IGllX3NvZnRjIHsKIAl2b2xhdGlsZSBzdHJ1Y3QgaWVfc3lz X2N0bF9ibG9jayAqc2NiOwogCXZvbGF0aWxlIHN0cnVjdCBpZV9yZWN2X2ZyYW1lX2Rlc2MgKipy ZnJhbWVzOwkvKiBuZnJhbWVzIHdvcnRoICovCiAJdm9sYXRpbGUgc3RydWN0IGllX3JlY3ZfYnVm X2Rlc2MgKipyYnVmZnM7CS8qIG5yeGJ1ZnMgd29ydGggKi8KLQl2b2xhdGlsZSB1X2NoYXIgKipj YnVmZnM7CQkJLyogbnJ4YnVmcyB3b3J0aCAqLworCXVfY2hhciAqKmNidWZmczsJCQkvKiBucnhi dWZzIHdvcnRoICovCiAJaW50CSByZmhlYWQsIHJmdGFpbCwgcmJoZWFkLCByYnRhaWw7CiAKIAl2 b2xhdGlsZSBzdHJ1Y3QgaWVfeG1pdF9jbWQgKip4bWl0X2NtZHM7CS8qIG50eGJ1ZnMgd29ydGgg Ki8KIAl2b2xhdGlsZSBzdHJ1Y3QgaWVfeG1pdF9idWYgKip4bWl0X2J1ZmZzOwkvKiBudHhidWZz IHdvcnRoICovCi0Jdm9sYXRpbGUgdV9jaGFyCSAqKnhtaXRfY2J1ZmZzOwkJCS8qIG50eGJ1ZnMg d29ydGggKi8KKwl1X2NoYXIJICoqeG1pdF9jYnVmZnM7CQkJLyogbnR4YnVmcyB3b3J0aCAqLwog CWludAkgeG1pdF9jb3VudDsKIAogCXN0cnVjdAkgaWVfZW5fYWRkciBtY2FzdF9hZGRyc1tNQVhN Q0FTVCArIDFdOwo= --f46d044787a510e6be04b51c1088--