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 gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 31C88CD5BBF for ; Mon, 25 May 2026 08:45:46 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 82BC310E419; Mon, 25 May 2026 08:45:45 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (1024-bit key; unprotected) header.d=redhat.com header.i=@redhat.com header.b="iXMgUNdL"; dkim-atps=neutral Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4559F10E419 for ; Mon, 25 May 2026 08:45:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1779698743; h=from:from: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:content-transfer-encoding; bh=rdMdPF6AjRDfJupohBg/unbXMgpat50XT188LnR7nHE=; b=iXMgUNdLGUIrA+Cp0PrEyDePTzRMjxnr95tsXy9G390kRmYtE4FRjx56BfmQnqrjcgEVUI He82KZDBGN1awwewKo11k4sSVFkZtNGQiXWSrKvpmnGiiKNsL40g/syK3kcEDUXt9AOsMC FHPY7/R+rnAW33PMUdtkV0+dNxwFWdw= Received: from mail-lj1-f197.google.com (mail-lj1-f197.google.com [209.85.208.197]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-507-ONRjtWQ-P0OapyyBocWcLg-1; Mon, 25 May 2026 04:45:41 -0400 X-MC-Unique: ONRjtWQ-P0OapyyBocWcLg-1 X-Mimecast-MFC-AGG-ID: ONRjtWQ-P0OapyyBocWcLg_1779698740 Received: by mail-lj1-f197.google.com with SMTP id 38308e7fff4ca-38eeb467db3so36238621fa.0 for ; Mon, 25 May 2026 01:45:41 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779698740; x=1780303540; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=rdMdPF6AjRDfJupohBg/unbXMgpat50XT188LnR7nHE=; b=K4MnP6z2SFCYOZ8gST4ZSrmxgQBnW7zVryci7zqBGMvaue/BI5Cx44I8lEzVFPQNuR lEgDdiigEwOZUM4QHvegGcOQrVc1+6x5oKPCUwZ9s78nnWQBAQLds+co1nXKwvM387Z4 SkSRaADVmQg1qJLIjlaqFKkwCprGdC1AC+8678u7guxsJXjfJsOCcJ+8QHDL3xWLhiqp PIPMw/WEwBswQrs5QufOdbOw5yo/sk92q3nmRTp8WrMmYPaI+eDfLYMNdpCT9SduxWAt lS7w1RFv1BbMddhjououj2Q7IRxjGNZN+v6wPOES0GRxlrsB26QP2AW5avEoOBatVR3+ VBUQ== X-Gm-Message-State: AOJu0YzjnmrZVgUclToM6sAxhTKBd0iM3H9suN/N/7u6dHWqT8uFABFK 9tpTJAi7L9hPG0PpiXnE2v9o7YhTv2NzxR+F5G8o9Nut/fduBD+hUWaNIhqDWg2pyKJXNB6dmt8 FrrV2iZD85M0bZoaUyLmS+ZDMp6RrddzU/KXTieyBmX32qfAcQ+l0FZl78uhvegXs/1uy X-Gm-Gg: Acq92OE+TXWnsldxShEhxuFjU3ySqi1fG8OzlOY64jzPEN423JxMqpqeBp7gtOsv3nc dbgdn90SqN+w9aVGqpeiVdiEJdunIC9MkrYaISl3TGZjQwAJhzHj4sTNTsRkDN5h6SAzY9oHX1M ypysX/KVYguNWuxMwqvAaqaeGvjVu075KlKYopvkZ9UyQ/XwlcmJBHWJp6wmt4f83YMbhp7zzec PVG9iJ8VkpUarJzbPOsBCnq43Pbdk/ZNlfiFuSb67or7ccMdzYxszNgN85X00rx0OQXGmsbpDOr 5/mt2mxa8LsfUScl3GHSHtPzWzOJ+r5DpDgOF0h1p/iB6DSgwYFX4QdleqSfG2JX3f14kjGLOVl GrPUCLA6fs0QK9SIMCHYNVl05O6Y5TWsZ0Uo4 X-Received: by 2002:a2e:bea0:0:b0:393:4e44:63ba with SMTP id 38308e7fff4ca-395d8e13013mr47053041fa.29.1779698740133; Mon, 25 May 2026 01:45:40 -0700 (PDT) X-Received: by 2002:a2e:bea0:0:b0:393:4e44:63ba with SMTP id 38308e7fff4ca-395d8e13013mr47052741fa.29.1779698739582; Mon, 25 May 2026 01:45:39 -0700 (PDT) Received: from fedora (85-23-51-1.bb.dnainternet.fi. [85.23.51.1]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-395dca7bcddsm21679061fa.16.2026.05.25.01.45.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 25 May 2026 01:45:39 -0700 (PDT) From: mpenttil@redhat.com To: linux-mm@kvack.org Cc: dri-devel@lists.freedesktop.org, intel-xe@lists.freedesktop.org, linux-kernel@vger.kernel.org, =?UTF-8?q?Mika=20Penttil=C3=A4?= , David Hildenbrand , Jason Gunthorpe , Leon Romanovsky , Alistair Popple , Balbir Singh , Zi Yan , Matthew Brost , Andrew Morton , Lorenzo Stoakes , "Liam R. Howlett" , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko Subject: [PATCH v12 0/5] Migrate on fault for device pages Date: Mon, 25 May 2026 11:45:19 +0300 Message-ID: <20260525084524.139868-1-mpenttil@redhat.com> X-Mailer: git-send-email 2.50.0 MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: hlKSFvIy-rng1CiBl-6msETgdeMxqH-AsmF6a1OHqEo_1779698740 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" RnJvbTogTWlrYSBQZW50dGlsw6QgPG1wZW50dGlsQHJlZGhhdC5jb20+CgpDdXJyZW50bHksIHRo ZSB3YXkgZGV2aWNlIHBhZ2UgZmF1bHRpbmcgYW5kIG1pZ3JhdGlvbiB3b3JrcwppcyBub3Qgb3B0 aW1hbCwgaWYgeW91IHdhbnQgdG8gZG8gYm90aCBmYXVsdCBoYW5kbGluZyBhbmQKbWlncmF0aW9u IGF0IG9uY2UuCgpCZWluZyBhYmxlIHRvIG1pZ3JhdGUgbm90IHByZXNlbnQgcGFnZXMgKG9yIHBh Z2VzIG1hcHBlZCB3aXRoIGluY29ycmVjdApwZXJtaXNzaW9ucywgZWcuIENPVykgdG8gdGhlIEdQ VSByZXF1aXJlcyBkb2luZyBlaXRoZXIgb2YgdGhlCmZvbGxvd2luZyBzZXF1ZW5jZXM6CgoxLiBo bW1fcmFuZ2VfZmF1bHQoKSAtIGZhdWx0IGluIG5vbi1wcmVzZW50IHBhZ2VzIHdpdGggY29ycmVj dCBwZXJtaXNzaW9ucywgZXRjLgoyLiBtaWdyYXRlX3ZtYV8qKCkgLSBtaWdyYXRlIHRoZSBwYWdl cwoKT3I6CgoxLiBtaWdyYXRlX3ZtYV8qKCkgLSBtaWdyYXRlIHByZXNlbnQgcGFnZXMKMi4gSWYg bm9uLXByZXNlbnQgcGFnZXMgZGV0ZWN0ZWQgYnkgbWlncmF0ZV92bWFfKigpOgogICBhKSBjYWxs IGhtbV9yYW5nZV9mYXVsdCgpIHRvIGZhdWx0IHBhZ2VzIGluCiAgIGIpIGNhbGwgbWlncmF0ZV92 bWFfKigpIGFnYWluIHRvIG1pZ3JhdGUgbm93IHByZXNlbnQgcGFnZXMKClRoZSBwcm9ibGVtIHdp dGggdGhlIGZpcnN0IHNlcXVlbmNlIGlzIHRoYXQgeW91IGFsd2F5cyBoYXZlIHRvIGRvIHR3bwpw YWdlIHdhbGtzIGV2ZW4gd2hlbiBtb3N0IG9mIHRoZSB0aW1lIHRoZSBwYWdlcyBhcmUgcHJlc2Vu dCBvciB6ZXJvIHBhZ2UKbWFwcGluZ3Mgc28gdGhlIGNvbW1vbiBjYXNlIHRha2VzIGEgcGVyZm9y bWFuY2UgaGl0LgoKVGhlIHNlY29uZCBzZXF1ZW5jZSBpcyBiZXR0ZXIgZm9yIHRoZSBjb21tb24g Y2FzZSwgYnV0IGZhciB3b3JzZSBpZgpwYWdlcyBhcmVuJ3QgcHJlc2VudCBiZWNhdXNlIG5vdyB5 b3UgaGF2ZSB0byB3YWxrIHRoZSBwYWdlIHRhYmxlcyB0aHJlZQp0aW1lcyAob25jZSB0byBmaW5k IHRoZSBwYWdlIGlzIG5vdCBwcmVzZW50LCBvbmNlIHNvIGhtbV9yYW5nZV9mYXVsdCgpCmNhbiBm aW5kIGEgbm9uLXByZXNlbnQgcGFnZSB0byBmYXVsdCBpbiBhbmQgb25jZSBhZ2FpbiB0byBzZXR1 cCB0aGUKbWlncmF0aW9uKS4gSXQgaXMgYWxzbyB0cmlja3kgdG8gY29kZSBjb3JyZWN0bHkuIE9u ZSBwYWdlIHRhYmxlIHdhbGsKY291bGQgY29zdHMgb3ZlciAxMDAwIGNwdSBjeWNsZXMgb24gWDg2 LTY0LCB3aGljaCBpcyBhIHNpZ25pZmljYW50IGhpdC4KCldlIHNob3VsZCBiZSBhYmxlIHRvIHdh bGsgdGhlIHBhZ2UgdGFibGUgb25jZSwgZmF1bHRpbmcKcGFnZXMgaW4gYXMgcmVxdWlyZWQgYW5k IHJlcGxhY2luZyB0aGVtIHdpdGggbWlncmF0aW9uIGVudHJpZXMgaWYKcmVxdWVzdGVkLgoKQWRk IGEgbmV3IGZsYWcgdG8gSE1NIEFQSXMsIEhNTV9QRk5fUkVRX01JR1JBVEUsCndoaWNoIHRlbGxz IHRvIHByZXBhcmUgZm9yIG1pZ3JhdGlvbiBhbHNvIGR1cmluZyBmYXVsdCBoYW5kbGluZy4KQWxz bywgZm9yIHRoZSBtaWdyYXRlX3ZtYV9zZXR1cCgpIGNhbGwgcGF0aHMsIGEgZmxhZywgTUlHUkFU RV9WTUFfRkFVTFQsCmlzIGFkZGVkIHRvIHRlbGwgdG8gYWRkIGZhdWx0IGhhbmRsaW5nIHRvIG1p Z3JhdGUuCgpPbmUgZXh0cmEgYmVuZWZpdCBvZiBtaWdyYXRpbmcgd2l0aCBobW1fcmFuZ2VfZmF1 bHQoKSBwYXRoCmlzIHRoZSBtaWdyYXRlX3ZtYS52bWEgZ2V0cyBwb3B1bGF0ZWQsIHNvIG5vIG5l ZWQgdG8KcmV0cmlldmUgdGhhdCBzZXBhcmF0YWx5LgoKVGVzdGVkIGluIFg4Ni02NCBWTSB3aXRo IEhNTSB0ZXN0IGRldmljZSwgcGFzc2luZyB0aGUgc2VsZnRlc3RzLgpGb3IgcGVyZm9ybWFuY2Us IHRoZSBtaWdyYXRlIHRocm91Z2hwdXQgdGVzdHMgZnJvbSB0aGUgc2VsZnRlc3RzCnNob3cgc2lt aWxhciBudW1iZXJzICh3aXRoaW4gZXJyb3IgbWFyZ2luKSBhcyB1bm1vZGlmaWVkIGtlcm5lbC4K VGVzdGVkIGFsc28gcmViYXNlZCBvbiB0aGUKIlJlbW92ZSBkZXZpY2UgcHJpdmF0ZSBwYWdlcyBm cm9tIHBoeXNpY2FsIGFkZHJlc3Mgc3BhY2UiIHNlcmllczoKaHR0cHM6Ly9sb3JlLmtlcm5lbC5v cmcvbGludXgtbW0vMjAyNjAxMzAxMTEwNTAuNTM2NzAtMS1qbmlldGhlQG52aWRpYS5jb20vCnBs dXMgYSBzbWFsbCBwYXRjaCB0byBhZGp1c3Qgd2l0aCBubyBwcm9ibGVtcy4KCkNoYW5nZXMgdjEx LXYxMgogIC0gRml4IGZvciBpc3N1ZSBmb3VuZCBieSBJbnRlbCBDSSBpbiBwYXRjaCAzCgpDaGFu Z2VzIHYxMC12MTEKICAtIEZpeCBuZXN0ZWQgbW1hcF9yZWFkX2xvY2sgaW4gdGVzdCBzdWl0ZQog IC0gQWRkcmVzc2VkIHJldmlldyBjb21tZW50cyBmcm9tIERhdmlkCgpDaGFuZ2VzIHY5LXYxMAog IC0gRml4IGZvciBpc3N1ZSBJbnRlbCBDSSBmb3VuZCwgZm9yZ290dGVuIHB0ZV91bm1hcCgpIGJl Zm9yZQogICAgbWlncmF0aW9uX2VudHJ5X3dhaXQoKQoKQ2hhbmdlcyB2OC12OQogIC0gcmViYXNl IG9uIGRybS10aXAKICAtIGZpeGVkIHVhZiBhcm91bmQgIG1pZ3JhdGVfdm1hX3NwbGl0X2ZvbGlv KCkgdXNhZ2UKICAtIGFkZGVkIG1pc3NpbmcgcG1kIHVubG9jawoKQ2hhbmdlcyB2Ny12OAogIC0g cmViYXNlIG9uIDcuMAogIC0gZml4ZWQgc3ViamVjdCBpbiB0d28gcGF0Y2hlcwogIC0gZW5oYW5j ZWQgY29tbWl0IG1lc3NhZ2VzCiAgLSBzcXVhc2hlZCBwYXRjaCA2IGludG8gcGF0Y2ggNCB0byBm aXgga2VybmVsIHRlc3Qgcm9ib3Qgd2FybmluZwogIC0gcmVhZGRlZCBkcm9wcGVkIENjIGJsb2Nr IGZyb20gY292ZXIgbGV0dGVyCiAgLSBmaXhlZCB3aGl0ZSBzcGFjZQoKQ2hhbmdlcyB2Ni12Nwog IC0gcmViYXNlIG9uIDcuMC4wLXJjNgogIC0gYWRkZWQgZG9jdW1lbnRhdGlvbiBhbmQgY29tbWVu dHMKICAtIGRlbm90ZSB0byBiZSBtaWdyYXRlZCB6ZXJvIHBhZ2UgYXMgSE1NX1BGTl9NSUdSQVRF IGFsb25lCiAgLSBnb3QgcmlkIG9mIEhNTV9QRk5fSU5PVVRfRkxBR1MgbW92ZW1lbnQgaW4gcGF0 Y2ggMgogIC0gcGlja2VkIHVwIEFja2VkLUJ5IGZyb20gRGF2aWQgZm9yIHBhdGNoIDEKICAKQ2hh bmdlcyB2NS12NgogIC0gcmViYXNlIG9uIDcuMC4wLXJjNAogIC0gdXNlIHJhbmdlIGJhc2VkIFRM QiBmbHVzaGluZyB3aGlsZSB1bm1hcHBpbmcgcHRlcwogIC0gZ2F0ZSBtaWdyYXRpb24gYmVoaW5k IEhNTV9QRk5fUkVRX01JR1JBVEUgZm9yIGZhdWx0IGFuZAogICAgbWlncmF0ZSBwYXRocwogIC0g YWx3YXlzIGluZmVyIG1pZ3JhdGlvbiBmbGFncyBmcm9tIG1pZ3JhdGUtPmZsYWdzIG9ubHkKCkNo YW5nZXMgdjQtdjUKICAtIHJlYmFzZSBvbiA2LjE5CiAgLSBmaXhlZCBEYXZpZCdzIGVtYWlsIGFk ZHJlc3MKICAtIGZpeGVkIGxpbmsgaXNzdWUgd2l0aG91dCBDT05GSUdfVFJBTlNQQVJFTlRfSFVH RVBBR0UKICAtIHJlZmFjdG9yZWQgaW50byBzbWFsbGVyIGNvbW1pdHMKICAtIGFkZGVkIG1vcmUg Y29tbWVudHMgdG8gY29kZQoKQ2hhbmdlcyB2My12NDoKICAtIHJlYmFzZSBvbiA2LjE5LXJjOAog IC0gZml4ZWQgaXNzdWVzIGZvdW5kIGJ5IGtlcm5lbCB0ZXN0IHJvYm90IHdpdGggcmFuZG9tIGNv bmZpZ3MKICAtIGZpeGVkIHR5cG9zCgpDaGFuZ2VzIHYyLXYzOgogIC0gcmViYXNlIG9uIDYuMTkt cmM3CiAgLSBmaXhlZCBpc3N1ZXMgZm91bmQgYnkga2VybmVsIHRlc3Qgcm9ib3QKICAtIGZpeGVk IHNtYXRjaCBpc3N1ZXMgcmVwb3J0ZWQgYnkgRGFuIENhcnBlbnRlciA8ZGFuLmNhcnBlbnRlckBs aW5hcm8ub3JnPgogIC0gZml4ZXMgdG8gbG9jayBoYW5kbGluZyAocG1kL3B0ZSkgb24gZXJyb3Jz CiAgLSBhZGRlZCBhc3NlcnRpb25zIGZvciBwbWQvcHRlIGxvY2sgc3RhdGVzCiAgLSBvdGhlciBp c3N1ZXMgZGlzY292ZXJlZCBieSBNYXR0aGV3LCB0aGFua3MhCgpDaGFuZ2VzIHYxLXYyOgogIC0g cmViYXNlIG9uIDYuMTktcmM2CiAgLSBmaXhlZCBpc3N1ZXMgZm91bmQgYnkga2VybmVsIHRlc3Qg cm9ib3QKICAtIGZpeGVkIGxvY2tpbmcgKHBtZC9wdGwpIHRvIGNvdmVyIGhhbmRsZV8gYW5kIHBy ZXBhcmVfIHJlZ2lvbnMKICAgIHBhcnRzIGlmIG1pZ3JhdGluZwogIC0gb3RoZXIgaXNzdWVzIGRp c2NvdmVyZWQgYnkgTWF0dGhldywgdGhhbmtzIQoKQ2hhbmdlcyBSRkMtdjE6CiAgLSByZWJhc2Ug b24gNi4xOS1yYzUKICAtIGFkanVzdCBmb3IgdGhlIGRldmljZSBUSFAKICAtIGNoYW5nZXMgZnJv bSBmZWVkYmFjawoKUmV2aXNpb25zOgogIC0gUkZDIGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2xp bnV4LW1tLzIwMjUwODE0MDcyMDQ1LjM2MzcxOTItMS1tcGVudHRpbEByZWRoYXQuY29tLwogIC0g djE6IGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2FsbC8yMDI2MDExNDA5MTkyMy4zOTUwNDY1LTEt bXBlbnR0aWxAcmVkaGF0LmNvbS8KICAtIHYyOiBodHRwczovL2xvcmUua2VybmVsLm9yZy9hbGwv MjAyNjAxMTkxMTI1MDIuNjQ1MDU5LTEtbXBlbnR0aWxAcmVkaGF0LmNvbS8KICAtIHYzOiBodHRw czovL2xvcmUua2VybmVsLm9yZy9hbGwvMjAyNjAxMjYxMTE5MzkuMTMzMjk4My0yLW1wZW50dGls QHJlZGhhdC5jb20vCiAgLSB2NDogaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvYWxsLzIwMjYwMjAy MTEyNjIyLjIxMDQyMTMtMS1tcGVudHRpbEByZWRoYXQuY29tLwogIC0gdjU6IGh0dHBzOi8vbG9y ZS5rZXJuZWwub3JnL2xpbnV4LW1tLzIwMjYwMjExMDgxMzAxLjI5NDA2NzItMS1tcGVudHRpbEBy ZWRoYXQuY29tLwogIC0gdjY6IGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2xpbnV4LW1tLzIwMjYw MzE2MDYyNDA3LjMzNTQ2MzYtMS1tcGVudHRpbEByZWRoYXQuY29tLwogIC0gdjc6IGh0dHBzOi8v bG9yZS5rZXJuZWwub3JnL2xpbnV4LW1tLzIwMjYwMzMwMTE1NjExLjM0Nzk4OC0xLW1wZW50dGls QHJlZGhhdC5jb20vCiAgLSB2ODogaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvbGludXgtbW0vMjAy NjA0MTQwNDEyMjYuMTUzOTQzOS0xLW1wZW50dGlsQHJlZGhhdC5jb20vCiAgLSB2OTogaHR0cHM6 Ly9sb3JlLmtlcm5lbC5vcmcvbGludXgtbW0vMjAyNjA1MDUwNTE2NTguMjIxOTUzNy0xLW1wZW50 dGlsQHJlZGhhdC5jb20vCiAgLSB2MTA6IGh0dHBzOi8vbG9yZS5rZXJuZWwub3JnL2xpbnV4LW1t LzIwMjYwNTA1MTg0NDIxLjIzMjQ3OTgtMS1tcGVudHRpbEByZWRoYXQuY29tLwogIC0gdjExOiBo dHRwczovL2xvcmUua2VybmVsLm9yZy9saW51eC1tbS8yMDI2MDUyNTA1MDgzMC4xMDAyNTQtMS1t cGVudHRpbEByZWRoYXQuY29tLwoKQ2M6IERhdmlkIEhpbGRlbmJyYW5kIDxkYXZpZEBrZXJuZWwu b3JnPgpDYzogSmFzb24gR3VudGhvcnBlIDxqZ2dAbnZpZGlhLmNvbT4KQ2M6IExlb24gUm9tYW5v dnNreSA8bGVvbnJvQG52aWRpYS5jb20+CkNjOiBBbGlzdGFpciBQb3BwbGUgPGFwb3BwbGVAbnZp ZGlhLmNvbT4KQ2M6IEJhbGJpciBTaW5naCA8YmFsYmlyc0BudmlkaWEuY29tPgpDYzogWmkgWWFu IDx6aXlAbnZpZGlhLmNvbT4KQ2M6IE1hdHRoZXcgQnJvc3QgPG1hdHRoZXcuYnJvc3RAaW50ZWwu Y29tPgpDYzogQW5kcmV3IE1vcnRvbiA8YWtwbUBsaW51eC1mb3VuZGF0aW9uLm9yZz4KQ2M6IExv cmVuem8gU3RvYWtlcyA8bG9yZW56by5zdG9ha2VzQG9yYWNsZS5jb20+CkNjOiAiTGlhbSBSLiBI b3dsZXR0IiA8TGlhbS5Ib3dsZXR0QG9yYWNsZS5jb20+CkNjOiBWbGFzdGltaWwgQmFia2EgPHZi YWJrYUBzdXNlLmN6PgpDYzogTWlrZSBSYXBvcG9ydCA8cnBwdEBrZXJuZWwub3JnPgpDYzogU3Vy ZW4gQmFnaGRhc2FyeWFuIDxzdXJlbmJAZ29vZ2xlLmNvbT4KQ2M6IE1pY2hhbCBIb2NrbyA8bWhv Y2tvQHN1c2UuY29tPgoKTWlrYSBQZW50dGlsw6QgKDUpOgogIG1tL0tjb25maWc6IGNoYW5nZXMg Zm9yIG1pZ3JhdGUgb24gZmF1bHQgZm9yIGRldmljZSBwYWdlcwogIG1tOiBBZGQgaGVscGVyIHRv IGNvbnZlcnQgSE1NIHBmbiB0byBtaWdyYXRlIHBmbgogIG1tL2htbTogZG8gdGhlIHBsdW1iaW5n IGZvciBITU0gdG8gcGFydGljaXBhdGUgaW4gbWlncmF0aW9uCiAgbW06IHNldHVwIGRldmljZSBw YWdlIG1pZ3JhdGlvbiBpbiBITU0gcGFnZXdhbGsKICBsaWIvdGVzdF9obW06IGFkZCBhIG5ldyB0 ZXN0Y2FzZSBmb3IgdGhlIG1pZ3JhdGUgb24gZmF1bHQKCiBpbmNsdWRlL2xpbnV4L2htbS5oICAg ICAgICAgICAgICAgICAgICB8ICAxOSArLQogaW5jbHVkZS9saW51eC9taWdyYXRlLmggICAgICAg ICAgICAgICAgfCAgMjYgKy0KIGxpYi90ZXN0X2htbS5jICAgICAgICAgICAgICAgICAgICAgICAg IHwgMTE4ICsrKy0KIGxpYi90ZXN0X2htbV91YXBpLmggICAgICAgICAgICAgICAgICAgIHwgIDE5 ICstCiBtbS9LY29uZmlnICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArCiBtbS9o bW0uYyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDg0MyArKysrKysrKysrKysrKysr KysrKysrKy0tCiBtbS9taWdyYXRlX2RldmljZS5jICAgICAgICAgICAgICAgICAgICB8IDU4MyAr KystLS0tLS0tLS0tLS0tLQogdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvbW0vaG1tLXRlc3RzLmMg fCAgNTQgKysKIDggZmlsZXMgY2hhbmdlZCwgMTA4NiBpbnNlcnRpb25zKCspLCA1NzggZGVsZXRp b25zKC0pCgpkcm0tdGlwCmJhc2UtY29tbWl0OiBhNzlmYjY2NDRiMzA3YzBjZWQ3YjhmZTk2N2Nk Y2FjOGVhODg0ZTAzCi0tIAoyLjUwLjAKCg==