From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id 36CE43858425 for ; Tue, 18 Apr 2023 12:48:09 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 36CE43858425 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=redhat.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1681822088; 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: in-reply-to:in-reply-to:references:references; bh=JFnH9KgK00fiOaCpV8/AvjYPo+FttiQxXGPItxwN8+o=; b=QJKOEzszMmEl4+hOfl5+wfYlWmIA4Phcx05BQ3cn14bJvFyhAnpTOsoTQ8wvk2CvNq5B8p 7Sl/U6Pv509n99ODWpYIY7B8zArqB9fJTveF20hmqHNr94WvY4z6W5L2xQex/2BKm4DUnz f7TbnfYwHho38AoUYT4ggV1MXaFS+OQ= Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-634-FCtdhAbJMaCS5COeu3Q7Iw-1; Tue, 18 Apr 2023 08:48:07 -0400 X-MC-Unique: FCtdhAbJMaCS5COeu3Q7Iw-1 Received: by mail-wr1-f71.google.com with SMTP id ffacd0b85a97d-2fa5d643cd8so521897f8f.2 for ; Tue, 18 Apr 2023 05:48:07 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1681822086; x=1684414086; h=in-reply-to:from:content-language:references:cc:to:subject :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=2iPhc7r/j2UkwMlH3B6SqpNmXd8XvqUZkkYCT1xGTek=; b=cXIdcg8AJi1/qkQnnnyESpg9KZRY4l4/jydtpg5kDjvI+23ScGBoDPJtEvoPdBJrER M+OT89mnjgxsHwDItL46KKDijMGNOyhW12FgH+R1wLVdSjg2Q3Ys1dWGJ4Wc/ey0Rkps G+E4ex1RzdgNw4bsoYXD3pR/X7ZZGDe9bjfiPjJd0WwHvdcR2g1qtqODQBeoo2RZSX7j 74BR/l6xgz93qhxjQMZVMG9I/h4KnuVRhvHBx5AH9jGbeK7hbn4k8XfD+C+VVKD5kZIi I83RWrS5WSdzgVligvI/fZ7QV33u238Udf++RqNK+z+7+nVEPfUwBbN9zKEPP1JA62U1 RN+Q== X-Gm-Message-State: AAQBX9fNUzCPCgC1lBb19/sQfaTriMhoOY36NhO0g85tO16xRy5RX8Md Sasf8ZPyumBILaWNPeFexO/NILyVM/j6PqnLg0mP6BBbo9l67IkZSjmOBDTIEwhEWArd+eQwgFT QBzcwt9PCJBbbWeGlicGHTdqcNXCEo3OIybZ0UeOVAwux4lxlcFyt6n7pbehEWn+wmEtzBSl0hw == X-Received: by 2002:adf:f10f:0:b0:2f7:efb1:ec8c with SMTP id r15-20020adff10f000000b002f7efb1ec8cmr1606269wro.23.1681822086151; Tue, 18 Apr 2023 05:48:06 -0700 (PDT) X-Google-Smtp-Source: AKy350ZScZBeUlJ+7JRdDubqNaDkfBCxwp2FTRVgxcBCpNfME2txZmrfluq6iIfFhDIz5UQxCG4C8g== X-Received: by 2002:adf:f10f:0:b0:2f7:efb1:ec8c with SMTP id r15-20020adff10f000000b002f7efb1ec8cmr1606253wro.23.1681822085757; Tue, 18 Apr 2023 05:48:05 -0700 (PDT) Received: from [192.168.1.201] ([139.47.42.170]) by smtp.gmail.com with ESMTPSA id b15-20020adfe64f000000b002f00793bd7asm12970550wrn.27.2023.04.18.05.48.05 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 18 Apr 2023 05:48:05 -0700 (PDT) Message-ID: <4096b296-8df5-ee4c-fd9b-e042c2a03b56@redhat.com> Date: Tue, 18 Apr 2023 14:48:04 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.9.0 Subject: Re: [PATCH] Add support for vrange streaming. To: GCC patches Cc: Andrew MacLeod , Richard Biener References: <20230418090637.253140-1-aldyh@redhat.com> From: Aldy Hernandez In-Reply-To: <20230418090637.253140-1-aldyh@redhat.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: multipart/mixed; boundary="------------iOLnCVwdENnF0g01FiqNM84O" Content-Language: en-US X-Spam-Status: No, score=-11.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,NICE_REPLY_A,RCVD_IN_BARRACUDACENTRAL,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This is a multi-part message in MIME format. --------------iOLnCVwdENnF0g01FiqNM84O Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 4/18/23 11:06, Aldy Hernandez wrote: > I think it's time for the ranger folk to start owning range streaming > instead of passes (IPA, etc) doing their own thing. I have plans for > overhauling the IPA code later this cycle to support generic ranges, > and I'd like to start cleaning up the streaming and hashing interface. > > This patch adds generic streaming support for vrange. > > I'd appreciate another set of eyes. > > Thoughts? We recently added support for querying and storing an frange's NAN without the need to be friends with the class. Adjusted patch in testing... Aldy --------------iOLnCVwdENnF0g01FiqNM84O Content-Type: text/x-patch; charset=UTF-8; name="0001-Add-support-for-vrange-streaming.patch" Content-Disposition: attachment; filename="0001-Add-support-for-vrange-streaming.patch" Content-Transfer-Encoding: base64 RnJvbSBhZDY5ZjE5ZjgwYjcxOTg4MGJjYWQ2NTlhMDdmMDA3MjQ1MjIwMTlkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbGR5IEhlcm5hbmRleiA8YWxkeWhAcmVkaGF0LmNvbT4KRGF0 ZTogVHVlLCAxOCBBcHIgMjAyMyAwNzo1Nzo0MyArMDIwMApTdWJqZWN0OiBbUEFUQ0hdIEFkZCBz dXBwb3J0IGZvciB2cmFuZ2Ugc3RyZWFtaW5nLgoKSSB0aGluayBpdCdzIHRpbWUgZm9yIHRoZSBy YW5nZXIgZm9sayB0byBzdGFydCBvd25pbmcgcmFuZ2Ugc3RyZWFtaW5nCmluc3RlYWQgb2YgcGFz c2VzIChJUEEsIGV0YykgZG9pbmcgdGhlaXIgb3duIHRoaW5nLiAgSSBoYXZlIHBsYW5zIGZvcgpv dmVyaGF1bGluZyB0aGUgSVBBIGNvZGUgbGF0ZXIgdGhpcyBjeWNsZSB0byBzdXBwb3J0IGdlbmVy aWMgcmFuZ2VzLAphbmQgSSdkIGxpa2UgdG8gc3RhcnQgY2xlYW5pbmcgdXAgdGhlIHN0cmVhbWlu ZyBhbmQgaGFzaGluZyBpbnRlcmZhY2UuCgpUaGlzIHBhdGNoIGFkZHMgZ2VuZXJpYyBzdHJlYW1p bmcgc3VwcG9ydCBmb3IgdnJhbmdlLgoKZ2NjL0NoYW5nZUxvZzoKCgkqIGRhdGEtc3RyZWFtZXIt aW4uY2MgKHN0cmVhbWVyX3JlYWRfcmVhbF92YWx1ZSk6IE5ldy4KCShzdHJlYW1lcl9yZWFkX3Zh bHVlX3JhbmdlKTogTmV3LgoJKiBkYXRhLXN0cmVhbWVyLW91dC5jYyAoc3RyZWFtZXJfd3JpdGVf cmVhbF92YWx1ZSk6IE5ldy4KCShzdHJlYW1lcl93cml0ZV92cmFuZ2UpOiBOZXcuCgkqIGRhdGEt c3RyZWFtZXIuaCAoc3RyZWFtZXJfd3JpdGVfdnJhbmdlKTogTmV3LgoJKHN0cmVhbWVyX3JlYWRf dmFsdWVfcmFuZ2UpOiBOZXcuCi0tLQogZ2NjL2RhdGEtc3RyZWFtZXItaW4uY2MgIHwgNTUgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogZ2NjL2RhdGEtc3RyZWFtZXIt b3V0LmNjIHwgNTEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogZ2NjL2Rh dGEtc3RyZWFtZXIuaCAgICAgIHwgIDMgKysrCiAzIGZpbGVzIGNoYW5nZWQsIDEwOSBpbnNlcnRp b25zKCspCgpkaWZmIC0tZ2l0IGEvZ2NjL2RhdGEtc3RyZWFtZXItaW4uY2MgYi9nY2MvZGF0YS1z dHJlYW1lci1pbi5jYwppbmRleCA4ZWJjYWM0MzQ3OS4uMDc3MjhiZWY0MTMgMTAwNjQ0Ci0tLSBh L2djYy9kYXRhLXN0cmVhbWVyLWluLmNjCisrKyBiL2djYy9kYXRhLXN0cmVhbWVyLWluLmNjCkBA IC0yOCw2ICsyOCw4IEBAIGFsb25nIHdpdGggR0NDOyBzZWUgdGhlIGZpbGUgQ09QWUlORzMuICBJ ZiBub3Qgc2VlCiAjaW5jbHVkZSAiZ2ltcGxlLmgiCiAjaW5jbHVkZSAiY2dyYXBoLmgiCiAjaW5j bHVkZSAiZGF0YS1zdHJlYW1lci5oIgorI2luY2x1ZGUgInZhbHVlLXJhbmdlLmgiCisjaW5jbHVk ZSAic3RyZWFtZXItaG9va3MuaCIKIAogLyogUmVhZCBhIHN0cmluZyBmcm9tIHRoZSBzdHJpbmcg dGFibGUgaW4gREFUQV9JTiB1c2luZyBpbnB1dCBibG9jawogICAgSUIuICBXcml0ZSB0aGUgbGVu Z3RoIHRvIFJMRU4uICAqLwpAQCAtMjA2LDYgKzIwOCw1OSBAQCBzdHJlYW1lcl9yZWFkX2djb3Zf Y291bnQgKGNsYXNzIGx0b19pbnB1dF9ibG9jayAqaWIpCiAgIHJldHVybiByZXQ7CiB9CiAKKy8q IFJlYWQgUkVBTF9WQUxVRV9UWVBFIGZyb20gSUIuICAqLworCit2b2lkCitzdHJlYW1lcl9yZWFk X3JlYWxfdmFsdWUgKGNsYXNzIGx0b19pbnB1dF9ibG9jayAqaWIsIFJFQUxfVkFMVUVfVFlQRSAq cikKK3sKKyAgc3RydWN0IGJpdHBhY2tfZCBicCA9IHN0cmVhbWVyX3JlYWRfYml0cGFjayAoaWIp OworICBicF91bnBhY2tfcmVhbF92YWx1ZSAoJmJwLCByKTsKK30KKwordm9pZAorc3RyZWFtZXJf cmVhZF92YWx1ZV9yYW5nZSAoY2xhc3MgbHRvX2lucHV0X2Jsb2NrICppYiwgZGF0YV9pbiAqZGF0 YV9pbiwKKwkJCSAgIFZhbHVlX1JhbmdlICZ2cikKK3sKKyAgLy8gUmVhZCB0aGUgY29tbW9uIGZp ZWxkcyB0byBhbGwgdnJhbmdlcy4KKyAgdmFsdWVfcmFuZ2Vfa2luZCBraW5kID0gc3RyZWFtZXJf cmVhZF9lbnVtIChpYiwgdmFsdWVfcmFuZ2Vfa2luZCwgVlJfTEFTVCk7CisgIGdjY19jaGVja2lu Z19hc3NlcnQgKGtpbmQgIT0gVlJfVU5ERUZJTkVEKTsKKyAgdHJlZSB0eXBlID0gc3RyZWFtX3Jl YWRfdHJlZSAoaWIsIGRhdGFfaW4pOworCisgIC8vIEluaXRpYWxpemUgdGhlIFZhbHVlX1Jhbmdl IHRvIHRoZSBjb3JyZWN0IHR5cGUuCisgIHZyLnNldF90eXBlICh0eXBlKTsKKworICBpZiAoaXNf YSA8aXJhbmdlPiAodnIpKQorICAgIHsKKyAgICAgIGlyYW5nZSAmciA9IGFzX2EgPGlyYW5nZT4g KHZyKTsKKyAgICAgIHIuc2V0X3VuZGVmaW5lZCAoKTsKKyAgICAgIHVuc2lnbmVkIEhPU1RfV0lE RV9JTlQgbnVtX3BhaXJzID0gc3RyZWFtZXJfcmVhZF91aHdpIChpYik7CisgICAgICBmb3IgKHVu c2lnbmVkIGkgPSAwOyBpIDwgbnVtX3BhaXJzOyArK2kpCisJeworCSAgd2lkZV9pbnQgbGIgPSBz dHJlYW1lcl9yZWFkX3dpZGVfaW50IChpYik7CisJICB3aWRlX2ludCB1YiA9IHN0cmVhbWVyX3Jl YWRfd2lkZV9pbnQgKGliKTsKKwkgIGludF9yYW5nZTwyPiB0bXAgKHR5cGUsIGxiLCB1Yik7CisJ ICByLnVuaW9uXyAodG1wKTsKKwl9CisgICAgICB3aWRlX2ludCBueiA9IHN0cmVhbWVyX3JlYWRf d2lkZV9pbnQgKGliKTsKKyAgICAgIHIuc2V0X25vbnplcm9fYml0cyAobnopOworICAgICAgcmV0 dXJuOworICAgIH0KKyAgaWYgKGlzX2EgPGZyYW5nZT4gKHZyKSkKKyAgICB7CisgICAgICBmcmFu Z2UgJnIgPSBhc19hIDxmcmFuZ2U+ICh2cik7CisgICAgICBSRUFMX1ZBTFVFX1RZUEUgbGIsIHVi OworICAgICAgc3RyZWFtZXJfcmVhZF9yZWFsX3ZhbHVlIChpYiwgJmxiKTsKKyAgICAgIHN0cmVh bWVyX3JlYWRfcmVhbF92YWx1ZSAoaWIsICZ1Yik7CisgICAgICBzdHJ1Y3QgYml0cGFja19kIGJw ID0gc3RyZWFtZXJfcmVhZF9iaXRwYWNrIChpYik7CisgICAgICBib29sIHBvc19uYW4gPSAoYm9v bCkgYnBfdW5wYWNrX3ZhbHVlICgmYnAsIDEpOworICAgICAgYm9vbCBuZWdfbmFuID0gKGJvb2wp IGJwX3VucGFja192YWx1ZSAoJmJwLCAxKTsKKyAgICAgIG5hbl9zdGF0ZSBuYW4gKHBvc19uYW4s IG5lZ19uYW4pOworICAgICAgci5zZXQgKHR5cGUsIGxiLCB1YiwgbmFuKTsKKyAgICAgIHJldHVy bjsKKyAgICB9CisgIGdjY191bnJlYWNoYWJsZSAoKTsKK30KKwogLyogUmVhZCB0aGUgcGh5c2lj YWwgcmVwcmVzZW50YXRpb24gb2YgYSB3aWRlX2ludCB2YWwgZnJvbQogICAgaW5wdXQgYmxvY2sg SUIuICAqLwogCmRpZmYgLS1naXQgYS9nY2MvZGF0YS1zdHJlYW1lci1vdXQuY2MgYi9nY2MvZGF0 YS1zdHJlYW1lci1vdXQuY2MKaW5kZXggY2QyNTc0NWI4ZGMuLmFmYzk4NjIwNjJiIDEwMDY0NAot LS0gYS9nY2MvZGF0YS1zdHJlYW1lci1vdXQuY2MKKysrIGIvZ2NjL2RhdGEtc3RyZWFtZXItb3V0 LmNjCkBAIC0yOCw2ICsyOCw4IEBAIGFsb25nIHdpdGggR0NDOyBzZWUgdGhlIGZpbGUgQ09QWUlO RzMuICBJZiBub3Qgc2VlCiAjaW5jbHVkZSAiZ2ltcGxlLmgiCiAjaW5jbHVkZSAiY2dyYXBoLmgi CiAjaW5jbHVkZSAiZGF0YS1zdHJlYW1lci5oIgorI2luY2x1ZGUgInZhbHVlLXJhbmdlLmgiCisj aW5jbHVkZSAic3RyZWFtZXItaG9va3MuaCIKIAogCiAvKiBBZGRzIGEgbmV3IGJsb2NrIHRvIG91 dHB1dCBzdHJlYW0gT0JTLiAgKi8KQEAgLTM5Miw2ICszOTQsNTUgQEAgc3RyZWFtZXJfd3JpdGVf ZGF0YV9zdHJlYW0gKHN0cnVjdCBsdG9fb3V0cHV0X3N0cmVhbSAqb2JzLCBjb25zdCB2b2lkICpk YXRhLAogICAgIH0KIH0KIAorLyogV3JpdGUgUkVBTF9WQUxVRV9UWVBFIGludG8gT0IuICAqLwor Cit2b2lkCitzdHJlYW1lcl93cml0ZV9yZWFsX3ZhbHVlIChzdHJ1Y3Qgb3V0cHV0X2Jsb2NrICpv YiwgY29uc3QgUkVBTF9WQUxVRV9UWVBFICpyKQoreworICBiaXRwYWNrX2QgYnAgPSBiaXRwYWNr X2NyZWF0ZSAob2ItPm1haW5fc3RyZWFtKTsKKyAgYnBfcGFja19yZWFsX3ZhbHVlICgmYnAsIHIp OworICBzdHJlYW1lcl93cml0ZV9iaXRwYWNrICgmYnApOworfQorCit2b2lkCitzdHJlYW1lcl93 cml0ZV92cmFuZ2UgKHN0cnVjdCBvdXRwdXRfYmxvY2sgKm9iLCBjb25zdCB2cmFuZ2UgJnYpCit7 CisgIGdjY19jaGVja2luZ19hc3NlcnQgKCF2LnVuZGVmaW5lZF9wICgpKTsKKworICAvLyBXcml0 ZSB0aGUgY29tbW9uIGZpZWxkcyB0byBhbGwgdnJhbmdlcy4KKyAgdmFsdWVfcmFuZ2Vfa2luZCBr aW5kID0gdi52YXJ5aW5nX3AgKCkgPyBWUl9WQVJZSU5HIDogVlJfUkFOR0U7CisgIHN0cmVhbWVy X3dyaXRlX2VudW0gKG9iLT5tYWluX3N0cmVhbSwgdmFsdWVfcmFuZ2Vfa2luZCwgVlJfTEFTVCwg a2luZCk7CisgIHN0cmVhbV93cml0ZV90cmVlIChvYiwgdi50eXBlICgpLCB0cnVlKTsKKworICBp ZiAoaXNfYSA8aXJhbmdlPiAodikpCisgICAgeworICAgICAgY29uc3QgaXJhbmdlICZyID0gYXNf YSA8aXJhbmdlPiAodik7CisgICAgICBzdHJlYW1lcl93cml0ZV91aHdpIChvYiwgci5udW1fcGFp cnMgKCkpOworICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHIubnVtX3BhaXJzICgpOyAr K2kpCisJeworCSAgc3RyZWFtZXJfd3JpdGVfd2lkZV9pbnQgKG9iLCByLmxvd2VyX2JvdW5kIChp KSk7CisJICBzdHJlYW1lcl93cml0ZV93aWRlX2ludCAob2IsIHIudXBwZXJfYm91bmQgKGkpKTsK Kwl9CisgICAgICBzdHJlYW1lcl93cml0ZV93aWRlX2ludCAob2IsIHIuZ2V0X25vbnplcm9fYml0 cyAoKSk7CisgICAgICByZXR1cm47CisgICAgfQorICBpZiAoaXNfYSA8ZnJhbmdlPiAodikpCisg ICAgeworICAgICAgY29uc3QgZnJhbmdlICZyID0gYXNfYSA8ZnJhbmdlPiAodik7CisgICAgICBS RUFMX1ZBTFVFX1RZUEUgbGIgPSByLmxvd2VyX2JvdW5kICgpOworICAgICAgUkVBTF9WQUxVRV9U WVBFIHViID0gci51cHBlcl9ib3VuZCAoKTsKKyAgICAgIHN0cmVhbWVyX3dyaXRlX3JlYWxfdmFs dWUgKG9iLCAmbGIpOworICAgICAgc3RyZWFtZXJfd3JpdGVfcmVhbF92YWx1ZSAob2IsICZ1Yik7 CisgICAgICBiaXRwYWNrX2QgYnAgPSBiaXRwYWNrX2NyZWF0ZSAob2ItPm1haW5fc3RyZWFtKTsK KyAgICAgIG5hbl9zdGF0ZSBuYW4gPSByLmdldF9uYW5fc3RhdGUgKCk7CisgICAgICBicF9wYWNr X3ZhbHVlICgmYnAsIG5hbi5wb3NfcCAoKSwgMSk7CisgICAgICBicF9wYWNrX3ZhbHVlICgmYnAs IG5hbi5uZWdfcCAoKSwgMSk7CisgICAgICBzdHJlYW1lcl93cml0ZV9iaXRwYWNrICgmYnApOwor ICAgICAgcmV0dXJuOworICAgIH0KKyAgZ2NjX3VucmVhY2hhYmxlICgpOworfQorCiAvKiBFbWl0 IHRoZSBwaHlzaWNhbCByZXByZXNlbnRhdGlvbiBvZiB3aWRlX2ludCBWQUwgdG8gb3V0cHV0IGJs b2NrIE9CLiAgKi8KIAogdm9pZApkaWZmIC0tZ2l0IGEvZ2NjL2RhdGEtc3RyZWFtZXIuaCBiL2dj Yy9kYXRhLXN0cmVhbWVyLmgKaW5kZXggMTljOWQ2ZWE2MDYuLjdlNjllYjk5OTJiIDEwMDY0NAot LS0gYS9nY2MvZGF0YS1zdHJlYW1lci5oCisrKyBiL2djYy9kYXRhLXN0cmVhbWVyLmgKQEAgLTc1 LDYgKzc1LDcgQEAgdm9pZCBzdHJlYW1lcl93cml0ZV9kYXRhX3N0cmVhbSAoc3RydWN0IGx0b19v dXRwdXRfc3RyZWFtICosIGNvbnN0IHZvaWQgKiwKIAkJCQkgc2l6ZV90KTsKIHZvaWQgc3RyZWFt ZXJfd3JpdGVfd2lkZV9pbnQgKHN0cnVjdCBvdXRwdXRfYmxvY2sgKiwgY29uc3Qgd2lkZV9pbnQg Jik7CiB2b2lkIHN0cmVhbWVyX3dyaXRlX3dpZGVzdF9pbnQgKHN0cnVjdCBvdXRwdXRfYmxvY2sg KiwgY29uc3Qgd2lkZXN0X2ludCAmKTsKK3ZvaWQgc3RyZWFtZXJfd3JpdGVfdnJhbmdlIChzdHJ1 Y3Qgb3V0cHV0X2Jsb2NrICosIGNvbnN0IGNsYXNzIHZyYW5nZSAmKTsKIAogLyogSW4gZGF0YS1z dHJlYW1lci1pbi5jYyAgKi8KIGNvbnN0IGNoYXIgKnN0cmVhbWVyX3JlYWRfc3RyaW5nIChjbGFz cyBkYXRhX2luICosIGNsYXNzIGx0b19pbnB1dF9ibG9jayAqKTsKQEAgLTkxLDYgKzkyLDggQEAg cG9seV9pbnQ2NCBzdHJlYW1lcl9yZWFkX3BvbHlfaW50NjQgKGNsYXNzIGx0b19pbnB1dF9ibG9j ayAqKTsKIGdjb3ZfdHlwZSBzdHJlYW1lcl9yZWFkX2djb3ZfY291bnQgKGNsYXNzIGx0b19pbnB1 dF9ibG9jayAqKTsKIHdpZGVfaW50IHN0cmVhbWVyX3JlYWRfd2lkZV9pbnQgKGNsYXNzIGx0b19p bnB1dF9ibG9jayAqKTsKIHdpZGVzdF9pbnQgc3RyZWFtZXJfcmVhZF93aWRlc3RfaW50IChjbGFz cyBsdG9faW5wdXRfYmxvY2sgKik7Cit2b2lkIHN0cmVhbWVyX3JlYWRfdmFsdWVfcmFuZ2UgKGNs YXNzIGx0b19pbnB1dF9ibG9jayAqLCBjbGFzcyBkYXRhX2luICosCisJCQkJY2xhc3MgVmFsdWVf UmFuZ2UgJik7CiAKIC8qIFJldHVybnMgYSBuZXcgYml0LXBhY2tpbmcgY29udGV4dCBmb3IgYml0 LXBhY2tpbmcgaW50byBTLiAgKi8KIGlubGluZSBzdHJ1Y3QgYml0cGFja19kCi0tIAoyLjM5LjIK Cg== --------------iOLnCVwdENnF0g01FiqNM84O--