From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ej1-f51.google.com (mail-ej1-f51.google.com [209.85.218.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BC5743BE635 for ; Wed, 11 Mar 2026 09:08:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.51 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773220110; cv=none; b=pwqTf88vIgca6nFVmWTz5ZqaIFoIuOfC89TI1SN3+uHxceQPezbKP43TXxPXxJwMB9xBc+FFMXTqoXELqEZL8a/FEuK717do18UxIxXhFTERd5ViQl0OlcxEITa1o4dfNORCu67F2BRRzKx5nKZKTjWvgsz3YXTBS/KnlZHSVC4= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773220110; c=relaxed/simple; bh=nEthJQGDZUzGUftk7yrg9x4oz1r97POD6/woYRgc6vE=; h=Message-ID:Date:MIME-Version:Subject:From:To:Cc:References: In-Reply-To:Content-Type; b=tvilZ19EyvpGTtGDJa7Azrp1TKOe0pFFxYwP9JwaYoaA5HPTyRTI0aSaS9HSaOHwwvb7NfCUlWVmTb9SJacKSgTK5l5q+4CIXvfIXoMVtx3HumStu1eZ99MgHWeajmACQCpDP5VO+K0HMIl4+v6vjTdAOHUfsvBBfsF9ESOyZcc= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=SoTypTfi; arc=none smtp.client-ip=209.85.218.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="SoTypTfi" Received: by mail-ej1-f51.google.com with SMTP id a640c23a62f3a-b943b75dc42so800109766b.3 for ; Wed, 11 Mar 2026 02:08:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1773220100; x=1773824900; darn=vger.kernel.org; h=in-reply-to:autocrypt:content-language:references:cc:to:from :subject:user-agent:mime-version:date:message-id:from:to:cc:subject :date:message-id:reply-to; bh=nEthJQGDZUzGUftk7yrg9x4oz1r97POD6/woYRgc6vE=; b=SoTypTfiU8jWo4NFdf5b1O5igHmbeWjDKG5IZJ6m0elHvkYqFPqEzdkFHD0FZmkYn0 DsbRKZ6tJ5kVUVI0BOBYX2SmsG3pR7nDrE6pFHI1vcOrxwZK6b3U0O738fcInYsNboO6 B1ZMLxo8GkRs/cOLOtfdFm1xdHJ5zlE5ZVkHAgxiC+mOTFgZq7QIoTw58V6615pVdUjU x/4o4lVDqm2pX+h4+oQMK+A5Ig6PdG31rW+IXvai2+5KpF5BNxeB1nHlZqwsGbEocs6o KX13RqPulX07XtRlxzlXKolpr1Xepz99ob5yGNPeNxtUVhb4ogIhUAHIHdHidV+5dN9r lUQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773220100; x=1773824900; h=in-reply-to:autocrypt:content-language:references:cc:to:from :subject:user-agent:mime-version:date:message-id:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=nEthJQGDZUzGUftk7yrg9x4oz1r97POD6/woYRgc6vE=; b=RIcMH/tLSoXV//cBlGdtELHPzRKb+YdffefRku3Ht0Rl0Jgg4PTK33zEQ1JhsTYYHK UyN5KeXhhw1x9nzRN8qRAJa/CcEaFdmZjE7plOgXSWD3ywcfhlUUY2hIVwOZcLo7OvWM Qctx3u9N+fy9hAC/ItUzTBzDC8blAYiR50FSqDXEJuvob+hHtVNw+YMB/FnMLtaSZb+Q CLVgHebpui+Bq2DQfpj9X2D4ANiee9hjx2CEQE+X4h/GBTR2JyenayAZsE1NvSUhhhJK RXoJOdGUAYODTMU4I1eU6IRoAD+xjxpAhn41o3tYd36b95+vv0pjAD+4MajKN2esQUIR SyEg== X-Forwarded-Encrypted: i=1; AJvYcCVYFa5jKP4/Dr7dIjyWzRNuueD+TE8c3I3SOPS6wyliyGDzzmax7QowMiOB1tOGvS5gDAckFwWSFCroHHM=@vger.kernel.org X-Gm-Message-State: AOJu0YzlIctubBBk7DMGut+xlhhjmEPXYSDbtMiXh2CFd3k/m0GgG9AI sY2t2O3b96uHAjEsuXpGqcBK2EvPqCfFcKbXbZW4GSfgJO+fwLFGiA4HE9k9wMqv5Mg= X-Gm-Gg: ATEYQzwvC0Sc7h0IY3c9xQ1oASAHU1t8QpF3YxEWODlge7FERbJ11s5j8H2BPg1Zz9Y N6cv/DvYQo0DfeM2dCzHVSXYXIpHvlruSkiJ1v7GRpn8zuI6rLNXOwc0xS8xqaM3uQwLRi3kKy5 nXF4kvhpx6cNxlSlHWBwdA3cx825HT/A4yMVaO8JgK38yezzrRXZ00HiVSm3oaIn+/Ga7eKmQoe lkjVAyvMm4jxJnRFK1M0LIa4+v95NV6n6miqY3ntGLT95hpsCh24m98XpEe5Y0GbTRUaeCTEMnj LOY5HdzOdHsYkHvhnr/LzGvb4dQSHFSsEcmHmiAcGS7YELV58UDoUVkXBVlWfTSFqf3S5eKwQ0v WWwhcPLx16o+2BexFOgOcg56xLt63B+qXoukERMZlxXEFvxZcB4M61ln3vXz73FiyNLOaXRaqAp MWfj10USwIhAyzTR5pJBQ6ASfK0JSp7BDUJ/vd1qOYrMTode1RB1cB8hHoDMj3bmzQNrb6jWMs9 EiPF8kklKfyO58l3cYw+GWU0rauuVommYFjvVim65YqvWrMku85vA== X-Received: by 2002:a17:906:9f88:b0:b96:f488:1903 with SMTP id a640c23a62f3a-b972e50b58amr111894466b.39.1773220099569; Wed, 11 Mar 2026 02:08:19 -0700 (PDT) Received: from ?IPV6:2a00:12d0:af5d:ad01:5d3f:14e6:9bcb:5112? (2a00-12d0-af5d-ad01-5d3f-14e6-9bcb-5112.ip.tng.de. [2a00:12d0:af5d:ad01:5d3f:14e6:9bcb:5112]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b972e14c2basm39171466b.35.2026.03.11.02.08.19 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 11 Mar 2026 02:08:19 -0700 (PDT) Message-ID: Date: Wed, 11 Mar 2026 10:08:18 +0100 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2 0/4] x86/mtrr: Allow MTRR updates on multiple CPUs in parallel From: Juergen Gross To: "H. Peter Anvin" , linux-kernel@vger.kernel.org, x86@kernel.org Cc: Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen References: <20260130113625.599305-1-jgross@suse.com> <35527cf2-322f-410b-9942-5cba0956b237@suse.com> <50f830e0-f69a-4f8c-a041-6ab6a8ee1cd8@suse.com> <04FA5DE3-CD35-4D22-8300-8ADADF8E35C9@zytor.com> <6352ffa5-d044-4a20-b836-739968ad378f@suse.com> <38FC68A0-6651-4ECA-9DAA-C4148F65AEDB@zytor.com> <7d6abb19-be48-4e96-8c72-e392b78b3223@suse.com> Content-Language: en-US Autocrypt: addr=jgross@suse.com; keydata= xsBNBFOMcBYBCACgGjqjoGvbEouQZw/ToiBg9W98AlM2QHV+iNHsEs7kxWhKMjrioyspZKOB ycWxw3ie3j9uvg9EOB3aN4xiTv4qbnGiTr3oJhkB1gsb6ToJQZ8uxGq2kaV2KL9650I1SJve dYm8Of8Zd621lSmoKOwlNClALZNew72NjJLEzTalU1OdT7/i1TXkH09XSSI8mEQ/ouNcMvIJ NwQpd369y9bfIhWUiVXEK7MlRgUG6MvIj6Y3Am/BBLUVbDa4+gmzDC9ezlZkTZG2t14zWPvx XP3FAp2pkW0xqG7/377qptDmrk42GlSKN4z76ELnLxussxc7I2hx18NUcbP8+uty4bMxABEB AAHNH0p1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT7CwHkEEwECACMFAlOMcK8CGwMH CwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIXgAAKCRCw3p3WKL8TL8eZB/9G0juS/kDY9LhEXseh mE9U+iA1VsLhgDqVbsOtZ/S14LRFHczNd/Lqkn7souCSoyWsBs3/wO+OjPvxf7m+Ef+sMtr0 G5lCWEWa9wa0IXx5HRPW/ScL+e4AVUbL7rurYMfwCzco+7TfjhMEOkC+va5gzi1KrErgNRHH kg3PhlnRY0Udyqx++UYkAsN4TQuEhNN32MvN0Np3WlBJOgKcuXpIElmMM5f1BBzJSKBkW0Jc Wy3h2Wy912vHKpPV/Xv7ZwVJ27v7KcuZcErtptDevAljxJtE7aJG6WiBzm+v9EswyWxwMCIO RoVBYuiocc51872tRGywc03xaQydB+9R7BHPzsBNBFOMcBYBCADLMfoA44MwGOB9YT1V4KCy vAfd7E0BTfaAurbG+Olacciz3yd09QOmejFZC6AnoykydyvTFLAWYcSCdISMr88COmmCbJzn sHAogjexXiif6ANUUlHpjxlHCCcELmZUzomNDnEOTxZFeWMTFF9Rf2k2F0Tl4E5kmsNGgtSa aMO0rNZoOEiD/7UfPP3dfh8JCQ1VtUUsQtT1sxos8Eb/HmriJhnaTZ7Hp3jtgTVkV0ybpgFg w6WMaRkrBh17mV0z2ajjmabB7SJxcouSkR0hcpNl4oM74d2/VqoW4BxxxOD1FcNCObCELfIS auZx+XT6s+CE7Qi/c44ibBMR7hyjdzWbABEBAAHCwF8EGAECAAkFAlOMcBYCGwwACgkQsN6d 1ii/Ey9D+Af/WFr3q+bg/8v5tCknCtn92d5lyYTBNt7xgWzDZX8G6/pngzKyWfedArllp0Pn fgIXtMNV+3t8Li1Tg843EXkP7+2+CQ98MB8XvvPLYAfW8nNDV85TyVgWlldNcgdv7nn1Sq8g HwB2BHdIAkYce3hEoDQXt/mKlgEGsLpzJcnLKimtPXQQy9TxUaLBe9PInPd+Ohix0XOlY+Uk QFEx50Ki3rSDl2Zt2tnkNYKUCvTJq7jvOlaPd6d/W0tZqpyy7KVay+K4aMobDsodB3dvEAs6 ScCnh03dDAFgIq5nsB11j3KPKdVoPlfucX2c7kGNH+LUMbzqV6beIENfNexkOfxHfw== In-Reply-To: <7d6abb19-be48-4e96-8c72-e392b78b3223@suse.com> Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------lAcUhsLeG60qVMhveoF3JA0G" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------lAcUhsLeG60qVMhveoF3JA0G Content-Type: multipart/mixed; boundary="------------KYKBN3zFDidMtByYr5qwOTR4"; protected-headers="v1" From: Juergen Gross To: "H. Peter Anvin" , linux-kernel@vger.kernel.org, x86@kernel.org Cc: Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen Message-ID: Subject: Re: [PATCH v2 0/4] x86/mtrr: Allow MTRR updates on multiple CPUs in parallel References: <20260130113625.599305-1-jgross@suse.com> <35527cf2-322f-410b-9942-5cba0956b237@suse.com> <50f830e0-f69a-4f8c-a041-6ab6a8ee1cd8@suse.com> <04FA5DE3-CD35-4D22-8300-8ADADF8E35C9@zytor.com> <6352ffa5-d044-4a20-b836-739968ad378f@suse.com> <38FC68A0-6651-4ECA-9DAA-C4148F65AEDB@zytor.com> <7d6abb19-be48-4e96-8c72-e392b78b3223@suse.com> In-Reply-To: <7d6abb19-be48-4e96-8c72-e392b78b3223@suse.com> --------------KYKBN3zFDidMtByYr5qwOTR4 Content-Type: multipart/mixed; boundary="------------vIOrIgxCYL87u7MHgWu39nPu" --------------vIOrIgxCYL87u7MHgWu39nPu Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 T24gMTMuMDIuMjYgMTQ6MjEsIErDvHJnZW4gR3Jvw58gd3JvdGU6DQo+IE9uIDEyLjAyLjI2 IDE3OjU0LCBILiBQZXRlciBBbnZpbiB3cm90ZToNCj4+IE9uIEZlYnJ1YXJ5IDEyLCAyMDI2 IDg6MjQ6MTggQU0gUFNULCAiSsO8cmdlbiBHcm/DnyIgPGpncm9zc0BzdXNlLmNvbT4gd3Jv dGU6DQo+Pj4gT24gMTAuMDIuMjYgMDg6MjgsIEguIFBldGVyIEFudmluIHdyb3RlOg0KPj4+ PiBPbiBGZWJydWFyeSA5LCAyMDI2IDEwOjUxOjA0IFBNIFBTVCwgIkrDvHJnZW4gR3Jvw58i IDxqZ3Jvc3NAc3VzZS5jb20+IHdyb3RlOg0KPj4+Pj4gT24gMDkuMDIuMjYgMTk6MzcsIEgu IFBldGVyIEFudmluIHdyb3RlOg0KPj4+Pj4+IE9uIEZlYnJ1YXJ5IDksIDIwMjYgMToxMjo1 OSBBTSBQU1QsIEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4gd3JvdGU6DQo+Pj4+ Pj4+IFBpbmc/DQo+Pj4+Pj4+DQo+Pj4+Pj4+IEknZCByZWFsbHkgbGlrZSB0byBoYXZlIHRo aXMgaW4gNy4wLCBhcyBpdCBpcyBmaXhpbmcgYSByZWFsIGlzc3VlIG9uDQo+Pj4+Pj4+IHNv bWUgbWFjaGluZXMgLi4uDQo+Pj4+Pj4+DQo+Pj4+Pj4+DQo+Pj4+Pj4+IEp1ZXJnZW4NCj4+ Pj4+Pj4NCj4+Pj4+Pj4gT24gMzAuMDEuMjYgMTI6MzYsIEp1ZXJnZW4gR3Jvc3Mgd3JvdGU6 DQo+Pj4+Pj4+PiBUb2RheSBNVFJSIHVwZGF0ZXMgYXJlIHNlcmlhbGl6ZWQgdG8gbm90IGhh cHBlbiBvbiBtdWx0aXBsZSBDUFVzIGF0IHRoZQ0KPj4+Pj4+Pj4gc2FtZSB0aW1lLCBhcyB0 aGUgcmVsYXRlZCBjb2RpbmcgaXMgdXNpbmcgZ2xvYmFsIHZhcmlhYmxlcy4NCj4+Pj4+Pj4+ DQo+Pj4+Pj4+PiBPbiBodWdlIG1hY2hpbmVzIHdpdGggbG90cyBvZiBDUFVzIHRoaXMgY2Fu IHJlc3VsdCBpbiBwcm9ibGVtcywgYXMgc3VjaA0KPj4+Pj4+Pj4gdXBkYXRlcyBhcmUgaGFw cGVuaW5nIHRocm91Z2ggc3RvcF9tYWNoaW5lKCksIHdoaWNoIHdpbGwgY2FsbCB0aGUgTVRS Ug0KPj4+Pj4+Pj4gdXBkYXRlIGZ1bmN0aW9uIHdpdGggaW50ZXJydXB0cyBvZmYgb24gYWxs IENQVXMgYXQgdGhlIHNhbWUgdGltZS4gVGhlDQo+Pj4+Pj4+PiBpbnRlcnJ1cHRzIHdpbGwg YmUgc3dpdGNoZWQgb24gb25seSBhZnRlciB0aGUgbGFzdCBDUFUgaGFzIGZpbmlzaGVkDQo+ Pj4+Pj4+PiB0aGUgTVRSUiB1cGRhdGUuIEFzIHRoZSB1cGRhdGUgaXMgcmVxdWlyZWQgdG8g cnVuIGluIHVuY2FjaGVkIG1vZGUsIGl0DQo+Pj4+Pj4+PiBjYW4gdGFrZSBlYXNpbHkgc2V2 ZXJhbCBtaWxsaXNlY29uZHMgb24gZWFjaCBDUFUsIHJlc3VsdGluZyBpbiB0aGUNCj4+Pj4+ Pj4+IHdob2xlIHByb2Nlc3MgdG8gbmVlZCBzZXZlcmFsIHNlY29uZHMuIFRoaXMgaW4gdHVy biBjYW4gY2F1c2UgdGhlDQo+Pj4+Pj4+PiB3YXRjaGRvZyB0byB0cmlnZ2VyIGFuZCB0byBy ZWNvZ25pemUgYSBoYXJkIHN5c3RlbSBsb2NrdXAuDQo+Pj4+Pj4+Pg0KPj4+Pj4+Pj4gVGhp cyBzZXJpZXMgaXMgY2hhbmdpbmcgdGhlIGJlaGF2aW9yIGJ5IGFsbG93aW5nIHRoZSBNVFJS IHVwZGF0ZSB0bw0KPj4+Pj4+Pj4gaGFwcGVuIG9uIGFsbCBDUFVzIGluIHBhcmFsbGVsLg0K Pj4+Pj4+Pj4NCj4+Pj4+Pj4+IENoYW5nZXMgaW4gVjI6DQo+Pj4+Pj4+PiAtIGZpeCBhIGZ1 bmN0aW9uIGNvbW1lbnQgaGVhZGVyIGluIHBhdGNoIDINCj4+Pj4+Pj4+DQo+Pj4+Pj4+PiBK dWVyZ2VuIEdyb3NzICg0KToNCj4+Pj4+Pj4+IMKgwqDCoMKgwqAgeDg2L210cnI6IE1vdmUg Y2FjaGVfZW5hYmxlKCkgYW5kIGNhY2hlX2Rpc2FibGUoKSB0byBtdHJyL2dlbmVyaWMuYw0K Pj4+Pj4+Pj4gwqDCoMKgwqDCoCB4ODYvbXRycjogSW50cm9kdWNlIE1UUlIgd29yayBzdGF0 ZSBzdHJ1Y3R1cmUNCj4+Pj4+Pj4+IMKgwqDCoMKgwqAgeDg2L210cnI6IEFkZCBhIHByZXBh cmVfc2V0IGhvb2sgdG8gbXRycl9vcHMNCj4+Pj4+Pj4+IMKgwqDCoMKgwqAgeDg2L210cnI6 IERyb3AgY2FjaGVfZGlzYWJsZV9sb2NrDQo+Pj4+Pj4+Pg0KPj4+Pj4+Pj4gwqDCoMKgwqAg YXJjaC94ODYvaW5jbHVkZS9hc20vY2FjaGVpbmZvLmjCoMKgIHzCoMKgIDIgLQ0KPj4+Pj4+ Pj4gwqDCoMKgwqAgYXJjaC94ODYvaW5jbHVkZS9hc20vbXRyci5owqDCoMKgwqDCoMKgwqAg fMKgwqAgMiAtDQo+Pj4+Pj4+PiDCoMKgwqDCoCBhcmNoL3g4Ni9rZXJuZWwvY3B1L2NhY2hl aW5mby5jwqDCoMKgIHzCoCA4MCArLS0tLS0tLS0tLS0tLS0tLQ0KPj4+Pj4+Pj4gwqDCoMKg wqAgYXJjaC94ODYva2VybmVsL2NwdS9tdHJyL2dlbmVyaWMuYyB8IDEzOSArKysrKysrKysr KysrKysrKysrKysrKystLS0tLQ0KPj4+Pj4+Pj4gwqDCoMKgwqAgYXJjaC94ODYva2VybmVs L2NwdS9tdHJyL210cnIuY8KgwqDCoCB8wqDCoCAzICsNCj4+Pj4+Pj4+IMKgwqDCoMKgIGFy Y2gveDg2L2tlcm5lbC9jcHUvbXRyci9tdHJyLmjCoMKgwqAgfMKgwqAgMiArDQo+Pj4+Pj4+ PiDCoMKgwqDCoCA2IGZpbGVzIGNoYW5nZWQsIDEyMiBpbnNlcnRpb25zKCspLCAxMDYgZGVs ZXRpb25zKC0pDQo+Pj4+Pj4+Pg0KPj4+Pj4+Pg0KPj4+Pj4+DQo+Pj4+Pj4gRmlyc3Qgb2Yg YWxsLCB3aGF0IG1hY2hpbmVzIGFyZSBldmVuIG5lZWRpbmcgTVRSUiB1cGRhdGVzIHRoZXNl IGRheXM/DQo+Pj4+Pg0KPj4+Pj4gSSdtIG5vdCBhd2FyZSB0aGlzIG1hY2hpbmUgcmVhbGx5 IG5lZWRlZCBhbiB1cGRhdGUuDQo+Pj4+Pg0KPj4+Pj4+IFRoaXMgaXNuJ3QgYSByaGV0b3Jp Y2FsIHF1ZXN0aW9uLiBJdCBpcyBpbXBvcnRhbnQgdG8gdW5kZXJzdGFuZCB3aGF0IHRoZSAN Cj4+Pj4+PiB1bmRlcmx5aW5nIHByb2JsZW0gaXMuDQo+Pj4+Pg0KPj4+Pj4gSXQganVzdCB0 b29rIHNldmVyYWwgc2Vjb25kcyBmb3IgYWxsIENQVXMgdG8gY2hlY2sgaWYgdGhlcmUgaXMg YW4gdXBkYXRlDQo+Pj4+PiBuZWVkZWQuIEl0IG1pZ2h0IGJlIGFuIGlzc3VlIHdpdGggZmly bXdhcmUsIHRvcG9sb2d5LCB3aGF0ZXZlci4gSXQgaGFwcGVuZWQNCj4+Pj4+IGluIGEgdGVz dCBkb2luZyAzMDAgY29sZCBib290cyBpbiBhIHJvdyBhZnRlciByb3VnaGx5IDcwIGxvb3Ag aXRlcmF0aW9ucywNCj4+Pj4+IGFsd2F5cyBvbiBvbmUgb2YgdGhlIGxhc3QgQ1BVcy4NCj4+ Pj4+DQo+Pj4+PiBUaGUgaXNzdWUgc2hvd3MgdGhhdCB0aGVyZSBJUyBhIHBvdGVudGlhbCBw cm9ibGVtIHdpdGggZG9pbmcgdGhlIE1UUlINCj4+Pj4+IHVwZGF0ZSBvbmUgQ1BVIGFmdGVy IHRoZSBvdGhlciwgaW5zdGVhZCBqdXN0IGRvaW5nIGl0IGluIHBhcmFsbGVsICh3aGljaA0K Pj4+Pj4gaXMgdGhlICJvZmZpY2lhbCIgcmVjb21tZW5kYXRpb24gYW55d2F5KS4gU2VlIHRo ZSBjb21tZW50IGluDQo+Pj4+PiBjYWNoZV9kaXNhYmxlKCkuIEFuZCBpdCBpc24ndCBhcyBp ZiB0aGUgZml4IHdvdWxkIGJlIHZlcnkgY29tcGxpY2F0ZWQuDQo+Pj4+Pg0KPj4+Pj4NCj4+ Pj4+IEp1ZXJnZW4NCj4+Pj4NCj4+Pj4gWW91IGFyZSBhc3N1bWluZyB0aGF0IGl0IHdvbid0 IGJyZWFrIGFueSBmcmFnaWxlIHN5c3RlbXMuIEknbSBtdWNoIG1vcmUgDQo+Pj4+IGNvbmNl cm5lZCBhYm91dCB3aHkgdGhpcyBpcyBoYXBwZW5pbmcgYXQgYWxsLg0KPj4+DQo+Pj4gSSdt IGhhdmluZyBhIGhhcmQgdGltZSBzZWVpbmcgd2h5IG15IHNlcmllcyB3b3VsZCBicmVhayBm cmFnaWxlIHN5c3RlbXMuDQo+Pj4gSXRzIG5vdCBhcyBpZiBJIHdvdWxkIGNoYW5nZSBhbnl0 aGluZyByZWdhcmRpbmcgdGhlIGhhbmRsaW5nIG9uIGVhY2gNCj4+PiBjcHUuDQo+Pj4NCj4+ PiBNeSBtYWluIHN1c3BlY3Qgd2h5IHRoaXMgaXMgaGFwcGVuaW5nIGlzIHRoZSB0b3BvbG9n eSBvZiB0aGUgc3lzdGVtDQo+Pj4gKDggc29ja2V0IE5VTUEgbWFjaGluZSksIGNhdXNpbmcg dGhlIHVuY2FjaGVkIG1lbW9yeSBhY2Nlc3NlcyB0byBoYXZlIGENCj4+PiByYXRoZXIgaGln aCBsYXRlbmN5IChtdWx0aXBsZSBob3BzIGZvciBhY2Nlc3Npbmcgc29tZSBtZW1vcnkpLCBj YXVzaW5nDQo+Pj4gZWFjaCBjcHUgdG8gbmVlZCBzb21lIHRpbWUgZm9yIGNoZWNraW5nIGFs bCBNVFJScy4NCj4+Pg0KPj4+DQo+Pj4gSnVlcmdlbg0KPj4NCj4+IFBsZWFzZSBzdG9wIGF2 b2lkaW5nIHRoZSBpc3N1ZSwgd2hpY2ggaXMgV0hZIGlzIHRoaXMgaGFwcGVuaW5nIEFUIEFM TCBvbiBhIA0KPj4gcmVjZW50IHByb2R1Y3Rpb24gc3lzdGVtLg0KPj4NCj4+IFRoZSBmYXN0 ZXN0IHdheSB0byBkbyBhbnl0aGluZyBpcyB0byBub3QgZG8gaXQgYXQgYWxsLg0KPj4NCj4+ IFdoYXQgZG8gdGhlIGxvZ3MgbG9vayBsaWtlLCB3aXRoIHN1ZmZpY2llbnQgdmVyYm9zaXR5 LCBmb3Igb25lIHRoaW5nPw0KPiANCj4gSSBhc2tlZCBmb3IgbW9yZSBkZXRhaWxlZCBsb2dz LiBBbmQgaW5kZWVkIGluIHRoZSBsb2cgd2l0aCBteSBwYXRjaGVzIGFwcGxpZWQNCj4gdGhl IGZvbGxvd2luZyBtZXNzYWdlcyBjb3VsZCBiZSBzZWVuOg0KPiANCj4gW8KgwqAgNzIuMzAx MzIxXVvCoMKgwqAgVDFdIG10cnI6IHlvdXIgQ1BVcyBoYWQgaW5jb25zaXN0ZW50IE1UUlJk ZWZUeXBlIHNldHRpbmdzDQo+IFvCoMKgIDcyLjMxMDU0MV1bwqDCoMKgIFQxXSBtdHJyOiBw cm9iYWJseSB5b3VyIEJJT1MgZG9lcyBub3Qgc2V0dXAgYWxsIENQVXMuDQo+IFvCoMKgIDcy LjMxODUzOV1bwqDCoMKgIFQxXSBtdHJyOiBjb3JyZWN0ZWQgY29uZmlndXJhdGlvbi4NCj4g DQo+IFdoaWxlIHRoaXMgcHJvYmFibHkgaXMgdGhlIHJlYXNvbiBmb3IgdGhlIGxvbmcgdGlt ZSBNVFJSIHNldHVwIG9uIHRoZSBBUHMNCj4gbmVlZGVkLCBJJ20gc3RpbGwgdGhpbmtpbmcg bXkgcGF0Y2hlcyBhcmUgbWFraW5nIGEgbG90IG9mIHNlbnNlLg0KPiANCj4gSSBoYXZlIGFz a2VkIHRoZXkgY2hlY2sgdGhlaXIgQklPUywgb2YgY291cnNlLg0KDQpBbnkgZnVydGhlciBj b21tZW50cz8NCg0KQW55IHJlYWwgcmVhc29uIG5vdCB0byB0YWtlIHRoaXMgcGF0Y2ggc2Vy aWVzPw0KDQoNCkp1ZXJnZW4NCg== --------------vIOrIgxCYL87u7MHgWu39nPu Content-Type: application/pgp-keys; name="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Disposition: attachment; filename="OpenPGP_0xB0DE9DD628BF132F.asc" Content-Description: OpenPGP public key Content-Transfer-Encoding: quoted-printable -----BEGIN PGP PUBLIC KEY BLOCK----- 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 kt+z4drzFUyEjLM1vVvIMjkUoJs=3D =3DeeAB -----END PGP PUBLIC KEY BLOCK----- --------------vIOrIgxCYL87u7MHgWu39nPu-- --------------KYKBN3zFDidMtByYr5qwOTR4-- --------------lAcUhsLeG60qVMhveoF3JA0G Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature.asc" -----BEGIN PGP SIGNATURE----- wsB5BAABCAAjFiEEhRJncuj2BJSl0Jf3sN6d1ii/Ey8FAmmxMQIFAwAAAAAACgkQsN6d1ii/Ey+/ owf8DXKoTEYJBe2ihk8o5g6xMom66KFk0XNBblZJ5fRNecwSu0c3R4UZVbWwUQ84J1qYCpn9zelg eyR+PQz1M8oOQvubObaG73FKHEWi+CZIpfsCFrsx+m8ZS9vVjyJBkz05AzmC8ID6uFdChhFeChUc jkKdbXygWiUg/JBrDQFcb4EmVAP8DXYGQ/OV42y55UwdFhhvoziNInguJJIV2cxKMRrtrF+5D8jn 25hI0fpzLMVHCMNz1VBXiuvTz0O5ONUDDzMKlyWyCBvh5M7gEddX+DbrCRT8gV7zJfBiCeiUb6Lh /Z1f/3Ke3d2PrSqwV8gEZ9CIIJP+9ux1VoCgy9aqfw== =9bUw -----END PGP SIGNATURE----- --------------lAcUhsLeG60qVMhveoF3JA0G--