From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755555AbYHRSPB (ORCPT ); Mon, 18 Aug 2008 14:15:01 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751837AbYHRSOx (ORCPT ); Mon, 18 Aug 2008 14:14:53 -0400 Received: from rv-out-0506.google.com ([209.85.198.226]:25185 "EHLO rv-out-0506.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751502AbYHRSOw (ORCPT ); Mon, 18 Aug 2008 14:14:52 -0400 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:cc:in-reply-to:mime-version :content-type:references; b=gHrwnMdYVb5cQWOHYiEeQrQfgqTnSRPrdRW99tAcF+/4rYdeUl1iqn4eI3sleRqbYs N5ovNNIdYmRx505cE6GEWS/XTRUPFJyKmIxXkOmeuSwhSLDT2gaLhEpp6QnedPQnNC2Z uL1c7qFfPkmCom2BlZaonAeQCkxiGXCx+vUF4= Message-ID: <86802c440808181114v478d786cwc7a20b25d47d7ffe@mail.gmail.com> Date: Mon, 18 Aug 2008 11:14:51 -0700 From: "Yinghai Lu" To: "Ingo Molnar" Subject: Re: [PATCH 2/2] irq: rename irq_desc() to to_irq_desc() Cc: "Thomas Gleixner" , "H. Peter Anvin" , "Andrew Morton" , linux-kernel@vger.kernel.org In-Reply-To: <20080818073747.GC30694@elte.hu> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_73793_6753697.1219083291597" References: <1219032749-9312-1-git-send-email-yhlu.kernel@gmail.com> <1219032749-9312-2-git-send-email-yhlu.kernel@gmail.com> <1219032749-9312-3-git-send-email-yhlu.kernel@gmail.com> <20080818073747.GC30694@elte.hu> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org ------=_Part_73793_6753697.1219083291597 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline On Mon, Aug 18, 2008 at 12:37 AM, Ingo Molnar wrote: > > * Yinghai Lu wrote: > >> So could revert back to use irq_desc[] for other arch except x86 >> >> Signed-off-by: Yinghai Lu > > great! > > could we get rid of the remaining non-x86 arch changes too, please? > > - __do_IRQ(): why is the change needed? Architectures that want to use > sparse IRQs should first properly convert to genirq (i.e. should get > rid of their __do_IRQ() use). please check attacch patch > > - kstat_cpu / kstat_irqs_cpu: seems unnecessary now? that is needed > > - create_irq prototype return value change: cannot we limit the irq > space to 0..INT_MAX, and leave the prototype alone? > > - create_irq(int) argument change: how about introducing a new > create_irq_nr(int) variant, while the create_irq(void) function would > just call create_irq_nr(0) ? will send out another patch later YH ------=_Part_73793_6753697.1219083291597 Content-Type: text/x-patch; name=irq_desc__to_irq_desc_fix1.patch Content-Transfer-Encoding: base64 X-Attachment-Id: f_fk1enw4l0 Content-Disposition: attachment; filename=irq_desc__to_irq_desc_fix1.patch W1BBVENIXSBpcnE6IHJlbmFtZSBpcnFfZGVzYygpIHRvIHRvX2lycV9kZXNjKCkgLSBmaXgKCnNv bWUgbGVmdCBvdmVycy4KClNpZ25lZC1vZmYtYnk6IFlpbmdoYWkgTHUgPHlobHUua2VybmVsQGdt YWlsLmNvbT4KCi0tLQogYXJjaC9hbHBoYS9rZXJuZWwvaXJxLmMgICAgICAgICAgICAgICB8ICAg IDIgKy0KIGFyY2gvYXJtL2tlcm5lbC9pcnEuYyAgICAgICAgICAgICAgICAgfCAgIDEwICsrKyst LS0tLS0KIGFyY2gvYXZyMzIva2VybmVsL2lycS5jICAgICAgICAgICAgICAgfCAgICA4ICsrKy0t LS0tCiBhcmNoL2NyaXMva2VybmVsL2lycS5jICAgICAgICAgICAgICAgIHwgICAgMiArLQogYXJj aC9oODMwMC9rZXJuZWwvaXJxLmMgICAgICAgICAgICAgICB8ICAgIDIgKy0KIGFyY2gvaWE2NC9r ZXJuZWwvaW9zYXBpYy5jICAgICAgICAgICAgfCAgICAyICstCiBhcmNoL2lhNjQva2VybmVsL21z aV9pYTY0LmMgICAgICAgICAgIHwgICAgMiArLQogYXJjaC9pYTY0L3NuL2tlcm5lbC9pcnEuYyAg ICAgICAgICAgICB8ICAgIDIgKy0KIGFyY2gvaWE2NC9zbi9rZXJuZWwvbXNpX3NuLmMgICAgICAg ICAgfCAgICAyICstCiBhcmNoL20zMnIva2VybmVsL2lycS5jICAgICAgICAgICAgICAgIHwgICAg MiArLQogYXJjaC9tNjhrbm9tbXUva2VybmVsL2lycS5jICAgICAgICAgICB8ICAgIDIgKy0KIGFy Y2gvcGFyaXNjL2tlcm5lbC9pcnEuYyAgICAgICAgICAgICAgfCAgICAyICstCiBhcmNoL3Bvd2Vy cGMvcGxhdGZvcm1zL3Bvd2VybWFjL3BpYy5jIHwgICAgMiArLQogYXJjaC91bS9rZXJuZWwvaXJx LmMgICAgICAgICAgICAgICAgICB8ICAgIDIgKy0KIGFyY2gveDg2L2tlcm5lbC9pb19hcGljLmMg ICAgICAgICAgICAgfCAgICA0ICstLS0KIGRyaXZlcnMvcGFyaXNjL2Rpbm8uYyAgICAgICAgICAg ICAgICAgfCAgICAzICstLQogZHJpdmVycy9wYXJpc2MvZWlzYS5jICAgICAgICAgICAgICAgICB8 ICAgIDQgKy0tLQogZHJpdmVycy9wYXJpc2MvZ3NjLmMgICAgICAgICAgICAgICAgICB8ICAgIDMg Ky0tCiBkcml2ZXJzL3BhcmlzYy9zdXBlcmlvLmMgICAgICAgICAgICAgIHwgICAgNCArLS0tCiBk cml2ZXJzL3hlbi9ldmVudHMuYyAgICAgICAgICAgICAgICAgIHwgICAgMiArLQogaW5jbHVkZS9s aW51eC9pcnEuaCAgICAgICAgICAgICAgICAgICB8ICAgMTAgKysrKystLS0tLQoga2VybmVsL2ly cS9oYW5kbGUuYyAgICAgICAgICAgICAgICAgICB8ICAgIDMgKystCiBrZXJuZWwvaXJxL21pZ3Jh dGlvbi5jICAgICAgICAgICAgICAgIHwgICAgNCArKystCiAyMyBmaWxlcyBjaGFuZ2VkLCAzNSBp bnNlcnRpb25zKCspLCA0NCBkZWxldGlvbnMoLSkKCkluZGV4OiBsaW51eC0yLjYvYXJjaC9hbHBo YS9rZXJuZWwvaXJxLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gbGludXgtMi42Lm9yaWcvYXJjaC9hbHBoYS9r ZXJuZWwvaXJxLmMKKysrIGxpbnV4LTIuNi9hcmNoL2FscGhhL2tlcm5lbC9pcnEuYwpAQCAtMTU2 LDYgKzE1Niw2IEBAIGhhbmRsZV9pcnEoaW50IGlycSkKIAkgKiBhdCBJUEwgMC4KIAkgKi8KIAls b2NhbF9pcnFfZGlzYWJsZSgpOwotCV9fZG9fSVJRKGlycSwgJmlycV9kZXNjW2lycV0pOworCV9f ZG9fSVJRKGlycSk7CiAJaXJxX2V4aXQoKTsKIH0KSW5kZXg6IGxpbnV4LTIuNi9hcmNoL2FybS9r ZXJuZWwvaXJxLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQotLS0gbGludXgtMi42Lm9yaWcvYXJjaC9hcm0va2VybmVs L2lycS5jCisrKyBsaW51eC0yLjYvYXJjaC9hcm0va2VybmVsL2lycS5jCkBAIC02OSwyNCArNjks MjIgQEAgaW50IHNob3dfaW50ZXJydXB0cyhzdHJ1Y3Qgc2VxX2ZpbGUgKnAsCiAJfQogCiAJaWYg KGkgPCBOUl9JUlFTKSB7Ci0JCXN0cnVjdCBpcnFfZGVzYyAqZGVzYyA9IGlycV9kZXNjKGkpOwot Ci0JCXNwaW5fbG9ja19pcnFzYXZlKCZkZXNjLT5sb2NrLCBmbGFncyk7Ci0JCWFjdGlvbiA9IGRl c2MtPmFjdGlvbjsKKwkJc3Bpbl9sb2NrX2lycXNhdmUoJmlycV9kZXNjW2ldLmxvY2ssIGZsYWdz KTsKKwkJYWN0aW9uID0gaXJxX2Rlc2NbaV0uYWN0aW9uOwogCQlpZiAoIWFjdGlvbikKIAkJCWdv dG8gdW5sb2NrOwogCiAJCXNlcV9wcmludGYocCwgIiUzZDogIiwgaSk7CiAJCWZvcl9lYWNoX3By ZXNlbnRfY3B1KGNwdSkKIAkJCXNlcV9wcmludGYocCwgIiUxMHUgIiwga3N0YXRfaXJxc19jcHUo aSwgY3B1KSk7Ci0JCXNlcV9wcmludGYocCwgIiAlMTBzIiwgZGVzYy0+Y2hpcC0+bmFtZSA/IDog Ii0iKTsKKwkJc2VxX3ByaW50ZihwLCAiICUxMHMiLCBpcnFfZGVzY1tpXS5jaGlwLT5uYW1lID8g OiAiLSIpOwogCQlzZXFfcHJpbnRmKHAsICIgICVzIiwgYWN0aW9uLT5uYW1lKTsKIAkJZm9yIChh Y3Rpb24gPSBhY3Rpb24tPm5leHQ7IGFjdGlvbjsgYWN0aW9uID0gYWN0aW9uLT5uZXh0KQogCQkJ c2VxX3ByaW50ZihwLCAiLCAlcyIsIGFjdGlvbi0+bmFtZSk7CiAKIAkJc2VxX3B1dGMocCwgJ1xu Jyk7CiB1bmxvY2s6Ci0JCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJmRlc2MtPmxvY2ssIGZsYWdz KTsKKwkJc3Bpbl91bmxvY2tfaXJxcmVzdG9yZSgmaXJxX2Rlc2NbaV0ubG9jaywgZmxhZ3MpOwog CX0gZWxzZSBpZiAoaSA9PSBOUl9JUlFTKSB7CiAjaWZkZWYgQ09ORklHX0FSQ0hfQUNPUk4KIAkJ c2hvd19maXFfbGlzdChwLCB2KTsKSW5kZXg6IGxpbnV4LTIuNi9hcmNoL2F2cjMyL2tlcm5lbC9p cnEuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09Ci0tLSBsaW51eC0yLjYub3JpZy9hcmNoL2F2cjMyL2tlcm5lbC9pcnEu YworKysgbGludXgtMi42L2FyY2gvYXZyMzIva2VybmVsL2lycS5jCkBAIC01MSwxMCArNTEsOCBA QCBpbnQgc2hvd19pbnRlcnJ1cHRzKHN0cnVjdCBzZXFfZmlsZSAqcCwKIAl9CiAKIAlpZiAoaSA8 IE5SX0lSUVMpIHsKLQkJc3RydWN0IGlycV9kZXNjICpkZXNjID0gaXJxX2Rlc2MoaSk7Ci0KLQkJ c3Bpbl9sb2NrX2lycXNhdmUoJmRlc2MtPmxvY2ssIGZsYWdzKTsKLQkJYWN0aW9uID0gZGVzYy0+ YWN0aW9uOworCQlzcGluX2xvY2tfaXJxc2F2ZSgmaXJxX2Rlc2NbaV0ubG9jaywgZmxhZ3MpOwor CQlhY3Rpb24gPSBpcnFfZGVzY1tpXS5hY3Rpb247CiAJCWlmICghYWN0aW9uKQogCQkJZ290byB1 bmxvY2s7CiAKQEAgLTY4LDcgKzY2LDcgQEAgaW50IHNob3dfaW50ZXJydXB0cyhzdHJ1Y3Qgc2Vx X2ZpbGUgKnAsCiAKIAkJc2VxX3B1dGMocCwgJ1xuJyk7CiAJdW5sb2NrOgotCQlzcGluX3VubG9j a19pcnFyZXN0b3JlKCZkZXNjLT5sb2NrLCBmbGFncyk7CisJCXNwaW5fdW5sb2NrX2lycXJlc3Rv cmUoJmlycV9kZXNjW2ldLmxvY2ssIGZsYWdzKTsKIAl9CiAKIAlyZXR1cm4gMDsKSW5kZXg6IGxp bnV4LTIuNi9hcmNoL2NyaXMva2VybmVsL2lycS5jCj09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGxpbnV4LTIuNi5v cmlnL2FyY2gvY3Jpcy9rZXJuZWwvaXJxLmMKKysrIGxpbnV4LTIuNi9hcmNoL2NyaXMva2VybmVs L2lycS5jCkBAIC05OSw3ICs5OSw3IEBAIGFzbWxpbmthZ2Ugdm9pZCBkb19JUlEoaW50IGlycSwg c3RydWN0IHAKIAkJcHJpbnRrKCJkb19JUlE6IHN0YWNrIG92ZXJmbG93OiAlbFhcbiIsIHNwKTsK IAkJc2hvd19zdGFjayhOVUxMLCAodW5zaWduZWQgbG9uZyAqKXNwKTsKIAl9Ci0JX19kb19JUlEo aXJxLCAmaXJxX2Rlc2NbaXJxXSk7CisJX19kb19JUlEoaXJxKTsKICAgICAgICAgaXJxX2V4aXQo KTsKIAlzZXRfaXJxX3JlZ3Mob2xkX3JlZ3MpOwogfQpJbmRleDogbGludXgtMi42L2FyY2gvaDgz MDAva2VybmVsL2lycS5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGxpbnV4LTIuNi5vcmlnL2FyY2gvaDgzMDAv a2VybmVsL2lycS5jCisrKyBsaW51eC0yLjYvYXJjaC9oODMwMC9rZXJuZWwvaXJxLmMKQEAgLTE3 Niw3ICsxNzYsNyBAQCB2b2lkIF9faW5pdCBpbml0X0lSUSh2b2lkKQogYXNtbGlua2FnZSB2b2lk IGRvX0lSUShpbnQgaXJxKQogewogCWlycV9lbnRlcigpOwotCV9fZG9fSVJRKGlycSwgJmlycV9k ZXNjW2lycV0pOworCV9fZG9fSVJRKGlycSk7CiAJaXJxX2V4aXQoKTsKIH0KIApJbmRleDogbGlu dXgtMi42L2FyY2gvaWE2NC9rZXJuZWwvaW9zYXBpYy5jCj09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGxpbnV4LTIu Ni5vcmlnL2FyY2gvaWE2NC9rZXJuZWwvaW9zYXBpYy5jCisrKyBsaW51eC0yLjYvYXJjaC9pYTY0 L2tlcm5lbC9pb3NhcGljLmMKQEAgLTQ1Miw3ICs0NTIsNyBAQCBpb3NhcGljX2Fja19lZGdlX2ly cSAodW5zaWduZWQgaW50IGlycSkKIAlpcnFfZGVzY190ICppZGVzYyA9IGlycV9kZXNjICsgaXJx OwogCiAJaXJxX2NvbXBsZXRlX21vdmUoaXJxKTsKLQltb3ZlX25hdGl2ZV9pcnEoaXJxLCBpZGVz Yyk7CisJbW92ZV9uYXRpdmVfaXJxKGlycSk7CiAJLyoKIAkgKiBPbmNlIHdlIGhhdmUgcmVjb3Jk ZWQgSVJRX1BFTkRJTkcgYWxyZWFkeSwgd2UgY2FuIG1hc2sgdGhlCiAJICogaW50ZXJydXB0IGZv ciByZWFsLiBUaGlzIHByZXZlbnRzIElSUSBzdG9ybXMgZnJvbSB1bmhhbmRsZWQKSW5kZXg6IGxp bnV4LTIuNi9hcmNoL2lhNjQva2VybmVsL21zaV9pYTY0LmMKPT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gbGludXgt Mi42Lm9yaWcvYXJjaC9pYTY0L2tlcm5lbC9tc2lfaWE2NC5jCisrKyBsaW51eC0yLjYvYXJjaC9p YTY0L2tlcm5lbC9tc2lfaWE2NC5jCkBAIC0xMjAsNyArMTIwLDcgQEAgdm9pZCBpYTY0X3RlYXJk b3duX21zaV9pcnEodW5zaWduZWQgaW50CiBzdGF0aWMgdm9pZCBpYTY0X2Fja19tc2lfaXJxKHVu c2lnbmVkIGludCBpcnEpCiB7CiAJaXJxX2NvbXBsZXRlX21vdmUoaXJxKTsKLQltb3ZlX25hdGl2 ZV9pcnEoaXJxLCAmaXJxX2Rlc2NbaXJxXSk7CisJbW92ZV9uYXRpdmVfaXJxKGlycSk7CiAJaWE2 NF9lb2koKTsKIH0KIApJbmRleDogbGludXgtMi42L2FyY2gvaWE2NC9zbi9rZXJuZWwvaXJxLmMK PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQotLS0gbGludXgtMi42Lm9yaWcvYXJjaC9pYTY0L3NuL2tlcm5lbC9pcnEuYwor KysgbGludXgtMi42L2FyY2gvaWE2NC9zbi9rZXJuZWwvaXJxLmMKQEAgLTExMCw3ICsxMTAsNyBA QCBzdGF0aWMgdm9pZCBzbl9hY2tfaXJxKHVuc2lnbmVkIGludCBpcnEpCiAJSFVCX1MoKHU2NCop TE9DQUxfTU1SX0FERFIoU0hfRVZFTlRfT0NDVVJSRURfQUxJQVMpLCBtYXNrKTsKIAlfX3NldF9i aXQoaXJxLCAodm9sYXRpbGUgdm9pZCAqKXBkYS0+c25faW5fc2VydmljZV9pdmVjcyk7CiAKLQlt b3ZlX25hdGl2ZV9pcnEoaXJxLCAmaXJxX2Rlc2NbaXJxXSk7CisJbW92ZV9uYXRpdmVfaXJxKGly cSk7CiB9CiAKIHN0YXRpYyB2b2lkIHNuX2VuZF9pcnEodW5zaWduZWQgaW50IGlycSkKSW5kZXg6 IGxpbnV4LTIuNi9hcmNoL2lhNjQvc24va2VybmVsL21zaV9zbi5jCj09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGxp bnV4LTIuNi5vcmlnL2FyY2gvaWE2NC9zbi9rZXJuZWwvbXNpX3NuLmMKKysrIGxpbnV4LTIuNi9h cmNoL2lhNjQvc24va2VybmVsL21zaV9zbi5jCkBAIC0yMTAsNyArMjEwLDcgQEAgc3RhdGljIHZv aWQgc25fc2V0X21zaV9pcnFfYWZmaW5pdHkodW5zaQogCiBzdGF0aWMgdm9pZCBzbl9hY2tfbXNp X2lycSh1bnNpZ25lZCBpbnQgaXJxKQogewotCW1vdmVfbmF0aXZlX2lycShpcnEsICZpcnFfZGVz Y1tpcnFdKTsKKwltb3ZlX25hdGl2ZV9pcnEoaXJxKTsKIAlpYTY0X2VvaSgpOwogfQogCkluZGV4 OiBsaW51eC0yLjYvYXJjaC9tMzJyL2tlcm5lbC9pcnEuYwo9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBsaW51eC0y LjYub3JpZy9hcmNoL20zMnIva2VybmVsL2lycS5jCisrKyBsaW51eC0yLjYvYXJjaC9tMzJyL2tl cm5lbC9pcnEuYwpAQCAtODQsNyArODQsNyBAQCBhc21saW5rYWdlIHVuc2lnbmVkIGludCBkb19J UlEoaW50IGlycSwKICNpZmRlZiBDT05GSUdfREVCVUdfU1RBQ0tPVkVSRkxPVwogCS8qIEZJWE1F IE0zMlIgKi8KICNlbmRpZgotCV9fZG9fSVJRKGlycSwgJmlycV9kZXNjW2lycV0pOworCV9fZG9f SVJRKGlycSk7CiAJaXJxX2V4aXQoKTsKIAlzZXRfaXJxX3JlZ3Mob2xkX3JlZ3MpOwogCkluZGV4 OiBsaW51eC0yLjYvYXJjaC9tNjhrbm9tbXUva2VybmVsL2lycS5jCj09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGxp bnV4LTIuNi5vcmlnL2FyY2gvbTY4a25vbW11L2tlcm5lbC9pcnEuYworKysgbGludXgtMi42L2Fy Y2gvbTY4a25vbW11L2tlcm5lbC9pcnEuYwpAQCAtMjMsNyArMjMsNyBAQCBhc21saW5rYWdlIHZv aWQgZG9fSVJRKGludCBpcnEsIHN0cnVjdCBwCiAJc3RydWN0IHB0X3JlZ3MgKm9sZHJlZ3MgPSBz ZXRfaXJxX3JlZ3MocmVncyk7CiAKIAlpcnFfZW50ZXIoKTsKLQlfX2RvX0lSUShpcnEsICZpcnFf ZGVzY1tpcnFdKTsKKwlfX2RvX0lSUShpcnEpOwogCWlycV9leGl0KCk7CiAKIAlzZXRfaXJxX3Jl Z3Mob2xkcmVncyk7CkluZGV4OiBsaW51eC0yLjYvYXJjaC9wYXJpc2Mva2VybmVsL2lycS5jCj09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0KLS0tIGxpbnV4LTIuNi5vcmlnL2FyY2gvcGFyaXNjL2tlcm5lbC9pcnEuYworKysg bGludXgtMi42L2FyY2gvcGFyaXNjL2tlcm5lbC9pcnEuYwpAQCAtMzYzLDcgKzM2Myw3IEBAIHZv aWQgZG9fY3B1X2lycV9tYXNrKHN0cnVjdCBwdF9yZWdzICpyZWcKIAkJZ290byBzZXRfb3V0Owog CX0KICNlbmRpZgotCV9fZG9fSVJRKGlycSwgaXJxX2Rlc2MpOworCV9fZG9fSVJRKGlycSk7CiAK ICBvdXQ6CiAJaXJxX2V4aXQoKTsKSW5kZXg6IGxpbnV4LTIuNi9hcmNoL3Bvd2VycGMvcGxhdGZv cm1zL3Bvd2VybWFjL3BpYy5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGxpbnV4LTIuNi5vcmlnL2FyY2gvcG93 ZXJwYy9wbGF0Zm9ybXMvcG93ZXJtYWMvcGljLmMKKysrIGxpbnV4LTIuNi9hcmNoL3Bvd2VycGMv cGxhdGZvcm1zL3Bvd2VybWFjL3BpYy5jCkBAIC0yMjEsNyArMjIxLDcgQEAgc3RhdGljIGlycXJl dHVybl90IGdhdHdpY2tfYWN0aW9uKGludCBjcAogCQkJY29udGludWU7CiAJCWlycSArPSBfX2ls b2cyKGJpdHMpOwogCQlzcGluX3VubG9ja19pcnFyZXN0b3JlKCZwbWFjX3BpY19sb2NrLCBmbGFn cyk7Ci0JCV9fZG9fSVJRKGlycSwgJmlycV9kZXNjW2lycV0pOworCQlfX2RvX0lSUShpcnEpOwog CQlzcGluX2xvY2tfaXJxc2F2ZSgmcG1hY19waWNfbG9jaywgZmxhZ3MpOwogCQlyYyA9IElSUV9I QU5ETEVEOwogCX0KSW5kZXg6IGxpbnV4LTIuNi9hcmNoL3VtL2tlcm5lbC9pcnEuYwo9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09Ci0tLSBsaW51eC0yLjYub3JpZy9hcmNoL3VtL2tlcm5lbC9pcnEuYworKysgbGludXgtMi42 L2FyY2gvdW0va2VybmVsL2lycS5jCkBAIC0zMzIsNyArMzMyLDcgQEAgdW5zaWduZWQgaW50IGRv X0lSUShpbnQgaXJxLCBzdHJ1Y3QgdW1sXwogewogCXN0cnVjdCBwdF9yZWdzICpvbGRfcmVncyA9 IHNldF9pcnFfcmVncygoc3RydWN0IHB0X3JlZ3MgKilyZWdzKTsKIAlpcnFfZW50ZXIoKTsKLQlf X2RvX0lSUShpcnEsICZpcnFfZGVzY1tpcnFdKTsKKwlfX2RvX0lSUShpcnEpOwogCWlycV9leGl0 KCk7CiAJc2V0X2lycV9yZWdzKG9sZF9yZWdzKTsKIAlyZXR1cm4gMTsKSW5kZXg6IGxpbnV4LTIu Ni9kcml2ZXJzL3BhcmlzYy9kaW5vLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gbGludXgtMi42Lm9yaWcvZHJp dmVycy9wYXJpc2MvZGluby5jCisrKyBsaW51eC0yLjYvZHJpdmVycy9wYXJpc2MvZGluby5jCkBA IC0zODksMTAgKzM4OSw5IEBAIGlscl9hZ2FpbjoKIAlkbyB7CiAJCWludCBsb2NhbF9pcnEgPSBf X2ZmcyhtYXNrKTsKIAkJaW50IGlycSA9IGRpbm9fZGV2LT5nbG9iYWxfaXJxW2xvY2FsX2lycV07 Ci0JCXN0cnVjdCBpcnFfZGVzYyAqZGVzYyA9IHRvX2lycV9kZXNjKGlycSk7CiAJCURCRyhLRVJO X0RFQlVHICIlcyglZCwgJXApIG1hc2sgMHgleFxuIiwKIAkJCV9fZnVuY19fLCBpcnEsIGludHJf ZGV2LCBtYXNrKTsKLQkJX19kb19JUlEoaXJxLCBkZXNjKTsKKwkJX19kb19JUlEoaXJxKTsKIAkJ bWFzayAmPSB+KDEgPDwgbG9jYWxfaXJxKTsKIAl9IHdoaWxlIChtYXNrKTsKIApJbmRleDogbGlu dXgtMi42L2RyaXZlcnMvcGFyaXNjL2Vpc2EuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBsaW51eC0yLjYub3Jp Zy9kcml2ZXJzL3BhcmlzYy9laXNhLmMKKysrIGxpbnV4LTIuNi9kcml2ZXJzL3BhcmlzYy9laXNh LmMKQEAgLTIwMiw3ICsyMDIsNiBAQCBzdGF0aWMgaXJxcmV0dXJuX3QgZWlzYV9pcnEoaW50IHdh eF9pcnEsCiB7CiAJaW50IGlycSA9IGdzY19yZWFkYigweGZjMDFmMDAwKTsgLyogRUlTQSBzdXBw b3J0cyAxNiBpcnFzICovCiAJdW5zaWduZWQgbG9uZyBmbGFnczsKLQlzdHJ1Y3QgaXJxX2Rlc2Mg KmRlc2M7CiAgICAgICAgIAogCXNwaW5fbG9ja19pcnFzYXZlKCZlaXNhX2lycV9sb2NrLCBmbGFn cyk7CiAJLyogcmVhZCBJUlIgY29tbWFuZCAqLwpAQCAtMjM0LDggKzIzMyw3IEBAIHN0YXRpYyBp cnFyZXR1cm5fdCBlaXNhX2lycShpbnQgd2F4X2lycSwKIAl9CiAJc3Bpbl91bmxvY2tfaXJxcmVz dG9yZSgmZWlzYV9pcnFfbG9jaywgZmxhZ3MpOwogCi0JZGVzYyA9IHRvX2lycV9kZXNjKGlycSk7 Ci0JX19kb19JUlEoaXJxLCBkZXNjKTsKKwlfX2RvX0lSUShpcnEpOwogICAgCiAJc3Bpbl9sb2Nr X2lycXNhdmUoJmVpc2FfaXJxX2xvY2ssIGZsYWdzKTsKIAkvKiB1bm1hc2sgKi8KSW5kZXg6IGxp bnV4LTIuNi9kcml2ZXJzL3BhcmlzYy9nc2MuYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBsaW51eC0yLjYub3Jp Zy9kcml2ZXJzL3BhcmlzYy9nc2MuYworKysgbGludXgtMi42L2RyaXZlcnMvcGFyaXNjL2dzYy5j CkBAIC04Nyw4ICs4Nyw3IEBAIGlycXJldHVybl90IGdzY19hc2ljX2ludHIoaW50IGdzY19hc2lj X2kKIAlkbyB7CiAJCWludCBsb2NhbF9pcnEgPSBfX2ZmcyhpcnIpOwogCQl1bnNpZ25lZCBpbnQg aXJxID0gZ3NjX2FzaWMtPmdsb2JhbF9pcnFbbG9jYWxfaXJxXTsKLQkJc3RydWN0IGlycV9kZXNj ICpkZXNjID0gdG9faXJxX2Rlc2MoaXJxKTsKLQkJX19kb19JUlEoaXJxLCBkZXNjKTsKKwkJX19k b19JUlEoaXJxKTsKIAkJaXJyICY9IH4oMSA8PCBsb2NhbF9pcnEpOwogCX0gd2hpbGUgKGlycik7 CiAKSW5kZXg6IGxpbnV4LTIuNi9kcml2ZXJzL3BhcmlzYy9zdXBlcmlvLmMKPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot LS0gbGludXgtMi42Lm9yaWcvZHJpdmVycy9wYXJpc2Mvc3VwZXJpby5jCisrKyBsaW51eC0yLjYv ZHJpdmVycy9wYXJpc2Mvc3VwZXJpby5jCkBAIC05OSw3ICs5OSw2IEBAIHN1cGVyaW9faW50ZXJy dXB0KGludCBwYXJlbnRfaXJxLCB2b2lkICoKIHsKIAl1OCByZXN1bHRzOwogCXU4IGxvY2FsX2ly cTsKLQlzdHJ1Y3QgaXJxX2Rlc2MgKmRlc2M7CiAKIAkvKiBQb2xsIHRoZSA4MjU5IHRvIHNlZSBp ZiB0aGVyZSdzIGFuIGludGVycnVwdC4gKi8KIAlvdXRiIChPQ1czX1BPTEwsSUNfUElDMSswKTsK QEAgLTE0MCw4ICsxMzksNyBAQCBzdXBlcmlvX2ludGVycnVwdChpbnQgcGFyZW50X2lycSwgdm9p ZCAqCiAJfQogCiAJLyogQ2FsbCB0aGUgYXBwcm9wcmlhdGUgZGV2aWNlJ3MgaW50ZXJydXB0ICov Ci0JZGVzYyA9IHRvX2lycV9kZXNjKGxvY2FsX2lycSk7Ci0JX19kb19JUlEobG9jYWxfaXJxLCBk ZXNjKTsKKwlfX2RvX0lSUShsb2NhbF9pcnEpOwogCiAJLyogc2V0IEVPSSAtIGZvcmNlcyBhIG5l dyBpbnRlcnJ1cHQgaWYgYSBsb3dlciBwcmlvcml0eSBkZXZpY2UKIAkgKiBzdGlsbCBuZWVkcyBz ZXJ2aWNlLgpJbmRleDogbGludXgtMi42L2RyaXZlcnMveGVuL2V2ZW50cy5jCj09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K LS0tIGxpbnV4LTIuNi5vcmlnL2RyaXZlcnMveGVuL2V2ZW50cy5jCisrKyBsaW51eC0yLjYvZHJp dmVycy94ZW4vZXZlbnRzLmMKQEAgLTY0MCw3ICs2NDAsNyBAQCBzdGF0aWMgdm9pZCBhY2tfZHlu aXJxKHVuc2lnbmVkIGludCBpcnEpCiB7CiAJaW50IGV2dGNobiA9IGV2dGNobl9mcm9tX2lycShp cnEpOwogCi0JbW92ZV9uYXRpdmVfaXJxKGlycSwgdG9faXJxX2Rlc2MoaXJxKSk7CisJbW92ZV9u YXRpdmVfaXJxKGlycSk7CiAKIAlpZiAoVkFMSURfRVZUQ0hOKGV2dGNobikpCiAJCWNsZWFyX2V2 dGNobihldnRjaG4pOwpJbmRleDogbGludXgtMi42L2luY2x1ZGUvbGludXgvaXJxLmgKPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PQotLS0gbGludXgtMi42Lm9yaWcvaW5jbHVkZS9saW51eC9pcnEuaAorKysgbGludXgtMi42 L2luY2x1ZGUvbGludXgvaXJxLmgKQEAgLTI0NCw3ICsyNDQsNyBAQCBleHRlcm4gaW50IHNldHVw X2lycSh1bnNpZ25lZCBpbnQgaXJxLCBzCiAjaWZkZWYgQ09ORklHX0dFTkVSSUNfUEVORElOR19J UlEKIAogdm9pZCBzZXRfcGVuZGluZ19pcnEodW5zaWduZWQgaW50IGlycSwgY3B1bWFza190IG1h c2spOwotdm9pZCBtb3ZlX25hdGl2ZV9pcnEoaW50IGlycSwgc3RydWN0IGlycV9kZXNjICpkZXNj KTsKK3ZvaWQgbW92ZV9uYXRpdmVfaXJxKGludCBpcnEpOwogdm9pZCBtb3ZlX21hc2tlZF9pcnEo aW50IGlycSwgc3RydWN0IGlycV9kZXNjICpkZXNjKTsKIAogI2Vsc2UgLyogQ09ORklHX0dFTkVS SUNfUEVORElOR19JUlEgKi8KQEAgLTI1Myw3ICsyNTMsNyBAQCBzdGF0aWMgaW5saW5lIHZvaWQg bW92ZV9pcnEoaW50IGlycSkKIHsKIH0KIAotc3RhdGljIGlubGluZSB2b2lkIG1vdmVfbmF0aXZl X2lycShpbnQgaXJxLCBzdHJ1Y3QgaXJxX2Rlc2MgKmRlc2MpCitzdGF0aWMgaW5saW5lIHZvaWQg bW92ZV9uYXRpdmVfaXJxKGludCBpcnEpCiB7CiB9CiAKQEAgLTI2OSw3ICsyNjksNyBAQCBzdGF0 aWMgaW5saW5lIHZvaWQgc2V0X3BlbmRpbmdfaXJxKHVuc2lnCiAKICNlbHNlIC8qIENPTkZJR19T TVAgKi8KIAotI2RlZmluZSBtb3ZlX25hdGl2ZV9pcnEoeCwgeSkKKyNkZWZpbmUgbW92ZV9uYXRp dmVfaXJxKHgpCiAjZGVmaW5lIG1vdmVfbWFza2VkX2lycSh4LCB5KQogCiAjZW5kaWYgLyogQ09O RklHX1NNUCAqLwpAQCAtMzAyLDcgKzMwMiw3IEBAIGV4dGVybiB2b2lkIGhhbmRsZV9iYWRfaXJx KHVuc2lnbmVkIGludAogICogTW9ub2xpdGhpYyBkb19JUlEgaW1wbGVtZW50YXRpb24uCiAgKi8K ICNpZm5kZWYgQ09ORklHX0dFTkVSSUNfSEFSRElSUVNfTk9fX0RPX0lSUQotZXh0ZXJuIHVuc2ln bmVkIGludCBfX2RvX0lSUSh1bnNpZ25lZCBpbnQgaXJxLCBzdHJ1Y3QgaXJxX2Rlc2MgKmRlc2Mp OworZXh0ZXJuIHVuc2lnbmVkIGludCBfX2RvX0lSUSh1bnNpZ25lZCBpbnQgaXJxKTsKICNlbmRp ZgogCiAvKgpAQCAtMzE5LDcgKzMxOSw3IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBnZW5lcmljX2hh bmRsZV9pcnFfZGUKIAlpZiAobGlrZWx5KGRlc2MtPmhhbmRsZV9pcnEpKQogCQlkZXNjLT5oYW5k bGVfaXJxKGlycSwgZGVzYyk7CiAJZWxzZQotCQlfX2RvX0lSUShpcnEsIGRlc2MpOworCQlfX2Rv X0lSUShpcnEpOwogI2VuZGlmCiB9CiAKSW5kZXg6IGxpbnV4LTIuNi9rZXJuZWwvaXJxL2hhbmRs ZS5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT0KLS0tIGxpbnV4LTIuNi5vcmlnL2tlcm5lbC9pcnEvaGFuZGxlLmMKKysr IGxpbnV4LTIuNi9rZXJuZWwvaXJxL2hhbmRsZS5jCkBAIC0zODUsMTAgKzM4NSwxMSBAQCBpcnFy ZXR1cm5fdCBoYW5kbGVfSVJRX2V2ZW50KHVuc2lnbmVkIGluCiAgKiBUaGlzIGlzIHRoZSBvcmln aW5hbCB4ODYgaW1wbGVtZW50YXRpb24gd2hpY2ggaXMgdXNlZCBmb3IgZXZlcnkKICAqIGludGVy cnVwdCB0eXBlLgogICovCi11bnNpZ25lZCBpbnQgX19kb19JUlEodW5zaWduZWQgaW50IGlycSwg c3RydWN0IGlycV9kZXNjICpkZXNjKQordW5zaWduZWQgaW50IF9fZG9fSVJRKHVuc2lnbmVkIGlu dCBpcnEpCiB7CiAJc3RydWN0IGlycWFjdGlvbiAqYWN0aW9uOwogCXVuc2lnbmVkIGludCBzdGF0 dXM7CisJc3RydWN0IGlycV9kZXNjICpkZXNjID0gdG9faXJxX2Rlc2MoaXJxKTsKIAogCWtzdGF0 X2lycXNfdGhpc19jcHUoZGVzYykrKzsKIAlpZiAoQ0hFQ0tfSVJRX1BFUl9DUFUoZGVzYy0+c3Rh dHVzKSkgewpJbmRleDogbGludXgtMi42L2tlcm5lbC9pcnEvbWlncmF0aW9uLmMKPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PQotLS0gbGludXgtMi42Lm9yaWcva2VybmVsL2lycS9taWdyYXRpb24uYworKysgbGludXgtMi42 L2tlcm5lbC9pcnEvbWlncmF0aW9uLmMKQEAgLTU3LDggKzU3LDEwIEBAIHZvaWQgbW92ZV9tYXNr ZWRfaXJxKGludCBpcnEsIHN0cnVjdCBpcnEKIAljcHVzX2NsZWFyKGRlc2MtPnBlbmRpbmdfbWFz ayk7CiB9CiAKLXZvaWQgbW92ZV9uYXRpdmVfaXJxKGludCBpcnEsIHN0cnVjdCBpcnFfZGVzYyAq ZGVzYykKK3ZvaWQgbW92ZV9uYXRpdmVfaXJxKGludCBpcnEpCiB7CisJc3RydWN0IGlycV9kZXNj ICpkZXNjID0gdG9faXJxX2Rlc2MoaXJxKTsKKwogCWlmIChsaWtlbHkoIShkZXNjLT5zdGF0dXMg JiBJUlFfTU9WRV9QRU5ESU5HKSkpCiAJCXJldHVybjsKIApJbmRleDogbGludXgtMi42L2FyY2gv eDg2L2tlcm5lbC9pb19hcGljLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gbGludXgtMi42Lm9yaWcvYXJjaC94 ODYva2VybmVsL2lvX2FwaWMuYworKysgbGludXgtMi42L2FyY2gveDg2L2tlcm5lbC9pb19hcGlj LmMKQEAgLTI0MjYsMTAgKzI0MjYsOCBAQCBzdGF0aWMgdm9pZCBhY2tfeDJhcGljX2VkZ2UodW5z aWduZWQgaW50CiAKIHN0YXRpYyB2b2lkIGFja19hcGljX2VkZ2UodW5zaWduZWQgaW50IGlycSkK IHsKLQlzdHJ1Y3QgaXJxX2Rlc2MgKmRlc2MgPSB0b19pcnFfZGVzYyhpcnEpOwotCiAJaXJxX2Nv bXBsZXRlX21vdmUoaXJxKTsKLQltb3ZlX25hdGl2ZV9pcnEoaXJxLCBkZXNjKTsKKwltb3ZlX25h dGl2ZV9pcnEoaXJxKTsKIAlhY2tfQVBJQ19pcnEoKTsKIH0KIAo= ------=_Part_73793_6753697.1219083291597--