Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1761679AbXEVBow (ORCPT ); Mon, 21 May 2007 21:44:52 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1757758AbXEVBop (ORCPT ); Mon, 21 May 2007 21:44:45 -0400 Received: from nz-out-0506.google.com ([64.233.162.227]:47698 "EHLO nz-out-0506.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757601AbXEVBon (ORCPT ); Mon, 21 May 2007 21:44:43 -0400 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:references; b=qC3Wz9uQ6nqYmotnOBVJKfn6HAD3oRe/AOCdKKtm4k8uCnSfFk+TqaBETn12jgUQjk1De80nZ/WKp1Q5e3wKm3y4IIiGg1KnccMivsfeVbqh0mQOR5QBNDXd3b2xi7GVOjP9tscVPNZFFeClrfFYQI6vNsFIxbnrNhFpIiia9Eo= Message-ID: <86802c440705211844y19bac676rda9042d6f8c58ce2@mail.gmail.com> Date: Mon, 21 May 2007 18:44:42 -0700 From: "Yinghai Lu" To: "Bjorn Helgaas" Subject: Re: [PATCH]serial: make early_uart to use early_param instead of console_initcall Cc: "Andrew Morton" , "Eric W. Biederman" , "Gerd Hoffmann" , "Andi Kleen" , "Linus Torvalds" , "linux kernel mailing list" In-Reply-To: <86802c440705211705t295ba3efqa4ea6eb94cc509a0@mail.gmail.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_105435_22058478.1179798282397" References: <86802c440705211336h76a3f41ag4847860ea6837485@mail.gmail.com> <200705211642.05620.bjorn.helgaas@hp.com> <86802c440705211705t295ba3efqa4ea6eb94cc509a0@mail.gmail.com> Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 26487 Lines: 372 ------=_Part_105435_22058478.1179798282397 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline > On 5/21/07, Bjorn Helgaas wrote: > > > > I don't want to add asm-ia64/fixmap.h with dummy definitions > > just for this. > > > > Can we add this: > > > > asm-ia64/io.h: #define bt_ioremap ioremap > > asm-x86_64/io.h: #define bt_ioremap early_ioremap > > > > and use bt_ioremap instead? > > Please check if it work with ia64. i add fix_ioremap in include/asm-x86_64/io.h include/asm-i386/io.h include/asm-ia64/io.h command line will be console=uart8250,io,0x3f8,9600n8 console=uart8250,mmio,0xffe50000,115200n8 YH ------=_Part_105435_22058478.1179798282397 Content-Type: text/x-patch; name=earlycon_05212007b.diff; charset=ANSI_X3.4-1968 Content-Transfer-Encoding: base64 X-Attachment-Id: f_f1zpa0jn Content-Disposition: attachment; filename="earlycon_05212007b.diff" ZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24va2VybmVsLXBhcmFtZXRlcnMudHh0IGIvRG9jdW1l bnRhdGlvbi9rZXJuZWwtcGFyYW1ldGVycy50eHQKaW5kZXggMDkyMjBhMS4uNjM0ZDgwOSAxMDA2 NDQKLS0tIGEvRG9jdW1lbnRhdGlvbi9rZXJuZWwtcGFyYW1ldGVycy50eHQKKysrIGIvRG9jdW1l bnRhdGlvbi9rZXJuZWwtcGFyYW1ldGVycy50eHQKQEAgLTQ0NCw4ICs0NDQsMTYgQEAgYW5kIGlz IGJldHdlZW4gMjU2IGFuZCA0MDk2IGNoYXJhY3RlcnMuIEl0IGlzIGRlZmluZWQgaW4gdGhlIGZp bGUKIAkJCURvY3VtZW50YXRpb24vbmV0d29ya2luZy9uZXRjb25zb2xlLnR4dCBmb3IgYW4KIAkJ CWFsdGVybmF0aXZlLgogCi0JCXVhcnQsaW8sPGFkZHI+WyxvcHRpb25zXQotCQl1YXJ0LG1taW8s PGFkZHI+WyxvcHRpb25zXQorCQl1YXJ0ODI1MCxpbyw8YWRkcj5bLG9wdGlvbnNdCisJCXVhcnQ4 MjUwLG1taW8sPGFkZHI+WyxvcHRpb25zXQorCQkJU3RhcnQgYW4gZWFybHksIHBvbGxlZC1tb2Rl IGNvbnNvbGUgb24gdGhlIDgyNTAvMTY1NTAKKwkJCVVBUlQgYXQgdGhlIHNwZWNpZmllZCBJL08g cG9ydCBvciBNTUlPIGFkZHJlc3MsCisJCQlzd2l0Y2hpbmcgdG8gdGhlIG1hdGNoaW5nIHR0eVMg ZGV2aWNlIGxhdGVyLiAgVGhlCisJCQlvcHRpb25zIGFyZSB0aGUgc2FtZSBhcyBmb3IgdHR5Uywg YWJvdmUuCisKKwllYXJseWNvbj0JW0tOTF0gT3V0cHV0IGVhcmx5IGNvbnNvbGUgZGV2aWNlIGFu ZCBvcHRpb25zLgorCQl1YXJ0ODI1MCxpbyw8YWRkcj5bLG9wdGlvbnNdCisJCXVhcnQ4MjUwLG1t aW8sPGFkZHI+WyxvcHRpb25zXQogCQkJU3RhcnQgYW4gZWFybHksIHBvbGxlZC1tb2RlIGNvbnNv bGUgb24gdGhlIDgyNTAvMTY1NTAKIAkJCVVBUlQgYXQgdGhlIHNwZWNpZmllZCBJL08gcG9ydCBv ciBNTUlPIGFkZHJlc3MsCiAJCQlzd2l0Y2hpbmcgdG8gdGhlIG1hdGNoaW5nIHR0eVMgZGV2aWNl IGxhdGVyLiAgVGhlCmRpZmYgLS1naXQgYS9hcmNoL2kzODYva2VybmVsL2hlYWQuUyBiL2FyY2gv aTM4Ni9rZXJuZWwvaGVhZC5TCmluZGV4IGY3NGRmYzQuLjgyNzE0NjYgMTAwNjQ0Ci0tLSBhL2Fy Y2gvaTM4Ni9rZXJuZWwvaGVhZC5TCisrKyBiL2FyY2gvaTM4Ni9rZXJuZWwvaGVhZC5TCkBAIC0x NjgsNiArMTY4LDEyIEBAIHBhZ2VfcGRlX29mZnNldCA9IChfX1BBR0VfT0ZGU0VUID4+IDIwKTsK IC5zZWN0aW9uIC5pbml0LnRleHQsImF4IixAcHJvZ2JpdHMKICNlbmRpZgogCisJLyogRG8gYW4g ZWFybHkgaW5pdGlhbGl6YXRpb24gb2YgdGhlIGZpeG1hcCBhcmVhICovCisJbW92bCAkKHN3YXBw ZXJfcGdfZGlyIC0gX19QQUdFX09GRlNFVCksICVlZHgKKwltb3ZsICQoc3dhcHBlcl9wZ19wbWQg LSBfX1BBR0VfT0ZGU0VUKSwgJWVheAorCWFkZGwgJDB4MDA3LCAlZWF4CQkJLyogMHgwMDcgPSBQ UkVTRU5UK1JXK1VTRVIgKi8KKwltb3ZsICVlYXgsIDQwOTIoJWVkeCkKKwogI2lmZGVmIENPTkZJ R19TTVAKIEVOVFJZKHN0YXJ0dXBfMzJfc21wKQogCWNsZApAQCAtNTA3LDYgKzUxMyw4IEBAIEVO VFJZKF9zdGV4dCkKIC5zZWN0aW9uICIuYnNzLnBhZ2VfYWxpZ25lZCIsInciCiBFTlRSWShzd2Fw cGVyX3BnX2RpcikKIAkuZmlsbCAxMDI0LDQsMAorRU5UUlkoc3dhcHBlcl9wZ19wbWQpCisJLmZp bGwgMTAyNCw0LDAKIEVOVFJZKGVtcHR5X3plcm9fcGFnZSkKIAkuZmlsbCA0MDk2LDEsMAogCmRp ZmYgLS1naXQgYS9hcmNoL2lhNjQva2VybmVsL3NldHVwLmMgYi9hcmNoL2lhNjQva2VybmVsL3Nl dHVwLmMKaW5kZXggZWFhNmEyNC4uZGQ3Zjk1YiAxMDA2NDQKLS0tIGEvYXJjaC9pYTY0L2tlcm5l bC9zZXR1cC5jCisrKyBiL2FyY2gvaWE2NC9rZXJuZWwvc2V0dXAuYwpAQCAtMzkwLDEwICszOTAs NiBAQCBlYXJseV9jb25zb2xlX3NldHVwIChjaGFyICpjbWRsaW5lKQogCWlmICghZWZpX3NldHVw X3BjZHBfY29uc29sZShjbWRsaW5lKSkKIAkJZWFybHljb25zKys7CiAjZW5kaWYKLSNpZmRlZiBD T05GSUdfU0VSSUFMXzgyNTBfQ09OU09MRQotCWlmICghZWFybHlfc2VyaWFsX2NvbnNvbGVfaW5p dChjbWRsaW5lKSkKLQkJZWFybHljb25zKys7Ci0jZW5kaWYKIAogCXJldHVybiAoZWFybHljb25z KSA/IDAgOiAtMTsKIH0KZGlmZiAtLWdpdCBhL2FyY2gveDg2XzY0L2tlcm5lbC9oZWFkLlMgYi9h cmNoL3g4Nl82NC9rZXJuZWwvaGVhZC5TCmluZGV4IDFmYWI0ODcuLjk0MWM4NGIgMTAwNjQ0Ci0t LSBhL2FyY2gveDg2XzY0L2tlcm5lbC9oZWFkLlMKKysrIGIvYXJjaC94ODZfNjQva2VybmVsL2hl YWQuUwpAQCAtNzMsNyArNzMsMTEgQEAgc3RhcnR1cF82NDoKIAlhZGRxCSVyYnAsIGluaXRfbGV2 ZWw0X3BndCArICg1MTEqOCkoJXJpcCkKIAogCWFkZHEJJXJicCwgbGV2ZWwzX2lkZW50X3BndCAr IDAoJXJpcCkKKwogCWFkZHEJJXJicCwgbGV2ZWwzX2tlcm5lbF9wZ3QgKyAoNTEwKjgpKCVyaXAp CisJYWRkcQklcmJwLCBsZXZlbDNfa2VybmVsX3BndCArICg1MTEqOCkoJXJpcCkKKworCWFkZHEJ JXJicCwgbGV2ZWwyX2ZpeG1hcF9wZ3QgKyAoNTA2KjgpKCVyaXApCiAKIAkvKiBBZGQgYW4gSWRl bnRpdHkgbWFwcGluZyBpZiBJIGFtIGFib3ZlIDFHICovCiAJbGVhcQlfdGV4dCglcmlwKSwgJXJk aQpAQCAtMzE0LDcgKzMxOCwxNiBAQCBORVhUX1BBR0UobGV2ZWwzX2tlcm5lbF9wZ3QpCiAJLmZp bGwJNTEwLDgsMAogCS8qICgyXjQ4LSgyKjEwMjQqMTAyNCoxMDI0KS0oKDJeMzkpKjUxMSkpLygy XjMwKSA9IDUxMCAqLwogCS5xdWFkCWxldmVsMl9rZXJuZWxfcGd0IC0gX19TVEFSVF9LRVJORUxf bWFwICsgX0tFUk5QR19UQUJMRQotCS5maWxsCTEsOCwwCisJLnF1YWQJbGV2ZWwyX2ZpeG1hcF9w Z3QgLSBfX1NUQVJUX0tFUk5FTF9tYXAgKyBfUEFHRV9UQUJMRQorCitORVhUX1BBR0UobGV2ZWwy X2ZpeG1hcF9wZ3QpCisJLmZpbGwJNTA2LDgsMAorCS5xdWFkCWxldmVsMV9maXhtYXBfcGd0IC0g X19TVEFSVF9LRVJORUxfbWFwICsgX1BBR0VfVEFCTEUKKwkvKiA4TUIgcmVzZXJ2ZWQgZm9yIHZz eXNjYWxscyArIGEgMk1CIGhvbGUgPSA0ICsgMSBlbnRyaWVzICovCisJLmZpbGwJNSw4LDAKKwor TkVYVF9QQUdFKGxldmVsMV9maXhtYXBfcGd0KQorCS5maWxsCTUxMiw4LDAKIAogTkVYVF9QQUdF KGxldmVsMl9pZGVudF9wZ3QpCiAJLyogU2luY2UgSSBlYXNpbHkgY2FuLCBtYXAgdGhlIGZpcnN0 IDFHLgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9zY3NpL0tjb25maWcgYi9kcml2ZXJzL3Njc2kvS2Nv bmZpZwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9zZXJpYWwvODI1MC5jIGIvZHJpdmVycy9zZXJpYWwv ODI1MC5jCmluZGV4IGM4NGRhYjAuLjVhOTFhYzUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvc2VyaWFs LzgyNTAuYworKysgYi9kcml2ZXJzL3NlcmlhbC84MjUwLmMKQEAgLTIzNjcsNiArMjM2Nyw5IEBA IHN0YXRpYyBzdHJ1Y3QgdWFydF9vcHMgc2VyaWFsODI1MF9wb3BzID0gewogCS5yZXF1ZXN0X3Bv cnQJPSBzZXJpYWw4MjUwX3JlcXVlc3RfcG9ydCwKIAkuY29uZmlnX3BvcnQJPSBzZXJpYWw4MjUw X2NvbmZpZ19wb3J0LAogCS52ZXJpZnlfcG9ydAk9IHNlcmlhbDgyNTBfdmVyaWZ5X3BvcnQsCisj aWZkZWYgQ09ORklHX1NFUklBTF84MjUwX0NPTlNPTEUKKwkuZmluZF9wb3J0X2Zvcl9lYXJseWNv biA9IHNlcmlhbDgyNTBfZmluZF9wb3J0X2Zvcl9lYXJseWNvbiwKKyNlbmRpZgogfTsKIAogc3Rh dGljIHN0cnVjdCB1YXJ0XzgyNTBfcG9ydCBzZXJpYWw4MjUwX3BvcnRzW1VBUlRfTlJdOwpAQCAt MjUzMyw3ICsyNTM2LDcgQEAgc3RhdGljIGludCBfX2luaXQgc2VyaWFsODI1MF9jb25zb2xlX2lu aXQodm9pZCkKIH0KIGNvbnNvbGVfaW5pdGNhbGwoc2VyaWFsODI1MF9jb25zb2xlX2luaXQpOwog Ci1zdGF0aWMgaW50IF9faW5pdCBmaW5kX3BvcnQoc3RydWN0IHVhcnRfcG9ydCAqcCkKK2ludCBf X2luaXQgZmluZF9wb3J0X3NlcmlhbDgyNTAoc3RydWN0IHVhcnRfcG9ydCAqcCkKIHsKIAlpbnQg bGluZTsKIAlzdHJ1Y3QgdWFydF9wb3J0ICpwb3J0OwpAQCAtMjU0NiwyNiArMjU0OSw2IEBAIHN0 YXRpYyBpbnQgX19pbml0IGZpbmRfcG9ydChzdHJ1Y3QgdWFydF9wb3J0ICpwKQogCXJldHVybiAt RU5PREVWOwogfQogCi1pbnQgX19pbml0IHNlcmlhbDgyNTBfc3RhcnRfY29uc29sZShzdHJ1Y3Qg dWFydF9wb3J0ICpwb3J0LCBjaGFyICpvcHRpb25zKQotewotCWludCBsaW5lOwotCi0JbGluZSA9 IGZpbmRfcG9ydChwb3J0KTsKLQlpZiAobGluZSA8IDApCi0JCXJldHVybiAtRU5PREVWOwotCi0J YWRkX3ByZWZlcnJlZF9jb25zb2xlKCJ0dHlTIiwgbGluZSwgb3B0aW9ucyk7Ci0JcHJpbnRrKCJB ZGRpbmcgY29uc29sZSBvbiB0dHlTJWQgYXQgJXMgMHglbHggKG9wdGlvbnMgJyVzJylcbiIsCi0J CWxpbmUsIHBvcnQtPmlvdHlwZSA9PSBVUElPX01FTSA/ICJNTUlPIiA6ICJJL08gcG9ydCIsCi0J CXBvcnQtPmlvdHlwZSA9PSBVUElPX01FTSA/ICh1bnNpZ25lZCBsb25nKSBwb3J0LT5tYXBiYXNl IDoKLQkJICAgICh1bnNpZ25lZCBsb25nKSBwb3J0LT5pb2Jhc2UsIG9wdGlvbnMpOwotCWlmICgh KHNlcmlhbDgyNTBfY29uc29sZS5mbGFncyAmIENPTl9FTkFCTEVEKSkgewotCQlzZXJpYWw4MjUw X2NvbnNvbGUuZmxhZ3MgJj0gfkNPTl9QUklOVEJVRkZFUjsKLQkJcmVnaXN0ZXJfY29uc29sZSgm c2VyaWFsODI1MF9jb25zb2xlKTsKLQl9Ci0JcmV0dXJuIGxpbmU7Ci19Ci0KICNkZWZpbmUgU0VS SUFMODI1MF9DT05TT0xFCSZzZXJpYWw4MjUwX2NvbnNvbGUKICNlbHNlCiAjZGVmaW5lIFNFUklB TDgyNTBfQ09OU09MRQlOVUxMCmRpZmYgLS1naXQgYS9kcml2ZXJzL3NlcmlhbC84MjUwX2Vhcmx5 LmMgYi9kcml2ZXJzL3NlcmlhbC84MjUwX2Vhcmx5LmMKaW5kZXggN2U1MTExOS4uNWFkMjRkZiAx MDA2NDQKLS0tIGEvZHJpdmVycy9zZXJpYWwvODI1MF9lYXJseS5jCisrKyBiL2RyaXZlcnMvc2Vy aWFsLzgyNTBfZWFybHkuYwpAQCAtMTcsMTMgKzE3LDExIEBACiAgKiB3ZSBsb2NhdGUgdGhlIGRl dmljZSBkaXJlY3RseSBieSBpdHMgTU1JTyBvciBJL08gcG9ydCBhZGRyZXNzLgogICoKICAqIFRo ZSB1c2VyIGNhbiBzcGVjaWZ5IHRoZSBkZXZpY2UgZGlyZWN0bHksIGUuZy4sCi0gKgljb25zb2xl PXVhcnQsaW8sMHgzZjgsOTYwMG44Ci0gKgljb25zb2xlPXVhcnQsbW1pbywweGZmNWUwMDAwLDEx NTIwMG44Ci0gKiBvciBwbGF0Zm9ybSBjb2RlIGNhbiBjYWxsIGVhcmx5X3VhcnRfY29uc29sZV9p bml0KCkgdG8gc2V0Ci0gKiB0aGUgZWFybHkgVUFSVCBkZXZpY2UuCi0gKgotICogQWZ0ZXIgdGhl IG5vcm1hbCBzZXJpYWwgZHJpdmVyIHN0YXJ0cywgd2UgdHJ5IHRvIGxvY2F0ZSB0aGUKLSAqIG1h dGNoaW5nIHR0eVMgZGV2aWNlIGFuZCBzdGFydCBhIGNvbnNvbGUgdGhlcmUuCisgKgllYXJseWNv bj1lYXJseTgyNTAsaW8sMHgzZjgsOTYwMG44CisgKgllYXJseWNvbj1lYXJseTgyNTAsbW1pbyww eGZmNWUwMDAwLDExNTIwMG44CisgKiBvcgorICoJY29uc29sZT1lYXJseTgyNTAsaW8sMHgzZjgs OTYwMG44CisgKgljb25zb2xlPWVhcmx5ODI1MCxtbWlvLDB4ZmY1ZTAwMDAsMTE1MjAwbjgKICAq LwogCiAjaW5jbHVkZSA8bGludXgvdHR5Lmg+CkBAIC0zMiwxNyArMzAsMTcgQEAKICNpbmNsdWRl IDxsaW51eC9zZXJpYWxfY29yZS5oPgogI2luY2x1ZGUgPGxpbnV4L3NlcmlhbF9yZWcuaD4KICNp bmNsdWRlIDxsaW51eC9zZXJpYWwuaD4KKyNpbmNsdWRlIDxsaW51eC9zZXJpYWxfODI1MC5oPgog I2luY2x1ZGUgPGFzbS9pby5oPgogI2luY2x1ZGUgPGFzbS9zZXJpYWwuaD4KIAotc3RydWN0IGVh cmx5X3VhcnRfZGV2aWNlIHsKK3N0cnVjdCBlYXJseV9zZXJpYWw4MjUwX2RldmljZSB7CiAJc3Ry dWN0IHVhcnRfcG9ydCBwb3J0OwogCWNoYXIgb3B0aW9uc1sxNl07CQkvKiBlLmcuLCAxMTUyMDBu OCAqLwogCXVuc2lnbmVkIGludCBiYXVkOwogfTsKIAotc3RhdGljIHN0cnVjdCBlYXJseV91YXJ0 X2RldmljZSBlYXJseV9kZXZpY2UgX19pbml0ZGF0YTsKLXN0YXRpYyBpbnQgZWFybHlfdWFydF9y ZWdpc3RlcmVkIF9faW5pdGRhdGE7CitzdGF0aWMgc3RydWN0IGVhcmx5X3NlcmlhbDgyNTBfZGV2 aWNlIGVhcmx5X2RldmljZSBfX2luaXRkYXRhOwogCiBzdGF0aWMgdW5zaWduZWQgaW50IF9faW5p dCBzZXJpYWxfaW4oc3RydWN0IHVhcnRfcG9ydCAqcG9ydCwgaW50IG9mZnNldCkKIHsKQEAgLTgw LDcgKzc4LDcgQEAgc3RhdGljIHZvaWQgX19pbml0IHB1dGMoc3RydWN0IHVhcnRfcG9ydCAqcG9y dCwgaW50IGMpCiAJc2VyaWFsX291dChwb3J0LCBVQVJUX1RYLCBjKTsKIH0KIAotc3RhdGljIHZv aWQgX19pbml0IGVhcmx5X3VhcnRfd3JpdGUoc3RydWN0IGNvbnNvbGUgKmNvbnNvbGUsIGNvbnN0 IGNoYXIgKnMsIHVuc2lnbmVkIGludCBjb3VudCkKK3N0YXRpYyB2b2lkIF9faW5pdCBlYXJseV9z ZXJpYWw4MjUwX3dyaXRlKHN0cnVjdCBjb25zb2xlICpjb25zb2xlLCBjb25zdCBjaGFyICpzLCB1 bnNpZ25lZCBpbnQgY291bnQpCiB7CiAJc3RydWN0IHVhcnRfcG9ydCAqcG9ydCA9ICZlYXJseV9k ZXZpY2UucG9ydDsKIAl1bnNpZ25lZCBpbnQgaWVyOwpAQCAtMTExLDcgKzEwOSw3IEBAIHN0YXRp YyB1bnNpZ25lZCBpbnQgX19pbml0IHByb2JlX2JhdWQoc3RydWN0IHVhcnRfcG9ydCAqcG9ydCkK IAlyZXR1cm4gKHBvcnQtPnVhcnRjbGsgLyAxNikgLyBxdW90OwogfQogCi1zdGF0aWMgdm9pZCBf X2luaXQgaW5pdF9wb3J0KHN0cnVjdCBlYXJseV91YXJ0X2RldmljZSAqZGV2aWNlKQorc3RhdGlj IHZvaWQgX19pbml0IGluaXRfcG9ydChzdHJ1Y3QgZWFybHlfc2VyaWFsODI1MF9kZXZpY2UgKmRl dmljZSkKIHsKIAlzdHJ1Y3QgdWFydF9wb3J0ICpwb3J0ID0gJmRldmljZS0+cG9ydDsKIAl1bnNp Z25lZCBpbnQgZGl2aXNvcjsKQEAgLTEzMCwxMCArMTI4LDkgQEAgc3RhdGljIHZvaWQgX19pbml0 IGluaXRfcG9ydChzdHJ1Y3QgZWFybHlfdWFydF9kZXZpY2UgKmRldmljZSkKIAlzZXJpYWxfb3V0 KHBvcnQsIFVBUlRfTENSLCBjICYgflVBUlRfTENSX0RMQUIpOwogfQogCi1zdGF0aWMgaW50IF9f aW5pdCBwYXJzZV9vcHRpb25zKHN0cnVjdCBlYXJseV91YXJ0X2RldmljZSAqZGV2aWNlLCBjaGFy ICpvcHRpb25zKQorc3RhdGljIGludCBfX2luaXQgcGFyc2Vfb3B0aW9ucyhzdHJ1Y3QgZWFybHlf c2VyaWFsODI1MF9kZXZpY2UgKmRldmljZSwgY2hhciAqb3B0aW9ucykKIHsKIAlzdHJ1Y3QgdWFy dF9wb3J0ICpwb3J0ID0gJmRldmljZS0+cG9ydDsKLQlpbnQgbWFwc2l6ZSA9IDY0OwogCWludCBt bWlvLCBsZW5ndGg7CiAKIAlpZiAoIW9wdGlvbnMpCkBAIC0xNDMsMTIgKzE0MCw3IEBAIHN0YXRp YyBpbnQgX19pbml0IHBhcnNlX29wdGlvbnMoc3RydWN0IGVhcmx5X3VhcnRfZGV2aWNlICpkZXZp Y2UsIGNoYXIgKm9wdGlvbnMpCiAJaWYgKCFzdHJuY21wKG9wdGlvbnMsICJtbWlvLCIsIDUpKSB7 CiAJCXBvcnQtPmlvdHlwZSA9IFVQSU9fTUVNOwogCQlwb3J0LT5tYXBiYXNlID0gc2ltcGxlX3N0 cnRvdWwob3B0aW9ucyArIDUsICZvcHRpb25zLCAwKTsKLQkJcG9ydC0+bWVtYmFzZSA9IGlvcmVt YXAocG9ydC0+bWFwYmFzZSwgbWFwc2l6ZSk7Ci0JCWlmICghcG9ydC0+bWVtYmFzZSkgewotCQkJ cHJpbnRrKEtFUk5fRVJSICIlczogQ291bGRuJ3QgaW9yZW1hcCAweCVseFxuIiwKLQkJCQlfX0ZV TkNUSU9OX18sIHBvcnQtPm1hcGJhc2UpOwotCQkJcmV0dXJuIC1FTk9NRU07Ci0JCX0KKwkJcG9y dC0+bWVtYmFzZSA9IGZpeF9pb3JlbWFwKEZJWF9FQVJMWUNPTl9NRU1fQkFTRSwgcG9ydC0+bWFw YmFzZSk7CiAJCW1taW8gPSAxOwogCX0gZWxzZSBpZiAoIXN0cm5jbXAob3B0aW9ucywgImlvLCIs IDMpKSB7CiAJCXBvcnQtPmlvdHlwZSA9IFVQSU9fUE9SVDsKQEAgLTE3NSw5ICsxNjcsMTYgQEAg c3RhdGljIGludCBfX2luaXQgcGFyc2Vfb3B0aW9ucyhzdHJ1Y3QgZWFybHlfdWFydF9kZXZpY2Ug KmRldmljZSwgY2hhciAqb3B0aW9ucykKIAlyZXR1cm4gMDsKIH0KIAotc3RhdGljIGludCBfX2lu aXQgZWFybHlfdWFydF9zZXR1cChzdHJ1Y3QgY29uc29sZSAqY29uc29sZSwgY2hhciAqb3B0aW9u cykKK3N0YXRpYyBzdHJ1Y3QgY29uc29sZSBlYXJseV9zZXJpYWw4MjUwX2NvbnNvbGUgX19pbml0 ZGF0YSA9IHsKKwkubmFtZQk9ICJ1YXJ0IiwKKwkud3JpdGUJPSBlYXJseV9zZXJpYWw4MjUwX3dy aXRlLAorCS5mbGFncwk9IENPTl9QUklOVEJVRkZFUiwKKwkuaW5kZXgJPSAtMSwKK307CisKK3N0 YXRpYyBpbnQgX19pbml0IGVhcmx5X3NlcmlhbDgyNTBfc2V0dXAoY2hhciAqb3B0aW9ucykKIHsK LQlzdHJ1Y3QgZWFybHlfdWFydF9kZXZpY2UgKmRldmljZSA9ICZlYXJseV9kZXZpY2U7CisJc3Ry dWN0IGVhcmx5X3NlcmlhbDgyNTBfZGV2aWNlICpkZXZpY2UgPSAmZWFybHlfZGV2aWNlOwogCWlu dCBlcnI7CiAKIAlpZiAoZGV2aWNlLT5wb3J0Lm1lbWJhc2UgfHwgZGV2aWNlLT5wb3J0LmlvYmFz ZSkKQEAgLTE5MCw2MSArMTg5LDQzIEBAIHN0YXRpYyBpbnQgX19pbml0IGVhcmx5X3VhcnRfc2V0 dXAoc3RydWN0IGNvbnNvbGUgKmNvbnNvbGUsIGNoYXIgKm9wdGlvbnMpCiAJcmV0dXJuIDA7CiB9 CiAKLXN0YXRpYyBzdHJ1Y3QgY29uc29sZSBlYXJseV91YXJ0X2NvbnNvbGUgX19pbml0ZGF0YSA9 IHsKLQkubmFtZQk9ICJ1YXJ0IiwKLQkud3JpdGUJPSBlYXJseV91YXJ0X3dyaXRlLAotCS5zZXR1 cAk9IGVhcmx5X3VhcnRfc2V0dXAsCi0JLmZsYWdzCT0gQ09OX1BSSU5UQlVGRkVSLAotCS5pbmRl eAk9IC0xLAotfTsKLQotc3RhdGljIGludCBfX2luaXQgZWFybHlfdWFydF9jb25zb2xlX2luaXQo dm9pZCkKLXsKLQlpZiAoIWVhcmx5X3VhcnRfcmVnaXN0ZXJlZCkgewotCQlyZWdpc3Rlcl9jb25z b2xlKCZlYXJseV91YXJ0X2NvbnNvbGUpOwotCQllYXJseV91YXJ0X3JlZ2lzdGVyZWQgPSAxOwot CX0KLQlyZXR1cm4gMDsKLX0KLWNvbnNvbGVfaW5pdGNhbGwoZWFybHlfdWFydF9jb25zb2xlX2lu aXQpOwotCi1pbnQgX19pbml0IGVhcmx5X3NlcmlhbF9jb25zb2xlX2luaXQoY2hhciAqY21kbGlu ZSkKK3N0YXRpYyBpbnQgX19pbml0IHNldHVwX2Vhcmx5X3NlcmlhbDgyNTBfY29uc29sZShjaGFy ICpjbWRsaW5lKQogewogCWNoYXIgKm9wdGlvbnM7CiAJaW50IGVycjsKIAotCW9wdGlvbnMgPSBz dHJzdHIoY21kbGluZSwgImNvbnNvbGU9dWFydCwiKTsKKwlvcHRpb25zID0gc3Ryc3RyKGNtZGxp bmUsICJ1YXJ0ODI1MCwiKTsKIAlpZiAoIW9wdGlvbnMpCi0JCXJldHVybiAtRU5PREVWOworCQly ZXR1cm4gMDsKIAogCW9wdGlvbnMgPSBzdHJjaHIoY21kbGluZSwgJywnKSArIDE7Ci0JaWYgKChl cnIgPSBlYXJseV91YXJ0X3NldHVwKE5VTEwsIG9wdGlvbnMpKSA8IDApCisJaWYgKChlcnIgPSBl YXJseV9zZXJpYWw4MjUwX3NldHVwKG9wdGlvbnMpKSA8IDApCiAJCXJldHVybiBlcnI7Ci0JcmV0 dXJuIGVhcmx5X3VhcnRfY29uc29sZV9pbml0KCk7CisKKwllYXJseV9zZXJpYWw4MjUwX2NvbnNv bGUuZmxhZ3MgfD0gQ09OX0JPT1Q7CisJcmVnaXN0ZXJfY29uc29sZSgmZWFybHlfc2VyaWFsODI1 MF9jb25zb2xlKTsKKworCS8qIGFkZCBvbmUgZHVtbXkgZW50cnkgaW4gY29uc29sZV9jbWRsaW5l Ki8KKwlhZGRfcHJlZmVycmVkX2NvbnNvbGUoInR0eVMiLCAyNTUsIGVhcmx5X2RldmljZS5vcHRp b25zKTsKKworCXJldHVybiAwOwogfQogCi1zdGF0aWMgaW50IF9faW5pdCBlYXJseV91YXJ0X2Nv bnNvbGVfc3dpdGNoKHZvaWQpCitpbnQgc2VyaWFsODI1MF9maW5kX3BvcnRfZm9yX2Vhcmx5Y29u KHZvaWQpCiB7Ci0Jc3RydWN0IGVhcmx5X3VhcnRfZGV2aWNlICpkZXZpY2UgPSAmZWFybHlfZGV2 aWNlOworCXN0cnVjdCBlYXJseV9zZXJpYWw4MjUwX2RldmljZSAqZGV2aWNlID0gJmVhcmx5X2Rl dmljZTsKIAlzdHJ1Y3QgdWFydF9wb3J0ICpwb3J0ID0gJmRldmljZS0+cG9ydDsKLQlpbnQgbW1p bywgbGluZTsKKwlpbnQgbGluZTsKIAotCWlmICghKGVhcmx5X3VhcnRfY29uc29sZS5mbGFncyAm IENPTl9FTkFCTEVEKSkKLQkJcmV0dXJuIDA7CisJbGluZSA9IGZpbmRfcG9ydF9zZXJpYWw4MjUw KHBvcnQpOwogCi0JLyogVHJ5IHRvIHN0YXJ0IHRoZSBub3JtYWwgZHJpdmVyIG9uIGEgbWF0Y2hp bmcgbGluZS4gICovCi0JbW1pbyA9IChwb3J0LT5pb3R5cGUgPT0gVVBJT19NRU0pOwotCWxpbmUg PSBzZXJpYWw4MjUwX3N0YXJ0X2NvbnNvbGUocG9ydCwgZGV2aWNlLT5vcHRpb25zKTsKIAlpZiAo bGluZSA8IDApCi0JCXByaW50aygiTm8gdHR5UyBkZXZpY2UgYXQgJXMgMHglbHggZm9yIGNvbnNv bGVcbiIsCi0JCQltbWlvID8gIk1NSU8iIDogIkkvTyBwb3J0IiwKLQkJCW1taW8gPyBwb3J0LT5t YXBiYXNlIDoKLQkJCSAgICAodW5zaWduZWQgbG9uZykgcG9ydC0+aW9iYXNlKTsKKwkJcmV0dXJu IC1FTk9ERVY7CiAKLQl1bnJlZ2lzdGVyX2NvbnNvbGUoJmVhcmx5X3VhcnRfY29uc29sZSk7Ci0J aWYgKG1taW8pCi0JCWlvdW5tYXAocG9ydC0+bWVtYmFzZSk7CisJLyogdXBkYXRlIHRoZSBkdW1t eSBlbnRyeSB0byB3aGF0IHdlIHdhbnQgY29uc29sZSB0eXBlICovCisJdXBkYXRlX2NvbnNvbGVf Y21kbGluZV9jb25zb2xlX2luZGV4KCJ0dHlTIiwgMjU1LCBsaW5lKTsKIAogCXJldHVybiAwOwog fQotbGF0ZV9pbml0Y2FsbChlYXJseV91YXJ0X2NvbnNvbGVfc3dpdGNoKTsKKworZWFybHlfcGFy YW0oImVhcmx5Y29uIiwgc2V0dXBfZWFybHlfc2VyaWFsODI1MF9jb25zb2xlKTsKZGlmZiAtLWdp dCBhL2RyaXZlcnMvc2VyaWFsL0tjb25maWcgYi9kcml2ZXJzL3NlcmlhbC9LY29uZmlnCmluZGV4 IDMxNWVhOTkuLjQyMDZhY2UgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvc2VyaWFsL0tjb25maWcKKysr IGIvZHJpdmVycy9zZXJpYWwvS2NvbmZpZwpAQCAtNjIsNiArNjIsMTQgQEAgY29uZmlnIFNFUklB TF84MjUwX0NPTlNPTEUKIAkgIGtlcm5lbCB3aWxsIGF1dG9tYXRpY2FsbHkgdXNlIHRoZSBmaXJz dCBzZXJpYWwgbGluZSwgL2Rldi90dHlTMCwgYXMKIAkgIHN5c3RlbSBjb25zb2xlLgogCisJICB5 b3UgY2FuIHNldCB0aGF0IHVzaW5nIGEga2VybmVsIGNvbW1hbmQgbGluZSBvcHRpb24gc3VjaCBh cworCSAgImVhcmx5Y29uPXVhcnQ4MjUwLGlvLDB4M2Y4LDk2MDBuOCIKKwkgICJlYXJseWNvbj11 YXJ0ODI1MCxtbWlvLDB4ZmY1ZTAwMDAsMTE1MjAwbjgiIG9yCisJICAiY29uc29sZT11YXJ0ODI1 MCxpbywweDNmOCw5NjAwbjgiCisJICAiY29uc29sZT11YXJ0ODI1MCxtbWlvLDB4ZmY1ZTAwMDAs MTE1MjAwbjgiLgorCSAgYW5kIGl0IHdpbGwgc3dpdGNoIHRvIG5vcm1hbCBzZXJpYWwgY29uc29s ZSB3aGVuIGNvcnJlcG9uZGluZyBwb3J0IGlzCisJICByZWFkeS4KKwogCSAgSWYgdW5zdXJlLCBz YXkgTi4KIAogY29uZmlnIFNFUklBTF84MjUwX0dTQwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9zZXJp YWwvc2VyaWFsX2NvcmUuYyBiL2RyaXZlcnMvc2VyaWFsL3NlcmlhbF9jb3JlLmMKaW5kZXggMzI2 MDIwZi4uNGY2MDc2NyAxMDA2NDQKLS0tIGEvZHJpdmVycy9zZXJpYWwvc2VyaWFsX2NvcmUuYwor KysgYi9kcml2ZXJzL3NlcmlhbC9zZXJpYWxfY29yZS5jCkBAIC0yMzAzLDggKzIzMDMsMTEgQEAg aW50IHVhcnRfYWRkX29uZV9wb3J0KHN0cnVjdCB1YXJ0X2RyaXZlciAqZHJ2LCBzdHJ1Y3QgdWFy dF9wb3J0ICpwb3J0KQogCSAqIEl0IG1heSBiZSB0aGF0IHRoZSBwb3J0IHdhcyBub3QgYXZhaWxh YmxlLgogCSAqLwogCWlmIChwb3J0LT50eXBlICE9IFBPUlRfVU5LTk9XTiAmJgotCSAgICBwb3J0 LT5jb25zICYmICEocG9ydC0+Y29ucy0+ZmxhZ3MgJiBDT05fRU5BQkxFRCkpCisJICAgIHBvcnQt PmNvbnMgJiYgIShwb3J0LT5jb25zLT5mbGFncyAmIENPTl9FTkFCTEVEKSkgeworCQlpZihwb3J0 LT5vcHMgJiYgcG9ydC0+b3BzLT5maW5kX3BvcnRfZm9yX2Vhcmx5Y29uKQorCQkJcG9ydC0+b3Bz LT5maW5kX3BvcnRfZm9yX2Vhcmx5Y29uKCk7CiAJCXJlZ2lzdGVyX2NvbnNvbGUocG9ydC0+Y29u cyk7CisJfQogCiAJLyoKIAkgKiBFbnN1cmUgVVBGX0RFQUQgaXMgbm90IHNldC4KZGlmZiAtLWdp dCBhL2luY2x1ZGUvYXNtLWkzODYvZml4bWFwLmggYi9pbmNsdWRlL2FzbS1pMzg2L2ZpeG1hcC5o CmluZGV4IDgwZWEwNTIuLjI0OWU3NTMgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvYXNtLWkzODYvZml4 bWFwLmgKKysrIGIvaW5jbHVkZS9hc20taTM4Ni9maXhtYXAuaApAQCAtNTQsNiArNTQsOCBAQCBl eHRlcm4gdW5zaWduZWQgbG9uZyBfX0ZJWEFERFJfVE9QOwogZW51bSBmaXhlZF9hZGRyZXNzZXMg ewogCUZJWF9IT0xFLAogCUZJWF9WRFNPLAorCUZJWF9EQkdQX0JBU0UsCisJRklYX0VBUkxZQ09O X01FTV9CQVNFLAogI2lmZGVmIENPTkZJR19YODZfTE9DQUxfQVBJQwogCUZJWF9BUElDX0JBU0Us CS8qIGxvY2FsIChDUFUpIEFQSUMpIC0tIHJlcXVpcmVkIGZvciBTTVAgb3Igbm90ICovCiAjZW5k aWYKZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXNtLWkzODYvaW8uaCBiL2luY2x1ZGUvYXNtLWkzODYv aW8uaAppbmRleCBlNzk3NTg2Li42Yzg3NDhkIDEwMDY0NAotLS0gYS9pbmNsdWRlL2FzbS1pMzg2 L2lvLmgKKysrIGIvaW5jbHVkZS9hc20taTM4Ni9pby5oCkBAIC0xMzAsNiArMTMwLDE5IEBAIGV4 dGVybiB2b2lkIGlvdW5tYXAodm9sYXRpbGUgdm9pZCBfX2lvbWVtICphZGRyKTsKIGV4dGVybiB2 b2lkICpidF9pb3JlbWFwKHVuc2lnbmVkIGxvbmcgb2Zmc2V0LCB1bnNpZ25lZCBsb25nIHNpemUp OwogZXh0ZXJuIHZvaWQgYnRfaW91bm1hcCh2b2lkICphZGRyLCB1bnNpZ25lZCBsb25nIHNpemUp OwogCisjaW5jbHVkZSA8YXNtL3BndGFibGUuaD4KKyNpbmNsdWRlIDxhc20vZml4bWFwLmg+CisK K3N0YXRpYyBpbmxpbmUgdm9pZCBfX2lvbWVtICogZml4X2lvcmVtYXAgKHVuc2lnbmVkIGlkeCwg dW5zaWduZWQgbG9uZyBwaHlzKQoreworCXZvaWQgX19pb21lbSAqIHZhZGRyOworCXNldF9maXht YXBfbm9jYWNoZShpZHgsIHBoeXMgJiBQQUdFX01BU0spOworCXZhZGRyID0gKHZvaWQgX19pb21l bSAqKV9fZml4X3RvX3ZpcnQoaWR4KTsKKwl2YWRkciArPSBwaHlzICYgflBBR0VfTUFTSzsKKwor CXJldHVybiB2YWRkcjsKK30KKwogLyogVXNlIGVhcmx5IElPIG1hcHBpbmdzIGZvciBETUkgYmVj YXVzZSBpdCdzIGluaXRpYWxpemVkIGVhcmx5ICovCiAjZGVmaW5lIGRtaV9pb3JlbWFwIGJ0X2lv cmVtYXAKICNkZWZpbmUgZG1pX2lvdW5tYXAgYnRfaW91bm1hcApkaWZmIC0tZ2l0IGEvaW5jbHVk ZS9hc20taWE2NC9pby5oIGIvaW5jbHVkZS9hc20taWE2NC9pby5oCmluZGV4IGViMTdhODYuLmUy OWVhZjggMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvYXNtLWlhNjQvaW8uaAorKysgYi9pbmNsdWRlL2Fz bS1pYTY0L2lvLmgKQEAgLTQyMyw2ICs0MjMsMTAgQEAgZXh0ZXJuIHZvaWQgX19pb21lbSAqIGlv cmVtYXAodW5zaWduZWQgbG9uZyBvZmZzZXQsIHVuc2lnbmVkIGxvbmcgc2l6ZSk7CiBleHRlcm4g dm9pZCBfX2lvbWVtICogaW9yZW1hcF9ub2NhY2hlICh1bnNpZ25lZCBsb25nIG9mZnNldCwgdW5z aWduZWQgbG9uZyBzaXplKTsKIGV4dGVybiB2b2lkIGlvdW5tYXAgKHZvbGF0aWxlIHZvaWQgX19p b21lbSAqYWRkcik7CiAKKy8qIGZvciBjb25zb2xlPXVhcnQ4MjUwLG1taW8sMHhmZmU1MDAwLDk2 MDBuOCAqLworI2RlZmluZSBGSVhfRUFSTFlDT05fTUVNX0JBU0UgMQorI2RlZmluZSBmaXhfaW9y ZW1hcChpZHgsIHBoeXMpIGlvcmVtYXAocGh5cywgNjQpCisKIC8qIFVzZSBub3JtYWwgSU8gbWFw cGluZ3MgZm9yIERNSSAqLwogI2RlZmluZSBkbWlfaW9yZW1hcCBpb3JlbWFwCiAjZGVmaW5lIGRt aV9pb3VubWFwKHgsbCkgaW91bm1hcCh4KQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9hc20teDg2XzY0 L2ZpeG1hcC5oIGIvaW5jbHVkZS9hc20teDg2XzY0L2ZpeG1hcC5oCmluZGV4IGU5MGUxNjcuLjJh Y2I5YjcgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvYXNtLXg4Nl82NC9maXhtYXAuaAorKysgYi9pbmNs dWRlL2FzbS14ODZfNjQvZml4bWFwLmgKQEAgLTM1LDYgKzM1LDggQEAgZW51bSBmaXhlZF9hZGRy ZXNzZXMgewogCVZTWVNDQUxMX0xBU1RfUEFHRSwKIAlWU1lTQ0FMTF9GSVJTVF9QQUdFID0gVlNZ U0NBTExfTEFTVF9QQUdFICsgKChWU1lTQ0FMTF9FTkQtVlNZU0NBTExfU1RBUlQpID4+IFBBR0Vf U0hJRlQpIC0gMSwKIAlWU1lTQ0FMTF9IUEVULAorCUZJWF9EQkdQX0JBU0UsCisJRklYX0VBUkxZ Q09OX01FTV9CQVNFLAogCUZJWF9IUEVUX0JBU0UsCiAJRklYX0FQSUNfQkFTRSwJLyogbG9jYWwg KENQVSkgQVBJQykgLS0gcmVxdWlyZWQgZm9yIFNNUCBvciBub3QgKi8KIAlGSVhfSU9fQVBJQ19C QVNFXzAsCkBAIC04NCw3ICs4Niw3IEBAIHN0YXRpYyBfX2Fsd2F5c19pbmxpbmUgdW5zaWduZWQg bG9uZyBmaXhfdG9fdmlydChjb25zdCB1bnNpZ25lZCBpbnQgaWR4KQogCWlmIChpZHggPj0gX19l bmRfb2ZfZml4ZWRfYWRkcmVzc2VzKQogCQlfX3RoaXNfZml4bWFwX2RvZXNfbm90X2V4aXN0KCk7 CiAKLSAgICAgICAgcmV0dXJuIF9fZml4X3RvX3ZpcnQoaWR4KTsKKwlyZXR1cm4gX19maXhfdG9f dmlydChpZHgpOwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL2luY2x1ZGUvYXNtLXg4Nl82NC9p by5oIGIvaW5jbHVkZS9hc20teDg2XzY0L2lvLmgKaW5kZXggZGUyY2Q5YS4uZTJkNjZkZSAxMDA2 NDQKLS0tIGEvaW5jbHVkZS9hc20teDg2XzY0L2lvLmgKKysrIGIvaW5jbHVkZS9hc20teDg2XzY0 L2lvLmgKQEAgLTE0NSw2ICsxNDUsMTkgQEAgZXh0ZXJuIHZvaWQgZWFybHlfaW91bm1hcCh2b2lk ICphZGRyLCB1bnNpZ25lZCBsb25nIHNpemUpOwogZXh0ZXJuIHZvaWQgX19pb21lbSAqIGlvcmVt YXBfbm9jYWNoZSAodW5zaWduZWQgbG9uZyBvZmZzZXQsIHVuc2lnbmVkIGxvbmcgc2l6ZSk7CiBl eHRlcm4gdm9pZCBpb3VubWFwKHZvbGF0aWxlIHZvaWQgX19pb21lbSAqYWRkcik7CiAKKyNpbmNs dWRlIDxhc20vcGd0YWJsZS5oPgorI2luY2x1ZGUgPGFzbS9maXhtYXAuaD4KKworc3RhdGljIGlu bGluZSB2b2lkIF9faW9tZW0gKiBmaXhfaW9yZW1hcCAodW5zaWduZWQgaWR4LCB1bnNpZ25lZCBs b25nIHBoeXMpCit7CisJdm9pZCBfX2lvbWVtICogdmFkZHI7CisJc2V0X2ZpeG1hcF9ub2NhY2hl KGlkeCwgcGh5cyAmIFBBR0VfTUFTSyk7CisJdmFkZHIgPSAodm9pZCBfX2lvbWVtICopX19maXhf dG9fdmlydChpZHgpOworCXZhZGRyICs9IHBoeXMgJiB+UEFHRV9NQVNLOworCisJcmV0dXJuIHZh ZGRyOworfQorCiAvKgogICogSVNBIEkvTyBidXMgbWVtb3J5IGFkZHJlc3NlcyBhcmUgMToxIHdp dGggdGhlIHBoeXNpY2FsIGFkZHJlc3MuCiAgKi8KZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgv Y29uc29sZS5oIGIvaW5jbHVkZS9saW51eC9jb25zb2xlLmgKaW5kZXggNjJlZjZlMS4uNGNiNzc0 OSAxMDA2NDQKLS0tIGEvaW5jbHVkZS9saW51eC9jb25zb2xlLmgKKysrIGIvaW5jbHVkZS9saW51 eC9jb25zb2xlLmgKQEAgLTEwNyw2ICsxMDcsNyBAQCBzdHJ1Y3QgY29uc29sZSB7CiB9OwogCiBl eHRlcm4gaW50IGFkZF9wcmVmZXJyZWRfY29uc29sZShjaGFyICpuYW1lLCBpbnQgaWR4LCBjaGFy ICpvcHRpb25zKTsKK2V4dGVybiBpbnQgdXBkYXRlX2NvbnNvbGVfY21kbGluZV9jb25zb2xlX2lu ZGV4KGNoYXIgKm5hbWUsIGludCBpZHhfb2xkLCBpbnQgaWR4X25ldyk7CiBleHRlcm4gdm9pZCBy ZWdpc3Rlcl9jb25zb2xlKHN0cnVjdCBjb25zb2xlICopOwogZXh0ZXJuIGludCB1bnJlZ2lzdGVy X2NvbnNvbGUoc3RydWN0IGNvbnNvbGUgKik7CiBleHRlcm4gc3RydWN0IGNvbnNvbGUgKmNvbnNv bGVfZHJpdmVyczsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvc2VyaWFsLmggYi9pbmNsdWRl L2xpbnV4L3NlcmlhbC5oCmluZGV4IDMzZmM4Y2IuLmRlYjcxNDMgMTAwNjQ0Ci0tLSBhL2luY2x1 ZGUvbGludXgvc2VyaWFsLmgKKysrIGIvaW5jbHVkZS9saW51eC9zZXJpYWwuaApAQCAtMTc3LDEx ICsxNzcsNSBAQCBzdHJ1Y3Qgc2VyaWFsX2ljb3VudGVyX3N0cnVjdCB7CiAjaWZkZWYgX19LRVJO RUxfXwogI2luY2x1ZGUgPGxpbnV4L2NvbXBpbGVyLmg+CiAKLS8qIEFsbG93IGFyY2hpdGVjdHVy ZXMgdG8gb3ZlcnJpZGUgZW50cmllcyBpbiBzZXJpYWw4MjUwX3BvcnRzW10gYXQgcnVuIHRpbWU6 ICovCi1zdHJ1Y3QgdWFydF9wb3J0OwkvKiBmb3J3YXJkIGRlY2xhcmF0aW9uICovCi1leHRlcm4g aW50IGVhcmx5X3NlcmlhbF9zZXR1cChzdHJ1Y3QgdWFydF9wb3J0ICpwb3J0KTsKLWV4dGVybiBp bnQgZWFybHlfc2VyaWFsX2NvbnNvbGVfaW5pdChjaGFyICpvcHRpb25zKTsKLWV4dGVybiBpbnQg c2VyaWFsODI1MF9zdGFydF9jb25zb2xlKHN0cnVjdCB1YXJ0X3BvcnQgKnBvcnQsIGNoYXIgKm9w dGlvbnMpOwotCiAjZW5kaWYgLyogX19LRVJORUxfXyAqLwogI2VuZGlmIC8qIF9MSU5VWF9TRVJJ QUxfSCAqLwpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51eC9zZXJpYWxfODI1MC5oIGIvaW5jbHVk ZS9saW51eC9zZXJpYWxfODI1MC5oCmluZGV4IDcxMzEwZDguLjBkNzlmYzUgMTAwNjQ0Ci0tLSBh L2luY2x1ZGUvbGludXgvc2VyaWFsXzgyNTAuaAorKysgYi9pbmNsdWRlL2xpbnV4L3NlcmlhbF84 MjUwLmgKQEAgLTYwLDQgKzYwLDcgQEAgdm9pZCBzZXJpYWw4MjUwX3VucmVnaXN0ZXJfcG9ydChp bnQgbGluZSk7CiB2b2lkIHNlcmlhbDgyNTBfc3VzcGVuZF9wb3J0KGludCBsaW5lKTsKIHZvaWQg c2VyaWFsODI1MF9yZXN1bWVfcG9ydChpbnQgbGluZSk7CiAKK2V4dGVybiBpbnQgZmluZF9wb3J0 X3NlcmlhbDgyNTAoc3RydWN0IHVhcnRfcG9ydCAqcCk7CitleHRlcm4gaW50IHNlcmlhbDgyNTBf ZmluZF9wb3J0X2Zvcl9lYXJseWNvbih2b2lkKTsKKwogI2VuZGlmCmRpZmYgLS1naXQgYS9pbmNs dWRlL2xpbnV4L3NlcmlhbF9jb3JlLmggYi9pbmNsdWRlL2xpbnV4L3NlcmlhbF9jb3JlLmgKaW5k ZXggYTNhYzRjOC4uYWMyYjEzYyAxMDA2NDQKLS0tIGEvaW5jbHVkZS9saW51eC9zZXJpYWxfY29y ZS5oCisrKyBiL2luY2x1ZGUvbGludXgvc2VyaWFsX2NvcmUuaApAQCAtMTk5LDYgKzE5OSwxMSBA QCBzdHJ1Y3QgdWFydF9vcHMgewogCXZvaWQJCSgqY29uZmlnX3BvcnQpKHN0cnVjdCB1YXJ0X3Bv cnQgKiwgaW50KTsKIAlpbnQJCSgqdmVyaWZ5X3BvcnQpKHN0cnVjdCB1YXJ0X3BvcnQgKiwgc3Ry dWN0IHNlcmlhbF9zdHJ1Y3QgKik7CiAJaW50CQkoKmlvY3RsKShzdHJ1Y3QgdWFydF9wb3J0ICos IHVuc2lnbmVkIGludCwgdW5zaWduZWQgbG9uZyk7CisKKwkvKgorCSAqIGZvciBlYXJseWNvbiB0 byBjb25zb2xlIHN3aXRjaAorCSAqLworCWludAkJKCpmaW5kX3BvcnRfZm9yX2Vhcmx5Y29uKSh2 b2lkKTsKIH07CiAKICNkZWZpbmUgVUFSVF9DT05GSUdfVFlQRQkoMSA8PCAwKQpkaWZmIC0tZ2l0 IGEvaW5pdC9tYWluLmMgYi9pbml0L21haW4uYwppbmRleCBlYjhiZGJhLi41OGRiZTc1IDEwMDY0 NAotLS0gYS9pbml0L21haW4uYworKysgYi9pbml0L21haW4uYwpAQCAtNDUyLDcgKzQ1MiwxMCBA QCBzdGF0aWMgaW50IF9faW5pdCBkb19lYXJseV9wYXJhbShjaGFyICpwYXJhbSwgY2hhciAqdmFs KQogCXN0cnVjdCBvYnNfa2VybmVsX3BhcmFtICpwOwogCiAJZm9yIChwID0gX19zZXR1cF9zdGFy dDsgcCA8IF9fc2V0dXBfZW5kOyBwKyspIHsKLQkJaWYgKHAtPmVhcmx5ICYmIHN0cmNtcChwYXJh bSwgcC0+c3RyKSA9PSAwKSB7CisJCWlmICgocC0+ZWFybHkgJiYgc3RyY21wKHBhcmFtLCBwLT5z dHIpID09IDApIHx8CisJCSAgICAoc3RyY21wKHBhcmFtLCAiY29uc29sZSIpID09IDAgJiYKKwkJ ICAgICBzdHJjbXAocC0+c3RyLCAiZWFybHljb24iKSA9PSAwKQorCQkpIHsKIAkJCWlmIChwLT5z ZXR1cF9mdW5jKHZhbCkgIT0gMCkKIAkJCQlwcmludGsoS0VSTl9XQVJOSU5HCiAJCQkJICAgICAg ICJNYWxmb3JtZWQgZWFybHkgb3B0aW9uICclcydcbiIsIHBhcmFtKTsKZGlmZiAtLWdpdCBhL2tl cm5lbC9wcmludGsuYyBiL2tlcm5lbC9wcmludGsuYwppbmRleCAwYmJkZWFjLi4wOGExYmMzIDEw MDY0NAotLS0gYS9rZXJuZWwvcHJpbnRrLmMKKysrIGIva2VybmVsL3ByaW50ay5jCkBAIC03MjYs NiArNzI2LDIwIEBAIGludCBfX2luaXQgYWRkX3ByZWZlcnJlZF9jb25zb2xlKGNoYXIgKm5hbWUs IGludCBpZHgsIGNoYXIgKm9wdGlvbnMpCiAJcmV0dXJuIDA7CiB9CiAKK2ludCBfX2luaXQgdXBk YXRlX2NvbnNvbGVfY21kbGluZV9jb25zb2xlX2luZGV4KGNoYXIgKm5hbWUsIGludCBpZHhfb2xk LCBpbnQgaWR4X25ldykKK3sKKwlpbnQgaTsKKworCWZvcihpID0gMDsgaSA8IE1BWF9DTURMSU5F Q09OU09MRVMgJiYgY29uc29sZV9jbWRsaW5lW2ldLm5hbWVbMF07IGkrKykKKwkJaWYgKHN0cmNt cChjb25zb2xlX2NtZGxpbmVbaV0ubmFtZSwgbmFtZSkgPT0gMCAmJgorCQkJICBjb25zb2xlX2Nt ZGxpbmVbaV0uaW5kZXggPT0gaWR4X29sZCkgeworCQkJCWNvbnNvbGVfY21kbGluZVtpXS5pbmRl eCA9IGlkeF9uZXc7CisJCQkJcmV0dXJuIDA7CisJCX0KKworCXJldHVybiAwOworfQorCiAjaWZu ZGVmIENPTkZJR19ESVNBQkxFX0NPTlNPTEVfU1VTUEVORAogLyoqCiAgKiBzdXNwZW5kX2NvbnNv bGUgLSBzdXNwZW5kIHRoZSBjb25zb2xlIHN1YnN5c3RlbQo= ------=_Part_105435_22058478.1179798282397-- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/