From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id D3D85C25B75 for ; Fri, 31 May 2024 20:57:22 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5F1F66B00A2; Fri, 31 May 2024 16:57:22 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 5A0D26B00A3; Fri, 31 May 2024 16:57:22 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 41C606B00A4; Fri, 31 May 2024 16:57:22 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 1BAF36B00A2 for ; Fri, 31 May 2024 16:57:22 -0400 (EDT) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id BFE671A0D95 for ; Fri, 31 May 2024 20:57:21 +0000 (UTC) X-FDA: 82179901482.15.B134080 Received: from mail-ed1-f50.google.com (mail-ed1-f50.google.com [209.85.208.50]) by imf22.hostedemail.com (Postfix) with ESMTP id E7B66C0002 for ; Fri, 31 May 2024 20:57:19 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=YzbfCXpN; spf=pass (imf22.hostedemail.com: domain of shy828301@gmail.com designates 209.85.208.50 as permitted sender) smtp.mailfrom=shy828301@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1717189040; a=rsa-sha256; cv=none; b=yNUmsniJ67Fd2hXLucQGsg39yQH5UjxIu/AYkL7KflTvhPzrCoFhpkb2Y7gt/miQp9mdID lm8YgzQSb+DVqZj/JPD4BF23HBgRFtbImr8QXb9U4B5kn6nNyl1kae8FpSCw2YaM4n6MWj P9dVwfPBgfPYZaoiPU6C8XQ+8Z15wt8= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=YzbfCXpN; spf=pass (imf22.hostedemail.com: domain of shy828301@gmail.com designates 209.85.208.50 as permitted sender) smtp.mailfrom=shy828301@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1717189040; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=3NsubZpPPLy30Ys5mTt3k2bh+YLEiRM7bKeJwMh+kMo=; b=wvlVEOfuNiHQ24XL9PnhAULEN5GGujDgI8tuEjgX4czkaHDWP5MU0gX7ChvwKWAH237sF5 SCVcqo8havCrDP7i6mEexa/uX33xmIGUaxeeS1uRJ+NRMNy41A+a9E0fvMmjh6n7JwxvtA x5TJCKI+Rp1pjtneYb3Bwum1qWx5oSA= Received: by mail-ed1-f50.google.com with SMTP id 4fb4d7f45d1cf-57a1fe63a96so2079782a12.0 for ; Fri, 31 May 2024 13:57:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1717189038; x=1717793838; darn=kvack.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=3NsubZpPPLy30Ys5mTt3k2bh+YLEiRM7bKeJwMh+kMo=; b=YzbfCXpNIyyIoEa2BV9ytTBqYpFIXO5IZDqbUFZdvZFOib0xkQqQ/1actZWhsOoJu/ X97sg7AtR8dtQxjiSFUvCWHS0XpcZ1aeLfkJqWMQx4zHAycFs14MeBxzhOX3y9s+dHvt HekBYHcW3jvH9RS1qMEy+9tveCtEiU/OkWTq1fF+4j/gRRBJ8+PI70KyAwEd6PpB9G86 IJRZjN6ihztmk4J8FD6ynrfmAcjWiMxeI68LoXygTvati391nORviddOC0YE4eSsqBS3 Ux45anpSCEgBgA+0GF39WuUMTbeIs7v+T4hXKYQqpqtlckvQo+pulq4l/zd+wNAaegoy jBnA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717189038; x=1717793838; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=3NsubZpPPLy30Ys5mTt3k2bh+YLEiRM7bKeJwMh+kMo=; b=F7iDB8CQ5J9Rp9ChQWaP15IzlnhMZ5CTithDtKqKGL+nhMX6KipiL35YVK4obiModQ 3rkSXmkQVFeEDTvnH9VcAoour1TJ5nVdA16NnvbS1UW457T1j4oknZfIAoKBKfPIzWK9 V+0jfGMpy2cDvJIg/dsPs0Ddbr7t/rMYuW82nkF9LrBYQeWdaxvxZ8sAdumJEibRvcxp 8YXTsDbFMVCo04im/CgJntC3rKjFu/xWXHDF2XeXt+hbT/Gu8AGDLmhzAHE+sCv8BfkL ZTLGTV5JjgiNPdOxHcKpM/7tUtCz2CL67PEON9bTwrohsSiAW+LPOoquNF7UL1YU08rZ 90YA== X-Forwarded-Encrypted: i=1; AJvYcCVvHc2dVpEt5lyzUDytSB8MPJcjBLJdjHzi/chFz2uxr9rVu8yLCDAeRDrZQy6C/n+HDu60NjZFynEZPJ8oEjazx9g= X-Gm-Message-State: AOJu0YxpNMfgIV6zSSGr3/6nRO9UBUyuBG1MGninSC7fqZAY9ny/KEIm ZWqaZ/qYFCZTriMo0PtJ7jD0MhsRLywKoUiqoPeiDPSP0okXOI7AZMsMxOR9/n3M8KlOIwRstZg X/xj9ZKZAWD+gBs6bsqvJLGJmwmU= X-Google-Smtp-Source: AGHT+IHhMv0W0V/8F/nA7onkNE1AOsMhuKojmvFok1mFwL6Ldza8m35wsl11mrEYAEqFlSpSl1/ZkSHv5vbY055QwJY= X-Received: by 2002:a50:f682:0:b0:57a:2f7f:4800 with SMTP id 4fb4d7f45d1cf-57a364ac02amr2040010a12.34.1717189038024; Fri, 31 May 2024 13:57:18 -0700 (PDT) MIME-Version: 1.0 References: <202405311534.86cd4043-lkp@intel.com> <890e5a79-8574-4a24-90ab-b9888968d5e5@redhat.com> In-Reply-To: From: Yang Shi Date: Fri, 31 May 2024 13:57:06 -0700 Message-ID: Subject: Re: [linus:master] [mm] efa7df3e3b: kernel_BUG_at_include/linux/page_ref.h To: David Hildenbrand , kernel test robot Cc: Peter Xu , Jason Gunthorpe , Vivek Kasireddy , Rik van Riel , oe-lkp@lists.linux.dev, lkp@intel.com, linux-kernel@vger.kernel.org, Andrew Morton , Matthew Wilcox , Christopher Lameter , linux-mm@kvack.org Content-Type: multipart/mixed; boundary="0000000000009fc4fe0619c63a67" X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: E7B66C0002 X-Stat-Signature: acyakjoa317j376w5b4tjkr16o6jqduf X-HE-Tag: 1717189039-165527 X-HE-Meta: U2FsdGVkX19jl4fDXqTdZ6xjM6paD1xMiSvenrVIGXfwL+iErOpYXJYNwdWRGVzKPl8TiFvc3zTuqYuKDL6Tu08CCxDEja30ZpiIU0ZrDxDT2wZMnjtQX8uQ39lV4YNLNKvvXlVFXkc9ESvD3VITJE156plsJ2bi3EHeRUG16iljnfcI+8qs4CqJDpLlAUQRKsA8CaVzVAxfVfISrKbmZDuGrqETLPZSIs+VQsqeGm4xY8KkJ6UuYxs0Wf38nOKCkqMBUfwa3ZO+ZOBGzafA+QiRbUAPF163RRwcw9Q9HhUc1fJANC77OMgdYZYjVH731jgEXCM/9ExtreKuUID+AlRwijr0qeQJID0HH1u0H0qKT8l6Ke+aznoIWEY+oak7H4iI3U46DBX8JXLuebQRppoyhGaYY95K7cmXIfgxsWNa23x7kglFAdIKdLDcKa8aGRCeudKDt2DCpRiVKnT3mu2I4dlDyo7+GunGuecMG77O1U/nAwjuOngRLL1Jew5hIXujBizkG1n0wGk0eSTnoM75qYkT5MveOcdA+8kNBdiz039exrSHYiTb6BmieTssrjl7sEHCr3p9gg3KYo2aeQ8K99tlxl8t+2Ub7mwNDF5IfiZ0Gu2yQsl4ZCGmCFtyvowfw+phQmjrfGDjfh+sNAkYpEFIGHUTlet+LNIsFrdlZb8zawGU+xOmyxMl4e6I0rVR8eFUXe5tdFBcPCB7uqjO64pMZYlPbC96CbxMs4KO9Md9YDIhw9HleWPPXDovn3IWrdQOqjC+WmSJi9mUqF7xAkdgMg7EaYtDzaxSn2W7R1qZswzTgawFjadjvMkxpeV8avlWzkilrlraFCzOZD40edtuW0SkD87qQqYJ2GzZG8IR8m3GLelsLNPG9xpjmGGzTekNJolRyzzrulgVnsELH2adsgL4petkvu64lnnZfEkF5JRHkSS8/AWA3x7T+M0XZmDoXhFFB2f6lzk rRGHNomc ix7cbPg163RI8M2G3FE9aSCDsqs9wquIj+b6+abplD6AKSB0PMUVQrh0yCUEWl2b5RSfumLdX59jAz6RNMWjjL9Glk7S+FfgObMPf5kB4jxOUpXhPr3lPFDzB6dbJFyVecXs2fpP0SBpxuIj7rGg340zoWeLI1tcuzmIyTVCN45ymS1OEK/Zu/tvEA2ov6FZs2aoF+JkcOEwo/BaR6J3R5IAWe+zrwBwW/OpgMzalAKHeriU0+++iP9JLs1BaKlkkgyNDje6MQKhwnOTPHHAcfl5UIa20ms2oUP5Nb4YQI38yNPFeLjNXWq/+rQHpZilqWYT+NBWBAeqYh20noxkLC0+hlByG/rrslFVfYsg41m5pgodEjCtxFuwZuthCWeQFTrMk0/qYVWwpOYzhv9TK26Iewyzc8JrJ7Qm7CASu2Oj9/VJ7iFioyi81JsnwMnTLsLd4O7QdyOFoxf/DRkQ1+wZ1GGb+RkO2ioti4Lw7Q+p25mrxd+XmxxQGCw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: --0000000000009fc4fe0619c63a67 Content-Type: text/plain; charset="UTF-8" Hi Oliver, I just came up with a quick patch (just build test) per the discussion and attached, can you please to give it a try? Once it is verified, I will refine the patch and submit for review. Thanks, Yang > > > > > > > -- > > Cheers, > > > > David / dhildenb > > --0000000000009fc4fe0619c63a67 Content-Type: application/octet-stream; name="try_grab_folio_fix.patch" Content-Disposition: attachment; filename="try_grab_folio_fix.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lwv5yocf0 ZGlmZiAtLWdpdCBhL21tL2d1cC5jIGIvbW0vZ3VwLmMKaW5kZXggZTE3NDY2ZmQ2MmJiLi45NmE4 NGFiZTRlZjIgMTAwNjQ0Ci0tLSBhL21tL2d1cC5jCisrKyBiL21tL2d1cC5jCkBAIC0xMDAsNyAr MTAwLDcgQEAgc3RhdGljIGlubGluZSBzdHJ1Y3QgZm9saW8gKnRyeV9nZXRfZm9saW8oc3RydWN0 IHBhZ2UgKnBhZ2UsIGludCByZWZzKQogfQogCiAvKioKLSAqIHRyeV9ncmFiX2ZvbGlvKCkgLSBB dHRlbXB0IHRvIGdldCBvciBwaW4gYSBmb2xpby4KKyAqIHRyeV9ncmFiX2ZvbGlvX2Zhc3QoKSAt IEF0dGVtcHQgdG8gZ2V0IG9yIHBpbiBhIGZvbGlvIGluIGZhc3QgcGF0aC4KICAqIEBwYWdlOiAg cG9pbnRlciB0byBwYWdlIHRvIGJlIGdyYWJiZWQKICAqIEByZWZzOiAgdGhlIHZhbHVlIHRvIChl ZmZlY3RpdmVseSkgYWRkIHRvIHRoZSBmb2xpbydzIHJlZmNvdW50CiAgKiBAZmxhZ3M6IGd1cCBm bGFnczogdGhlc2UgYXJlIHRoZSBGT0xMXyogZmxhZyB2YWx1ZXMuCkBAIC0xMjUsNyArMTI1LDcg QEAgc3RhdGljIGlubGluZSBzdHJ1Y3QgZm9saW8gKnRyeV9nZXRfZm9saW8oc3RydWN0IHBhZ2Ug KnBhZ2UsIGludCByZWZzKQogICogbm9yIEZPTExfUElOIHdhcyBzZXQsIHRoYXQncyBjb25zaWRl cmVkIGZhaWx1cmUsIGFuZCBmdXJ0aGVybW9yZSwKICAqIGEgbGlrZWx5IGJ1ZyBpbiB0aGUgY2Fs bGVyLCBzbyBhIHdhcm5pbmcgaXMgYWxzbyBlbWl0dGVkLgogICovCi1zdHJ1Y3QgZm9saW8gKnRy eV9ncmFiX2ZvbGlvKHN0cnVjdCBwYWdlICpwYWdlLCBpbnQgcmVmcywgdW5zaWduZWQgaW50IGZs YWdzKQorc3RydWN0IGZvbGlvICp0cnlfZ3JhYl9mb2xpb19mYXN0KHN0cnVjdCBwYWdlICpwYWdl LCBpbnQgcmVmcywgdW5zaWduZWQgaW50IGZsYWdzKQogewogCXN0cnVjdCBmb2xpbyAqZm9saW87 CiAKQEAgLTIwNSwyOCArMjA1LDI4IEBAIHN0YXRpYyB2b2lkIGd1cF9wdXRfZm9saW8oc3RydWN0 IGZvbGlvICpmb2xpbywgaW50IHJlZnMsIHVuc2lnbmVkIGludCBmbGFncykKIH0KIAogLyoqCi0g KiB0cnlfZ3JhYl9wYWdlKCkgLSBlbGV2YXRlIGEgcGFnZSdzIHJlZmNvdW50IGJ5IGEgZmxhZy1k ZXBlbmRlbnQgYW1vdW50Ci0gKiBAcGFnZTogICAgcG9pbnRlciB0byBwYWdlIHRvIGJlIGdyYWJi ZWQKLSAqIEBmbGFnczogICBndXAgZmxhZ3M6IHRoZXNlIGFyZSB0aGUgRk9MTF8qIGZsYWcgdmFs dWVzLgorICogdHJ5X2dyYWJfZm9saW8oKSAtIGFkZCBhIGZvbGlvJ3MgcmVmY291bnQgYnkgYSBm bGFnLWRlcGVuZGVudCBhbW91bnQKKyAqIEBmb2xpbzogICAgcG9pbnRlciB0byBmb2xpbyB0byBi ZSBncmFiYmVkCisgKiBAcmVmczogICAgIHRoZSB2YWx1ZSB0byAoZWZmZWN0aXZlbHkpIGFkZCB0 byB0aGUgZm9saW8ncyByZWZjb3VudAorICogQGZsYWdzOiAgICBndXAgZmxhZ3M6IHRoZXNlIGFy ZSB0aGUgRk9MTF8qIGZsYWcgdmFsdWVzLgogICoKICAqIFRoaXMgbWlnaHQgbm90IGRvIGFueXRo aW5nIGF0IGFsbCwgZGVwZW5kaW5nIG9uIHRoZSBmbGFncyBhcmd1bWVudC4KICAqCiAgKiAiZ3Jh YiIgbmFtZXMgaW4gdGhpcyBmaWxlIG1lYW4sICJsb29rIGF0IGZsYWdzIHRvIGRlY2lkZSB3aGV0 aGVyIHRvIHVzZQotICogRk9MTF9QSU4gb3IgRk9MTF9HRVQgYmVoYXZpb3IsIHdoZW4gaW5jcmVt ZW50aW5nIHRoZSBwYWdlJ3MgcmVmY291bnQuCisgKiBGT0xMX1BJTiBvciBGT0xMX0dFVCBiZWhh dmlvciwgd2hlbiBpbmNyZW1lbnRpbmcgdGhlIGZvbGlvJ3MgcmVmY291bnQuCiAgKgogICogRWl0 aGVyIEZPTExfUElOIG9yIEZPTExfR0VUIChvciBuZWl0aGVyKSBtYXkgYmUgc2V0LCBidXQgbm90 IGJvdGggYXQgdGhlIHNhbWUKLSAqIHRpbWUuIENhc2VzOiBwbGVhc2Ugc2VlIHRoZSB0cnlfZ3Jh Yl9mb2xpbygpIGRvY3VtZW50YXRpb24sIHdpdGgKLSAqICJyZWZzPTEiLgorICogdGltZS4KICAq CiAgKiBSZXR1cm46IDAgZm9yIHN1Y2Nlc3MsIG9yIGlmIG5vIGFjdGlvbiB3YXMgcmVxdWlyZWQg KGlmIG5laXRoZXIgRk9MTF9QSU4KICAqIG5vciBGT0xMX0dFVCB3YXMgc2V0LCBub3RoaW5nIGlz IGRvbmUpLiBBIG5lZ2F0aXZlIGVycm9yIGNvZGUgZm9yIGZhaWx1cmU6CiAgKgotICogICAtRU5P TUVNCQlGT0xMX0dFVCBvciBGT0xMX1BJTiB3YXMgc2V0LCBidXQgdGhlIHBhZ2UgY291bGQgbm90 CisgKiAgIC1FTk9NRU0JCUZPTExfR0VUIG9yIEZPTExfUElOIHdhcyBzZXQsIGJ1dCB0aGUgZm9s aW8gY291bGQgbm90CiAgKgkJCWJlIGdyYWJiZWQuCiAgKi8KLWludCBfX211c3RfY2hlY2sgdHJ5 X2dyYWJfcGFnZShzdHJ1Y3QgcGFnZSAqcGFnZSwgdW5zaWduZWQgaW50IGZsYWdzKQoraW50IF9f bXVzdF9jaGVjayB0cnlfZ3JhYl9mb2xpbyhzdHJ1Y3QgZm9saW8gKmZvbGlvLCBpbnQgcmVmcywg dW5zaWduZWQgaW50IGZsYWdzKQogewotCXN0cnVjdCBmb2xpbyAqZm9saW8gPSBwYWdlX2ZvbGlv KHBhZ2UpOworCXN0cnVjdCBwYWdlICpwYWdlID0gJmZvbGlvLT5wYWdlOwogCiAJaWYgKFdBUk5f T05fT05DRShmb2xpb19yZWZfY291bnQoZm9saW8pIDw9IDApKQogCQlyZXR1cm4gLUVOT01FTTsK QEAgLTIzNSw3ICsyMzUsNyBAQCBpbnQgX19tdXN0X2NoZWNrIHRyeV9ncmFiX3BhZ2Uoc3RydWN0 IHBhZ2UgKnBhZ2UsIHVuc2lnbmVkIGludCBmbGFncykKIAkJcmV0dXJuIC1FUkVNT1RFSU87CiAK IAlpZiAoZmxhZ3MgJiBGT0xMX0dFVCkKLQkJZm9saW9fcmVmX2luYyhmb2xpbyk7CisJCWZvbGlv X3JlZl9hZGQoZm9saW8sIHJlZnMpOwogCWVsc2UgaWYgKGZsYWdzICYgRk9MTF9QSU4pIHsKIAkJ LyoKIAkJICogRG9uJ3QgdGFrZSBhIHBpbiBvbiB0aGUgemVybyBwYWdlIC0gaXQncyBub3QgZ29p bmcgYW55d2hlcmUKQEAgLTI0NSwxOCArMjQ1LDE4IEBAIGludCBfX211c3RfY2hlY2sgdHJ5X2dy YWJfcGFnZShzdHJ1Y3QgcGFnZSAqcGFnZSwgdW5zaWduZWQgaW50IGZsYWdzKQogCQkJcmV0dXJu IDA7CiAKIAkJLyoKLQkJICogU2ltaWxhciB0byB0cnlfZ3JhYl9mb2xpbygpOiBiZSBzdXJlIHRv ICphbHNvKgotCQkgKiBpbmNyZW1lbnQgdGhlIG5vcm1hbCBwYWdlIHJlZmNvdW50IGZpZWxkIGF0 IGxlYXN0IG9uY2UsCisJCSAqIEluY3JlbWVudCB0aGUgbm9ybWFsIHBhZ2UgcmVmY291bnQgZmll bGQgYXQgbGVhc3Qgb25jZSwKIAkJICogc28gdGhhdCB0aGUgcGFnZSByZWFsbHkgaXMgcGlubmVk LgogCQkgKi8KIAkJaWYgKGZvbGlvX3Rlc3RfbGFyZ2UoZm9saW8pKSB7Ci0JCQlmb2xpb19yZWZf YWRkKGZvbGlvLCAxKTsKLQkJCWF0b21pY19hZGQoMSwgJmZvbGlvLT5fcGluY291bnQpOworCQkJ Zm9saW9fcmVmX2FkZChmb2xpbywgcmVmcyk7CisJCQlhdG9taWNfYWRkKHJlZnMsICZmb2xpby0+ X3BpbmNvdW50KTsKIAkJfSBlbHNlIHsKLQkJCWZvbGlvX3JlZl9hZGQoZm9saW8sIEdVUF9QSU5f Q09VTlRJTkdfQklBUyk7CisJCQlmb2xpb19yZWZfYWRkKGZvbGlvLAorCQkJCQlyZWZzICogKEdV UF9QSU5fQ09VTlRJTkdfQklBUyAtIDEpKTsKIAkJfQogCi0JCW5vZGVfc3RhdF9tb2RfZm9saW8o Zm9saW8sIE5SX0ZPTExfUElOX0FDUVVJUkVELCAxKTsKKwkJbm9kZV9zdGF0X21vZF9mb2xpbyhm b2xpbywgTlJfRk9MTF9QSU5fQUNRVUlSRUQsIHJlZnMpOwogCX0KIAogCXJldHVybiAwOwpAQCAt NTg0LDcgKzU4NCw3IEBAIHN0YXRpYyB1bnNpZ25lZCBsb25nIGh1Z2VwdGVfYWRkcl9lbmQodW5z aWduZWQgbG9uZyBhZGRyLCB1bnNpZ25lZCBsb25nIGVuZCwKICAqLwogc3RhdGljIGludCBndXBf aHVnZXB0ZShzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSwgcHRlX3QgKnB0ZXAsIHVuc2lnbmVk IGxvbmcgc3osCiAJCSAgICAgICB1bnNpZ25lZCBsb25nIGFkZHIsIHVuc2lnbmVkIGxvbmcgZW5k LCB1bnNpZ25lZCBpbnQgZmxhZ3MsCi0JCSAgICAgICBzdHJ1Y3QgcGFnZSAqKnBhZ2VzLCBpbnQg Km5yKQorCQkgICAgICAgc3RydWN0IHBhZ2UgKipwYWdlcywgaW50ICpuciwgYm9vbCBmYXN0KQog ewogCXVuc2lnbmVkIGxvbmcgcHRlX2VuZDsKIAlzdHJ1Y3QgcGFnZSAqcGFnZTsKQEAgLTYwNyw5 ICs2MDcsMTUgQEAgc3RhdGljIGludCBndXBfaHVnZXB0ZShzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3Qg KnZtYSwgcHRlX3QgKnB0ZXAsIHVuc2lnbmVkIGxvbmcgc3oKIAlwYWdlID0gcHRlX3BhZ2UocHRl KTsKIAlyZWZzID0gcmVjb3JkX3N1YnBhZ2VzKHBhZ2UsIHN6LCBhZGRyLCBlbmQsIHBhZ2VzICsg Km5yKTsKIAotCWZvbGlvID0gdHJ5X2dyYWJfZm9saW8ocGFnZSwgcmVmcywgZmxhZ3MpOwotCWlm ICghZm9saW8pCi0JCXJldHVybiAwOworCWlmIChmYXN0KSB7CisJCWZvbGlvID0gdHJ5X2dyYWJf Zm9saW9fZmFzdChwYWdlLCByZWZzLCBmbGFncyk7CisJCWlmICghZm9saW8pCisJCQlyZXR1cm4g MDsKKwl9IGVsc2UgeworCQlmb2xpbyA9IHBhZ2VfZm9saW8ocGFnZSk7CisJCWlmICh0cnlfZ3Jh Yl9mb2xpbyhmb2xpbywgcmVmcywgZmxhZ3MpKQorCQkJcmV0dXJuIDA7CisJfQogCiAJaWYgKHVu bGlrZWx5KHB0ZV92YWwocHRlKSAhPSBwdGVfdmFsKHB0ZXBfZ2V0KHB0ZXApKSkpIHsKIAkJZ3Vw X3B1dF9mb2xpbyhmb2xpbywgcmVmcywgZmxhZ3MpOwpAQCAtNjM3LDcgKzY0Myw3IEBAIHN0YXRp YyBpbnQgZ3VwX2h1Z2VwdGUoc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEsIHB0ZV90ICpwdGVw LCB1bnNpZ25lZCBsb25nIHN6CiBzdGF0aWMgaW50IGd1cF9odWdlcGQoc3RydWN0IHZtX2FyZWFf c3RydWN0ICp2bWEsIGh1Z2VwZF90IGh1Z2VwZCwKIAkJICAgICAgdW5zaWduZWQgbG9uZyBhZGRy LCB1bnNpZ25lZCBpbnQgcGRzaGlmdCwKIAkJICAgICAgdW5zaWduZWQgbG9uZyBlbmQsIHVuc2ln bmVkIGludCBmbGFncywKLQkJICAgICAgc3RydWN0IHBhZ2UgKipwYWdlcywgaW50ICpucikKKwkJ ICAgICAgc3RydWN0IHBhZ2UgKipwYWdlcywgaW50ICpuciwgYm9vbCBmYXN0KQogewogCXB0ZV90 ICpwdGVwOwogCXVuc2lnbmVkIGxvbmcgc3ogPSAxVUwgPDwgaHVnZXBkX3NoaWZ0KGh1Z2VwZCk7 CkBAIC02NDcsNyArNjUzLDcgQEAgc3RhdGljIGludCBndXBfaHVnZXBkKHN0cnVjdCB2bV9hcmVh X3N0cnVjdCAqdm1hLCBodWdlcGRfdCBodWdlcGQsCiAJcHRlcCA9IGh1Z2VwdGVfb2Zmc2V0KGh1 Z2VwZCwgYWRkciwgcGRzaGlmdCk7CiAJZG8gewogCQluZXh0ID0gaHVnZXB0ZV9hZGRyX2VuZChh ZGRyLCBlbmQsIHN6KTsKLQkJcmV0ID0gZ3VwX2h1Z2VwdGUodm1hLCBwdGVwLCBzeiwgYWRkciwg ZW5kLCBmbGFncywgcGFnZXMsIG5yKTsKKwkJcmV0ID0gZ3VwX2h1Z2VwdGUodm1hLCBwdGVwLCBz eiwgYWRkciwgZW5kLCBmbGFncywgcGFnZXMsIG5yLCBmYXN0KTsKIAkJaWYgKHJldCAhPSAxKQog CQkJcmV0dXJuIHJldDsKIAl9IHdoaWxlIChwdGVwKyssIGFkZHIgPSBuZXh0LCBhZGRyICE9IGVu ZCk7CkBAIC02NzQsNyArNjgwLDcgQEAgc3RhdGljIHN0cnVjdCBwYWdlICpmb2xsb3dfaHVnZXBk KHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hLCBodWdlcGRfdCBodWdlcGQsCiAJcHRlcCA9IGh1 Z2VwdGVfb2Zmc2V0KGh1Z2VwZCwgYWRkciwgcGRzaGlmdCk7CiAJcHRsID0gaHVnZV9wdGVfbG9j ayhoLCB2bWEtPnZtX21tLCBwdGVwKTsKIAlyZXQgPSBndXBfaHVnZXBkKHZtYSwgaHVnZXBkLCBh ZGRyLCBwZHNoaWZ0LCBhZGRyICsgUEFHRV9TSVpFLAotCQkJIGZsYWdzLCAmcGFnZSwgJm5yKTsK KwkJCSBmbGFncywgJnBhZ2UsICZuciwgZmFsc2UpOwogCXNwaW5fdW5sb2NrKHB0bCk7CiAKIAlp ZiAocmV0ID09IDEpIHsKQEAgLTY5MSw3ICs2OTcsNyBAQCBzdGF0aWMgc3RydWN0IHBhZ2UgKmZv bGxvd19odWdlcGQoc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEsIGh1Z2VwZF90IGh1Z2VwZCwK IHN0YXRpYyBpbmxpbmUgaW50IGd1cF9odWdlcGQoc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEs IGh1Z2VwZF90IGh1Z2VwZCwKIAkJCSAgICAgdW5zaWduZWQgbG9uZyBhZGRyLCB1bnNpZ25lZCBp bnQgcGRzaGlmdCwKIAkJCSAgICAgdW5zaWduZWQgbG9uZyBlbmQsIHVuc2lnbmVkIGludCBmbGFn cywKLQkJCSAgICAgc3RydWN0IHBhZ2UgKipwYWdlcywgaW50ICpucikKKwkJCSAgICAgc3RydWN0 IHBhZ2UgKipwYWdlcywgaW50ICpuciwgYm9vbCBmYXN0KQogewogCXJldHVybiAwOwogfQpAQCAt Nzc4LDcgKzc4NCw3IEBAIHN0YXRpYyBzdHJ1Y3QgcGFnZSAqZm9sbG93X2h1Z2VfcHVkKHN0cnVj dCB2bV9hcmVhX3N0cnVjdCAqdm1hLAogCSAgICBndXBfbXVzdF91bnNoYXJlKHZtYSwgZmxhZ3Ms IHBhZ2UpKQogCQlyZXR1cm4gRVJSX1BUUigtRU1MSU5LKTsKIAotCXJldCA9IHRyeV9ncmFiX3Bh Z2UocGFnZSwgZmxhZ3MpOworCXJldCA9IHRyeV9ncmFiX2ZvbGlvKHBhZ2VfZm9saW8ocGFnZSks IDEsIGZsYWdzKTsKIAlpZiAocmV0KQogCQlwYWdlID0gRVJSX1BUUihyZXQpOwogCWVsc2UKQEAg LTg1NSw3ICs4NjEsNyBAQCBzdGF0aWMgc3RydWN0IHBhZ2UgKmZvbGxvd19odWdlX3BtZChzdHJ1 Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSwKIAlWTV9CVUdfT05fUEFHRSgoZmxhZ3MgJiBGT0xMX1BJ TikgJiYgUGFnZUFub24ocGFnZSkgJiYKIAkJCSFQYWdlQW5vbkV4Y2x1c2l2ZShwYWdlKSwgcGFn ZSk7CiAKLQlyZXQgPSB0cnlfZ3JhYl9wYWdlKHBhZ2UsIGZsYWdzKTsKKwlyZXQgPSB0cnlfZ3Jh Yl9mb2xpbyhwYWdlX2ZvbGlvKHBhZ2UpLCAxLCBmbGFncyk7CiAJaWYgKHJldCkKIAkJcmV0dXJu IEVSUl9QVFIocmV0KTsKIApAQCAtMTAxNyw4ICsxMDIzLDggQEAgc3RhdGljIHN0cnVjdCBwYWdl ICpmb2xsb3dfcGFnZV9wdGUoc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEsCiAJVk1fQlVHX09O X1BBR0UoKGZsYWdzICYgRk9MTF9QSU4pICYmIFBhZ2VBbm9uKHBhZ2UpICYmCiAJCSAgICAgICAh UGFnZUFub25FeGNsdXNpdmUocGFnZSksIHBhZ2UpOwogCi0JLyogdHJ5X2dyYWJfcGFnZSgpIGRv ZXMgbm90aGluZyB1bmxlc3MgRk9MTF9HRVQgb3IgRk9MTF9QSU4gaXMgc2V0LiAqLwotCXJldCA9 IHRyeV9ncmFiX3BhZ2UocGFnZSwgZmxhZ3MpOworCS8qIHRyeV9ncmFiX2ZvbGlvKCkgZG9lcyBu b3RoaW5nIHVubGVzcyBGT0xMX0dFVCBvciBGT0xMX1BJTiBpcyBzZXQuICovCisJcmV0ID0gdHJ5 X2dyYWJfZm9saW8ocGFnZV9mb2xpbyhwYWdlKSwgMSwgZmxhZ3MpOwogCWlmICh1bmxpa2VseShy ZXQpKSB7CiAJCXBhZ2UgPSBFUlJfUFRSKHJldCk7CiAJCWdvdG8gb3V0OwpAQCAtMTI4Miw3ICsx Mjg4LDcgQEAgc3RhdGljIGludCBnZXRfZ2F0ZV9wYWdlKHN0cnVjdCBtbV9zdHJ1Y3QgKm1tLCB1 bnNpZ25lZCBsb25nIGFkZHJlc3MsCiAJCQlnb3RvIHVubWFwOwogCQkqcGFnZSA9IHB0ZV9wYWdl KGVudHJ5KTsKIAl9Ci0JcmV0ID0gdHJ5X2dyYWJfcGFnZSgqcGFnZSwgZ3VwX2ZsYWdzKTsKKwly ZXQgPSB0cnlfZ3JhYl9mb2xpbyhwYWdlX2ZvbGlvKCpwYWdlKSwgMSwgZ3VwX2ZsYWdzKTsKIAlp ZiAodW5saWtlbHkocmV0KSkKIAkJZ290byB1bm1hcDsKIG91dDoKQEAgLTE2ODUsMjAgKzE2OTEs MTkgQEAgc3RhdGljIGxvbmcgX19nZXRfdXNlcl9wYWdlcyhzdHJ1Y3QgbW1fc3RydWN0ICptbSwK IAkJCSAqIHBhZ2VzLgogCQkJICovCiAJCQlpZiAocGFnZV9pbmNyZW0gPiAxKSB7Ci0JCQkJc3Ry dWN0IGZvbGlvICpmb2xpbzsKKwkJCQlzdHJ1Y3QgZm9saW8gKmZvbGlvID0gcGFnZV9mb2xpbyhw YWdlKTsKIAogCQkJCS8qCiAJCQkJICogU2luY2Ugd2UgYWxyZWFkeSBob2xkIHJlZmNvdW50IG9u IHRoZQogCQkJCSAqIGxhcmdlIGZvbGlvLCB0aGlzIHNob3VsZCBuZXZlciBmYWlsLgogCQkJCSAq LwotCQkJCWZvbGlvID0gdHJ5X2dyYWJfZm9saW8ocGFnZSwgcGFnZV9pbmNyZW0gLSAxLAotCQkJ CQkJICAgICAgIGZvbGxfZmxhZ3MpOwotCQkJCWlmIChXQVJOX09OX09OQ0UoIWZvbGlvKSkgewor CQkJCWlmICh0cnlfZ3JhYl9mb2xpbyhmb2xpbywgcGFnZV9pbmNyZW0gLSAxLAorCQkJCQkJICAg Zm9sbF9mbGFncykpIHsKIAkJCQkJLyoKIAkJCQkJICogUmVsZWFzZSB0aGUgMXN0IHBhZ2UgcmVm IGlmIHRoZQogCQkJCQkgKiBmb2xpbyBpcyBwcm9ibGVtYXRpYywgZmFpbCBoYXJkLgogCQkJCQkg Ki8KLQkJCQkJZ3VwX3B1dF9mb2xpbyhwYWdlX2ZvbGlvKHBhZ2UpLCAxLAorCQkJCQlndXBfcHV0 X2ZvbGlvKGZvbGlvLCAxLAogCQkJCQkJICAgICAgZm9sbF9mbGFncyk7CiAJCQkJCXJldCA9IC1F RkFVTFQ7CiAJCQkJCWdvdG8gb3V0OwpAQCAtMzA0MSw3ICszMDQ2LDcgQEAgc3RhdGljIGludCBn dXBfZmFzdF9wdGVfcmFuZ2UocG1kX3QgcG1kLCBwbWRfdCAqcG1kcCwgdW5zaWduZWQgbG9uZyBh ZGRyLAogCQlWTV9CVUdfT04oIXBmbl92YWxpZChwdGVfcGZuKHB0ZSkpKTsKIAkJcGFnZSA9IHB0 ZV9wYWdlKHB0ZSk7CiAKLQkJZm9saW8gPSB0cnlfZ3JhYl9mb2xpbyhwYWdlLCAxLCBmbGFncyk7 CisJCWZvbGlvID0gdHJ5X2dyYWJfZm9saW9fZmFzdChwYWdlLCAxLCBmbGFncyk7CiAJCWlmICgh Zm9saW8pCiAJCQlnb3RvIHB0ZV91bm1hcDsKIApAQCAtMzEyOCw3ICszMTMzLDcgQEAgc3RhdGlj IGludCBndXBfZmFzdF9kZXZtYXBfbGVhZih1bnNpZ25lZCBsb25nIHBmbiwgdW5zaWduZWQgbG9u ZyBhZGRyLAogCQkJYnJlYWs7CiAJCX0KIAotCQlmb2xpbyA9IHRyeV9ncmFiX2ZvbGlvKHBhZ2Us IDEsIGZsYWdzKTsKKwkJZm9saW8gPSB0cnlfZ3JhYl9mb2xpb19mYXN0KHBhZ2UsIDEsIGZsYWdz KTsKIAkJaWYgKCFmb2xpbykgewogCQkJZ3VwX2Zhc3RfdW5kb19kZXZfcGFnZW1hcChuciwgbnJf c3RhcnQsIGZsYWdzLCBwYWdlcyk7CiAJCQlicmVhazsKQEAgLTMyMTcsNyArMzIyMiw3IEBAIHN0 YXRpYyBpbnQgZ3VwX2Zhc3RfcG1kX2xlYWYocG1kX3Qgb3JpZywgcG1kX3QgKnBtZHAsIHVuc2ln bmVkIGxvbmcgYWRkciwKIAlwYWdlID0gcG1kX3BhZ2Uob3JpZyk7CiAJcmVmcyA9IHJlY29yZF9z dWJwYWdlcyhwYWdlLCBQTURfU0laRSwgYWRkciwgZW5kLCBwYWdlcyArICpucik7CiAKLQlmb2xp byA9IHRyeV9ncmFiX2ZvbGlvKHBhZ2UsIHJlZnMsIGZsYWdzKTsKKwlmb2xpbyA9IHRyeV9ncmFi X2ZvbGlvX2Zhc3QocGFnZSwgcmVmcywgZmxhZ3MpOwogCWlmICghZm9saW8pCiAJCXJldHVybiAw OwogCkBAIC0zMjYxLDcgKzMyNjYsNyBAQCBzdGF0aWMgaW50IGd1cF9mYXN0X3B1ZF9sZWFmKHB1 ZF90IG9yaWcsIHB1ZF90ICpwdWRwLCB1bnNpZ25lZCBsb25nIGFkZHIsCiAJcGFnZSA9IHB1ZF9w YWdlKG9yaWcpOwogCXJlZnMgPSByZWNvcmRfc3VicGFnZXMocGFnZSwgUFVEX1NJWkUsIGFkZHIs IGVuZCwgcGFnZXMgKyAqbnIpOwogCi0JZm9saW8gPSB0cnlfZ3JhYl9mb2xpbyhwYWdlLCByZWZz LCBmbGFncyk7CisJZm9saW8gPSB0cnlfZ3JhYl9mb2xpb19mYXN0KHBhZ2UsIHJlZnMsIGZsYWdz KTsKIAlpZiAoIWZvbGlvKQogCQlyZXR1cm4gMDsKIApAQCAtMzMwMSw3ICszMzA2LDcgQEAgc3Rh dGljIGludCBndXBfZmFzdF9wZ2RfbGVhZihwZ2RfdCBvcmlnLCBwZ2RfdCAqcGdkcCwgdW5zaWdu ZWQgbG9uZyBhZGRyLAogCXBhZ2UgPSBwZ2RfcGFnZShvcmlnKTsKIAlyZWZzID0gcmVjb3JkX3N1 YnBhZ2VzKHBhZ2UsIFBHRElSX1NJWkUsIGFkZHIsIGVuZCwgcGFnZXMgKyAqbnIpOwogCi0JZm9s aW8gPSB0cnlfZ3JhYl9mb2xpbyhwYWdlLCByZWZzLCBmbGFncyk7CisJZm9saW8gPSB0cnlfZ3Jh Yl9mb2xpb19mYXN0KHBhZ2UsIHJlZnMsIGZsYWdzKTsKIAlpZiAoIWZvbGlvKQogCQlyZXR1cm4g MDsKIApAQCAtMzM1NSw3ICszMzYwLDcgQEAgc3RhdGljIGludCBndXBfZmFzdF9wbWRfcmFuZ2Uo cHVkX3QgKnB1ZHAsIHB1ZF90IHB1ZCwgdW5zaWduZWQgbG9uZyBhZGRyLAogCQkJICogcG1kIGZv cm1hdCBhbmQgVEhQIHBtZCBmb3JtYXQKIAkJCSAqLwogCQkJaWYgKGd1cF9odWdlcGQoTlVMTCwg X19odWdlcGQocG1kX3ZhbChwbWQpKSwgYWRkciwKLQkJCQkgICAgICAgUE1EX1NISUZULCBuZXh0 LCBmbGFncywgcGFnZXMsIG5yKSAhPSAxKQorCQkJCSAgICAgICBQTURfU0hJRlQsIG5leHQsIGZs YWdzLCBwYWdlcywgbnIsIHRydWUpICE9IDEpCiAJCQkJcmV0dXJuIDA7CiAJCX0gZWxzZSBpZiAo IWd1cF9mYXN0X3B0ZV9yYW5nZShwbWQsIHBtZHAsIGFkZHIsIG5leHQsIGZsYWdzLAogCQkJCQkg ICAgICAgcGFnZXMsIG5yKSkKQEAgLTMzODUsNyArMzM5MCw3IEBAIHN0YXRpYyBpbnQgZ3VwX2Zh c3RfcHVkX3JhbmdlKHA0ZF90ICpwNGRwLCBwNGRfdCBwNGQsIHVuc2lnbmVkIGxvbmcgYWRkciwK IAkJCQlyZXR1cm4gMDsKIAkJfSBlbHNlIGlmICh1bmxpa2VseShpc19odWdlcGQoX19odWdlcGQo cHVkX3ZhbChwdWQpKSkpKSB7CiAJCQlpZiAoZ3VwX2h1Z2VwZChOVUxMLCBfX2h1Z2VwZChwdWRf dmFsKHB1ZCkpLCBhZGRyLAotCQkJCSAgICAgICBQVURfU0hJRlQsIG5leHQsIGZsYWdzLCBwYWdl cywgbnIpICE9IDEpCisJCQkJICAgICAgIFBVRF9TSElGVCwgbmV4dCwgZmxhZ3MsIHBhZ2VzLCBu ciwgdHJ1ZSkgIT0gMSkKIAkJCQlyZXR1cm4gMDsKIAkJfSBlbHNlIGlmICghZ3VwX2Zhc3RfcG1k X3JhbmdlKHB1ZHAsIHB1ZCwgYWRkciwgbmV4dCwgZmxhZ3MsCiAJCQkJCSAgICAgICBwYWdlcywg bnIpKQpAQCAtMzQxMiw3ICszNDE3LDcgQEAgc3RhdGljIGludCBndXBfZmFzdF9wNGRfcmFuZ2Uo cGdkX3QgKnBnZHAsIHBnZF90IHBnZCwgdW5zaWduZWQgbG9uZyBhZGRyLAogCQlCVUlMRF9CVUdf T04ocDRkX2xlYWYocDRkKSk7CiAJCWlmICh1bmxpa2VseShpc19odWdlcGQoX19odWdlcGQocDRk X3ZhbChwNGQpKSkpKSB7CiAJCQlpZiAoZ3VwX2h1Z2VwZChOVUxMLCBfX2h1Z2VwZChwNGRfdmFs KHA0ZCkpLCBhZGRyLAotCQkJCSAgICAgICBQNERfU0hJRlQsIG5leHQsIGZsYWdzLCBwYWdlcywg bnIpICE9IDEpCisJCQkJICAgICAgIFA0RF9TSElGVCwgbmV4dCwgZmxhZ3MsIHBhZ2VzLCBuciwg dHJ1ZSkgIT0gMSkKIAkJCQlyZXR1cm4gMDsKIAkJfSBlbHNlIGlmICghZ3VwX2Zhc3RfcHVkX3Jh bmdlKHA0ZHAsIHA0ZCwgYWRkciwgbmV4dCwgZmxhZ3MsCiAJCQkJCSAgICAgICBwYWdlcywgbnIp KQpAQCAtMzQ0MSw3ICszNDQ2LDcgQEAgc3RhdGljIHZvaWQgZ3VwX2Zhc3RfcGdkX3JhbmdlKHVu c2lnbmVkIGxvbmcgYWRkciwgdW5zaWduZWQgbG9uZyBlbmQsCiAJCQkJcmV0dXJuOwogCQl9IGVs c2UgaWYgKHVubGlrZWx5KGlzX2h1Z2VwZChfX2h1Z2VwZChwZ2RfdmFsKHBnZCkpKSkpIHsKIAkJ CWlmIChndXBfaHVnZXBkKE5VTEwsIF9faHVnZXBkKHBnZF92YWwocGdkKSksIGFkZHIsCi0JCQkJ ICAgICAgIFBHRElSX1NISUZULCBuZXh0LCBmbGFncywgcGFnZXMsIG5yKSAhPSAxKQorCQkJCSAg ICAgICBQR0RJUl9TSElGVCwgbmV4dCwgZmxhZ3MsIHBhZ2VzLCBuciwgdHJ1ZSkgIT0gMSkKIAkJ CQlyZXR1cm47CiAJCX0gZWxzZSBpZiAoIWd1cF9mYXN0X3A0ZF9yYW5nZShwZ2RwLCBwZ2QsIGFk ZHIsIG5leHQsIGZsYWdzLAogCQkJCQkgICAgICAgcGFnZXMsIG5yKSkKQEAgLTM4NDIsMTMgKzM4 NDcsMTQgQEAgbG9uZyBtZW1mZF9waW5fZm9saW9zKHN0cnVjdCBmaWxlICptZW1mZCwgbG9mZl90 IHN0YXJ0LCBsb2ZmX3QgZW5kLAogCQkJCSAgICBuZXh0X2lkeCAhPSBmb2xpb19pbmRleChmYmF0 Y2guZm9saW9zW2ldKSkKIAkJCQkJY29udGludWU7CiAKLQkJCQlmb2xpbyA9IHRyeV9ncmFiX2Zv bGlvKCZmYmF0Y2guZm9saW9zW2ldLT5wYWdlLAotCQkJCQkJICAgICAgIDEsIEZPTExfUElOKTsK LQkJCQlpZiAoIWZvbGlvKSB7CisJCQkJaWYgKHRyeV9ncmFiX2ZvbGlvKGZiYXRjaC5mb2xpb3Nb aV0sCisJCQkJCQkgICAgICAgMSwgRk9MTF9QSU4pKSB7CiAJCQkJCWZvbGlvX2JhdGNoX3JlbGVh c2UoJmZiYXRjaCk7CiAJCQkJCWdvdG8gZXJyOwogCQkJCX0KIAorCQkJCWZvbGlvID0gZmJhdGNo LmZvbGlvc1tpXTsKKwogCQkJCWlmIChucl9mb2xpb3MgPT0gMCkKIAkJCQkJKm9mZnNldCA9IG9m ZnNldF9pbl9mb2xpbyhmb2xpbywgc3RhcnQpOwogCmRpZmYgLS1naXQgYS9tbS9odWdlX21lbW9y eS5jIGIvbW0vaHVnZV9tZW1vcnkuYwppbmRleCA4ZTQ5ZjQwMmQ3YzcuLmI2MjgwYTAxYzVmZCAx MDA2NDQKLS0tIGEvbW0vaHVnZV9tZW1vcnkuYworKysgYi9tbS9odWdlX21lbW9yeS5jCkBAIC0x MzMxLDcgKzEzMzEsNyBAQCBzdHJ1Y3QgcGFnZSAqZm9sbG93X2Rldm1hcF9wbWQoc3RydWN0IHZt X2FyZWFfc3RydWN0ICp2bWEsIHVuc2lnbmVkIGxvbmcgYWRkciwKIAlpZiAoISpwZ21hcCkKIAkJ cmV0dXJuIEVSUl9QVFIoLUVGQVVMVCk7CiAJcGFnZSA9IHBmbl90b19wYWdlKHBmbik7Ci0JcmV0 ID0gdHJ5X2dyYWJfcGFnZShwYWdlLCBmbGFncyk7CisJcmV0ID0gdHJ5X2dyYWJfZm9saW8ocGFn ZV9mb2xpbyhwYWdlKSwgMSwgZmxhZ3MpOwogCWlmIChyZXQpCiAJCXBhZ2UgPSBFUlJfUFRSKHJl dCk7CiAKZGlmZiAtLWdpdCBhL21tL2ludGVybmFsLmggYi9tbS9pbnRlcm5hbC5oCmluZGV4IDM0 MTljMzI5YjNiYy4uNTM5ZDVmNTUwMTAyIDEwMDY0NAotLS0gYS9tbS9pbnRlcm5hbC5oCisrKyBi L21tL2ludGVybmFsLmgKQEAgLTEyMTUsOCArMTIxNSw4IEBAIGludCBtaWdyYXRlX2RldmljZV9j b2hlcmVudF9wYWdlKHN0cnVjdCBwYWdlICpwYWdlKTsKIC8qCiAgKiBtbS9ndXAuYwogICovCi1z dHJ1Y3QgZm9saW8gKnRyeV9ncmFiX2ZvbGlvKHN0cnVjdCBwYWdlICpwYWdlLCBpbnQgcmVmcywg dW5zaWduZWQgaW50IGZsYWdzKTsKLWludCBfX211c3RfY2hlY2sgdHJ5X2dyYWJfcGFnZShzdHJ1 Y3QgcGFnZSAqcGFnZSwgdW5zaWduZWQgaW50IGZsYWdzKTsKK3N0cnVjdCBmb2xpbyAqdHJ5X2dy YWJfZm9saW9fZmFzdChzdHJ1Y3QgcGFnZSAqcGFnZSwgaW50IHJlZnMsIHVuc2lnbmVkIGludCBm bGFncyk7CitpbnQgX19tdXN0X2NoZWNrIHRyeV9ncmFiX2ZvbGlvKHN0cnVjdCBmb2xpbyAqZm9s aW8sIGludCByZWZzLCB1bnNpZ25lZCBpbnQgZmxhZ3MpOwogCiAvKgogICogbW0vaHVnZV9tZW1v cnkuYwo= --0000000000009fc4fe0619c63a67--