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 X-Spam-Level: X-Spam-Status: No, score=-11.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,MIME_BASE64_TEXT,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7792EC636CA for ; Wed, 21 Jul 2021 13:18:10 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D8CB06120A for ; Wed, 21 Jul 2021 13:18:09 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D8CB06120A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:42016 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1m6C6y-0000rz-TC for qemu-devel@archiver.kernel.org; Wed, 21 Jul 2021 09:18:08 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:58558) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m6C2L-00037U-Px for qemu-devel@nongnu.org; Wed, 21 Jul 2021 09:13:21 -0400 Received: from us-smtp-delivery-124.mimecast.com ([216.205.24.124]:58237) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1m6C2I-0006bi-2J for qemu-devel@nongnu.org; Wed, 21 Jul 2021 09:13:21 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1626873197; 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: in-reply-to:in-reply-to:references:references; bh=3ErewQhfuU6metgt32z6SBA5W99qWqY4HKvO++Yq1gI=; b=Te3HzmvXREKXLqN43XBS8FCQsw1nmuRbf6okRVwxyPAyWy9jnWJa6wOz/pocNVQflEdNwr fNnZoViG21+PrxERDA3ywZN+UaQF5fuO1Nsm8nT9w12CTuea7ldieAnvc4KZTIMyh9viGp mvDH7I1KNEVHiaMNY4qDVCeiS4kp1bA= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-447-rUX5r_VFP4Co3pt3GpakEA-1; Wed, 21 Jul 2021 09:13:15 -0400 X-MC-Unique: rUX5r_VFP4Co3pt3GpakEA-1 Received: from smtp.corp.redhat.com (int-mx07.intmail.prod.int.phx2.redhat.com [10.5.11.22]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 5D609884DD6; Wed, 21 Jul 2021 13:13:04 +0000 (UTC) Received: from localhost (ovpn-114-233.ams2.redhat.com [10.36.114.233]) by smtp.corp.redhat.com (Postfix) with ESMTP id B575610016DB; Wed, 21 Jul 2021 13:13:02 +0000 (UTC) From: Stefan Hajnoczi To: Peter Maydell , qemu-devel@nongnu.org Subject: [PULL for-6.1 2/3] iothread: add aio-max-batch parameter Date: Wed, 21 Jul 2021 14:12:52 +0100 Message-Id: <20210721131253.275821-3-stefanha@redhat.com> In-Reply-To: <20210721131253.275821-1-stefanha@redhat.com> References: <20210721131253.275821-1-stefanha@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.84 on 10.5.11.22 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=stefanha@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="US-ASCII" Received-SPF: pass client-ip=216.205.24.124; envelope-from=stefanha@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -24 X-Spam_score: -2.5 X-Spam_bar: -- X-Spam_report: (-2.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-1.459, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, MIME_BASE64_TEXT=1.741, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Kevin Wolf , Fam Zheng , =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= , Eduardo Habkost , qemu-block@nongnu.org, Stefan Weil , "Dr. David Alan Gilbert" , Max Reitz , Stefan Hajnoczi , Paolo Bonzini , Eric Blake , Markus Armbruster , Stefano Garzarella Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" RnJvbTogU3RlZmFubyBHYXJ6YXJlbGxhIDxzZ2FyemFyZUByZWRoYXQuY29tPgoKVGhlIGBhaW8t bWF4LWJhdGNoYCBwYXJhbWV0ZXIgd2lsbCBiZSBwcm9wYWdhdGVkIHRvIEFJTyBlbmdpbmVzCmFu ZCBpdCB3aWxsIGJlIHVzZWQgdG8gY29udHJvbCB0aGUgbWF4aW11bSBudW1iZXIgb2YgcXVldWVk IHJlcXVlc3RzLgoKV2hlbiB0aGVyZSBhcmUgaW4gcXVldWUgYSBudW1iZXIgb2YgcmVxdWVzdHMg ZXF1YWwgdG8gYGFpby1tYXgtYmF0Y2hgLAp0aGUgZW5naW5lIGludm9rZXMgdGhlIHN5c3RlbSBj YWxsIHRvIGZvcndhcmQgdGhlIHJlcXVlc3RzIHRvIHRoZSBrZXJuZWwuCgpUaGlzIHBhcmFtZXRl ciBhbGxvd3MgdXMgdG8gY29udHJvbCB0aGUgbWF4aW11bSBiYXRjaCBzaXplIHRvIHJlZHVjZQp0 aGUgbGF0ZW5jeSB0aGF0IHJlcXVlc3RzIG1pZ2h0IGFjY3VtdWxhdGUgd2hpbGUgcXVldWVkIGlu IHRoZSBBSU8KZW5naW5lIHF1ZXVlLgoKSWYgYGFpby1tYXgtYmF0Y2hgIGlzIGVxdWFsIHRvIDAg KGRlZmF1bHQgdmFsdWUpLCB0aGUgQUlPIGVuZ2luZSB3aWxsCnVzZSBpdHMgZGVmYXVsdCBtYXhp bXVtIGJhdGNoIHNpemUgdmFsdWUuCgpTaWduZWQtb2ZmLWJ5OiBTdGVmYW5vIEdhcnphcmVsbGEg PHNnYXJ6YXJlQHJlZGhhdC5jb20+Ck1lc3NhZ2UtaWQ6IDIwMjEwNzIxMDk0MjExLjY5ODUzLTMt c2dhcnphcmVAcmVkaGF0LmNvbQpTaWduZWQtb2ZmLWJ5OiBTdGVmYW4gSGFqbm9jemkgPHN0ZWZh bmhhQHJlZGhhdC5jb20+Ci0tLQogcWFwaS9taXNjLmpzb24gICAgICAgICAgICB8ICA2ICsrKyst CiBxYXBpL3FvbS5qc29uICAgICAgICAgICAgIHwgIDcgKysrKy0KIGluY2x1ZGUvYmxvY2svYWlv LmggICAgICAgfCAxMiArKysrKysrKysKIGluY2x1ZGUvc3lzZW11L2lvdGhyZWFkLmggfCAgMyAr KysKIGlvdGhyZWFkLmMgICAgICAgICAgICAgICAgfCA1NSArKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKy0tLS0KIG1vbml0b3IvaG1wLWNtZHMuYyAgICAgICAgfCAgMiArKwogdXRp bC9haW8tcG9zaXguYyAgICAgICAgICB8IDEyICsrKysrKysrKwogdXRpbC9haW8td2luMzIuYyAg ICAgICAgICB8ICA1ICsrKysKIHV0aWwvYXN5bmMuYyAgICAgICAgICAgICAgfCAgMiArKwogcWVt dS1vcHRpb25zLmh4ICAgICAgICAgICB8ICA4ICsrKystLQogMTAgZmlsZXMgY2hhbmdlZCwgMTAz IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvcWFwaS9taXNjLmpz b24gYi9xYXBpL21pc2MuanNvbgppbmRleCAxNTZmOTgyMDNlLi41YzJjYTNiNTU2IDEwMDY0NAot LS0gYS9xYXBpL21pc2MuanNvbgorKysgYi9xYXBpL21pc2MuanNvbgpAQCAtODYsNiArODYsOSBA QAogIyBAcG9sbC1zaHJpbms6IGhvdyBtYW55IG5zIHdpbGwgYmUgcmVtb3ZlZCBmcm9tIHBvbGxp bmcgdGltZSwgMCBtZWFucyB0aGF0CiAjICAgICAgICAgICAgICAgaXQncyBub3QgY29uZmlndXJl ZCAoc2luY2UgMi45KQogIworIyBAYWlvLW1heC1iYXRjaDogbWF4aW11bSBudW1iZXIgb2YgcmVx dWVzdHMgaW4gYSBiYXRjaCBmb3IgdGhlIEFJTyBlbmdpbmUsCisjICAgICAgICAgICAgICAgICAw IG1lYW5zIHRoYXQgdGhlIGVuZ2luZSB3aWxsIHVzZSBpdHMgZGVmYXVsdCAoc2luY2UgNi4xKQor IwogIyBTaW5jZTogMi4wCiAjIwogeyAnc3RydWN0JzogJ0lPVGhyZWFkSW5mbycsCkBAIC05Myw3 ICs5Niw4IEBACiAgICAgICAgICAgICd0aHJlYWQtaWQnOiAnaW50JywKICAgICAgICAgICAgJ3Bv bGwtbWF4LW5zJzogJ2ludCcsCiAgICAgICAgICAgICdwb2xsLWdyb3cnOiAnaW50JywKLSAgICAg ICAgICAgJ3BvbGwtc2hyaW5rJzogJ2ludCcgfSB9CisgICAgICAgICAgICdwb2xsLXNocmluayc6 ICdpbnQnLAorICAgICAgICAgICAnYWlvLW1heC1iYXRjaCc6ICdpbnQnIH0gfQogCiAjIwogIyBA cXVlcnktaW90aHJlYWRzOgpkaWZmIC0tZ2l0IGEvcWFwaS9xb20uanNvbiBiL3FhcGkvcW9tLmpz b24KaW5kZXggNjUyYmUzMTdiOC4uNmQ1ZjRhODhlNiAxMDA2NDQKLS0tIGEvcWFwaS9xb20uanNv bgorKysgYi9xYXBpL3FvbS5qc29uCkBAIC01MTYsMTIgKzUxNiwxNyBAQAogIyAgICAgICAgICAg ICAgIGFsZ29yaXRobSBkZXRlY3RzIGl0IGlzIHNwZW5kaW5nIHRvbyBsb25nIHBvbGxpbmcgd2l0 aG91dAogIyAgICAgICAgICAgICAgIGVuY291bnRlcmluZyBldmVudHMuIDAgc2VsZWN0cyBhIGRl ZmF1bHQgYmVoYXZpb3VyIChkZWZhdWx0OiAwKQogIworIyBAYWlvLW1heC1iYXRjaDogbWF4aW11 bSBudW1iZXIgb2YgcmVxdWVzdHMgaW4gYSBiYXRjaCBmb3IgdGhlIEFJTyBlbmdpbmUsCisjICAg ICAgICAgICAgICAgICAwIG1lYW5zIHRoYXQgdGhlIGVuZ2luZSB3aWxsIHVzZSBpdHMgZGVmYXVs dAorIyAgICAgICAgICAgICAgICAgKGRlZmF1bHQ6MCwgc2luY2UgNi4xKQorIwogIyBTaW5jZTog Mi4wCiAjIwogeyAnc3RydWN0JzogJ0lvdGhyZWFkUHJvcGVydGllcycsCiAgICdkYXRhJzogeyAn KnBvbGwtbWF4LW5zJzogJ2ludCcsCiAgICAgICAgICAgICAnKnBvbGwtZ3Jvdyc6ICdpbnQnLAot ICAgICAgICAgICAgJypwb2xsLXNocmluayc6ICdpbnQnIH0gfQorICAgICAgICAgICAgJypwb2xs LXNocmluayc6ICdpbnQnLAorICAgICAgICAgICAgJyphaW8tbWF4LWJhdGNoJzogJ2ludCcgfSB9 CiAKICMjCiAjIEBNZW1vcnlCYWNrZW5kUHJvcGVydGllczoKZGlmZiAtLWdpdCBhL2luY2x1ZGUv YmxvY2svYWlvLmggYi9pbmNsdWRlL2Jsb2NrL2Fpby5oCmluZGV4IDgwN2VkY2U5YjUuLjQ3ZmJl OWQ4MWYgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvYmxvY2svYWlvLmgKKysrIGIvaW5jbHVkZS9ibG9j ay9haW8uaApAQCAtMjMyLDYgKzIzMiw5IEBAIHN0cnVjdCBBaW9Db250ZXh0IHsKICAgICBpbnQ2 NF90IHBvbGxfZ3JvdzsgICAgICAvKiBwb2xsaW5nIHRpbWUgZ3Jvd3RoIGZhY3RvciAqLwogICAg IGludDY0X3QgcG9sbF9zaHJpbms7ICAgIC8qIHBvbGxpbmcgdGltZSBzaHJpbmsgZmFjdG9yICov CiAKKyAgICAvKiBBSU8gZW5naW5lIHBhcmFtZXRlcnMgKi8KKyAgICBpbnQ2NF90IGFpb19tYXhf YmF0Y2g7ICAvKiBtYXhpbXVtIG51bWJlciBvZiByZXF1ZXN0cyBpbiBhIGJhdGNoICovCisKICAg ICAvKgogICAgICAqIExpc3Qgb2YgaGFuZGxlcnMgcGFydGljaXBhdGluZyBpbiB1c2Vyc3BhY2Ug cG9sbGluZy4gIFByb3RlY3RlZCBieQogICAgICAqIGN0eC0+bGlzdF9sb2NrLiAgSXRlcmF0ZWQg YW5kIG1vZGlmaWVkIG1vc3RseSBieSB0aGUgZXZlbnQgbG9vcCB0aHJlYWQKQEAgLTc1NSw0ICs3 NTgsMTMgQEAgdm9pZCBhaW9fY29udGV4dF9zZXRfcG9sbF9wYXJhbXMoQWlvQ29udGV4dCAqY3R4 LCBpbnQ2NF90IG1heF9ucywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludDY0 X3QgZ3JvdywgaW50NjRfdCBzaHJpbmssCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBFcnJvciAqKmVycnApOwogCisvKioKKyAqIGFpb19jb250ZXh0X3NldF9haW9fcGFyYW1zOgor ICogQGN0eDogdGhlIGFpbyBjb250ZXh0CisgKiBAbWF4X2JhdGNoOiBtYXhpbXVtIG51bWJlciBv ZiByZXF1ZXN0cyBpbiBhIGJhdGNoLCAwIG1lYW5zIHRoYXQgdGhlCisgKiAgICAgICAgICAgICBl bmdpbmUgd2lsbCB1c2UgaXRzIGRlZmF1bHQKKyAqLwordm9pZCBhaW9fY29udGV4dF9zZXRfYWlv X3BhcmFtcyhBaW9Db250ZXh0ICpjdHgsIGludDY0X3QgbWF4X2JhdGNoLAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBFcnJvciAqKmVycnApOworCiAjZW5kaWYKZGlmZiAtLWdpdCBh L2luY2x1ZGUvc3lzZW11L2lvdGhyZWFkLmggYi9pbmNsdWRlL3N5c2VtdS9pb3RocmVhZC5oCmlu ZGV4IGYxNzcxNDJmMTYuLjdmNzE0YmQxMzYgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvc3lzZW11L2lv dGhyZWFkLmgKKysrIGIvaW5jbHVkZS9zeXNlbXUvaW90aHJlYWQuaApAQCAtMzcsNiArMzcsOSBA QCBzdHJ1Y3QgSU9UaHJlYWQgewogICAgIGludDY0X3QgcG9sbF9tYXhfbnM7CiAgICAgaW50NjRf dCBwb2xsX2dyb3c7CiAgICAgaW50NjRfdCBwb2xsX3NocmluazsKKworICAgIC8qIEFpb0NvbnRl eHQgQUlPIGVuZ2luZSBwYXJhbWV0ZXJzICovCisgICAgaW50NjRfdCBhaW9fbWF4X2JhdGNoOwog fTsKIHR5cGVkZWYgc3RydWN0IElPVGhyZWFkIElPVGhyZWFkOwogCmRpZmYgLS1naXQgYS9pb3Ro cmVhZC5jIGIvaW90aHJlYWQuYwppbmRleCAxMDM2NzlhMTZiLi5kZGJiZGU2MWY3IDEwMDY0NAot LS0gYS9pb3RocmVhZC5jCisrKyBiL2lvdGhyZWFkLmMKQEAgLTE1Miw2ICsxNTIsMjQgQEAgc3Rh dGljIHZvaWQgaW90aHJlYWRfaW5pdF9nY29udGV4dChJT1RocmVhZCAqaW90aHJlYWQpCiAgICAg aW90aHJlYWQtPm1haW5fbG9vcCA9IGdfbWFpbl9sb29wX25ldyhpb3RocmVhZC0+d29ya2VyX2Nv bnRleHQsIFRSVUUpOwogfQogCitzdGF0aWMgdm9pZCBpb3RocmVhZF9zZXRfYWlvX2NvbnRleHRf cGFyYW1zKElPVGhyZWFkICppb3RocmVhZCwgRXJyb3IgKiplcnJwKQoreworICAgIEVSUlBfR1VB UkQoKTsKKworICAgIGFpb19jb250ZXh0X3NldF9wb2xsX3BhcmFtcyhpb3RocmVhZC0+Y3R4LAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpb3RocmVhZC0+cG9sbF9tYXhfbnMsCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlvdGhyZWFkLT5wb2xsX2dyb3csCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlvdGhyZWFkLT5wb2xsX3NocmluaywKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgZXJycCk7CisgICAgaWYgKCplcnJwKSB7CisgICAg ICAgIHJldHVybjsKKyAgICB9CisKKyAgICBhaW9fY29udGV4dF9zZXRfYWlvX3BhcmFtcyhpb3Ro cmVhZC0+Y3R4LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlvdGhyZWFkLT5haW9f bWF4X2JhdGNoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycnApOworfQorCiBz dGF0aWMgdm9pZCBpb3RocmVhZF9jb21wbGV0ZShVc2VyQ3JlYXRhYmxlICpvYmosIEVycm9yICoq ZXJycCkKIHsKICAgICBFcnJvciAqbG9jYWxfZXJyb3IgPSBOVUxMOwpAQCAtMTcxLDExICsxODks NyBAQCBzdGF0aWMgdm9pZCBpb3RocmVhZF9jb21wbGV0ZShVc2VyQ3JlYXRhYmxlICpvYmosIEVy cm9yICoqZXJycCkKICAgICAgKi8KICAgICBpb3RocmVhZF9pbml0X2djb250ZXh0KGlvdGhyZWFk KTsKIAotICAgIGFpb19jb250ZXh0X3NldF9wb2xsX3BhcmFtcyhpb3RocmVhZC0+Y3R4LAotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpb3RocmVhZC0+cG9sbF9tYXhfbnMsCi0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlvdGhyZWFkLT5wb2xsX2dyb3csCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGlvdGhyZWFkLT5wb2xsX3NocmluaywKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgJmxvY2FsX2Vycm9yKTsKKyAgICBpb3RocmVhZF9zZXRf YWlvX2NvbnRleHRfcGFyYW1zKGlvdGhyZWFkLCAmbG9jYWxfZXJyb3IpOwogICAgIGlmIChsb2Nh bF9lcnJvcikgewogICAgICAgICBlcnJvcl9wcm9wYWdhdGUoZXJycCwgbG9jYWxfZXJyb3IpOwog ICAgICAgICBhaW9fY29udGV4dF91bnJlZihpb3RocmVhZC0+Y3R4KTsKQEAgLTIxMiw2ICsyMjYs OSBAQCBzdGF0aWMgUG9sbFBhcmFtSW5mbyBwb2xsX2dyb3dfaW5mbyA9IHsKIHN0YXRpYyBQb2xs UGFyYW1JbmZvIHBvbGxfc2hyaW5rX2luZm8gPSB7CiAgICAgInBvbGwtc2hyaW5rIiwgb2Zmc2V0 b2YoSU9UaHJlYWQsIHBvbGxfc2hyaW5rKSwKIH07CitzdGF0aWMgUG9sbFBhcmFtSW5mbyBhaW9f bWF4X2JhdGNoX2luZm8gPSB7CisgICAgImFpby1tYXgtYmF0Y2giLCBvZmZzZXRvZihJT1RocmVh ZCwgYWlvX21heF9iYXRjaCksCit9OwogCiBzdGF0aWMgdm9pZCBpb3RocmVhZF9nZXRfcGFyYW0o T2JqZWN0ICpvYmosIFZpc2l0b3IgKnYsCiAgICAgICAgIGNvbnN0IGNoYXIgKm5hbWUsIHZvaWQg Km9wYXF1ZSwgRXJyb3IgKiplcnJwKQpAQCAtMjcxLDYgKzI4OCwyOSBAQCBzdGF0aWMgdm9pZCBp b3RocmVhZF9zZXRfcG9sbF9wYXJhbShPYmplY3QgKm9iaiwgVmlzaXRvciAqdiwKICAgICB9CiB9 CiAKK3N0YXRpYyB2b2lkIGlvdGhyZWFkX2dldF9haW9fcGFyYW0oT2JqZWN0ICpvYmosIFZpc2l0 b3IgKnYsCisgICAgICAgIGNvbnN0IGNoYXIgKm5hbWUsIHZvaWQgKm9wYXF1ZSwgRXJyb3IgKipl cnJwKQoreworCisgICAgaW90aHJlYWRfZ2V0X3BhcmFtKG9iaiwgdiwgbmFtZSwgb3BhcXVlLCBl cnJwKTsKK30KKworc3RhdGljIHZvaWQgaW90aHJlYWRfc2V0X2Fpb19wYXJhbShPYmplY3QgKm9i aiwgVmlzaXRvciAqdiwKKyAgICAgICAgY29uc3QgY2hhciAqbmFtZSwgdm9pZCAqb3BhcXVlLCBF cnJvciAqKmVycnApCit7CisgICAgSU9UaHJlYWQgKmlvdGhyZWFkID0gSU9USFJFQUQob2JqKTsK KworICAgIGlmICghaW90aHJlYWRfc2V0X3BhcmFtKG9iaiwgdiwgbmFtZSwgb3BhcXVlLCBlcnJw KSkgeworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgaWYgKGlvdGhyZWFkLT5jdHgpIHsK KyAgICAgICAgYWlvX2NvbnRleHRfc2V0X2Fpb19wYXJhbXMoaW90aHJlYWQtPmN0eCwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW90aHJlYWQtPmFpb19tYXhfYmF0Y2gsCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycnApOworICAgIH0KK30KKwogc3Rh dGljIHZvaWQgaW90aHJlYWRfY2xhc3NfaW5pdChPYmplY3RDbGFzcyAqa2xhc3MsIHZvaWQgKmNs YXNzX2RhdGEpCiB7CiAgICAgVXNlckNyZWF0YWJsZUNsYXNzICp1Y2MgPSBVU0VSX0NSRUFUQUJM RV9DTEFTUyhrbGFzcyk7CkBAIC0yODgsNiArMzI4LDEwIEBAIHN0YXRpYyB2b2lkIGlvdGhyZWFk X2NsYXNzX2luaXQoT2JqZWN0Q2xhc3MgKmtsYXNzLCB2b2lkICpjbGFzc19kYXRhKQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgaW90aHJlYWRfZ2V0X3BvbGxfcGFyYW0sCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBpb3RocmVhZF9zZXRfcG9sbF9wYXJhbSwKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIE5VTEwsICZwb2xsX3Nocmlua19pbmZvKTsKKyAgICBvYmpl Y3RfY2xhc3NfcHJvcGVydHlfYWRkKGtsYXNzLCAiYWlvLW1heC1iYXRjaCIsICJpbnQiLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW90aHJlYWRfZ2V0X2Fpb19wYXJhbSwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGlvdGhyZWFkX3NldF9haW9fcGFyYW0sCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAmYWlvX21heF9iYXRjaF9pbmZvKTsKIH0KIAog c3RhdGljIGNvbnN0IFR5cGVJbmZvIGlvdGhyZWFkX2luZm8gPSB7CkBAIC0zMzcsNiArMzgxLDcg QEAgc3RhdGljIGludCBxdWVyeV9vbmVfaW90aHJlYWQoT2JqZWN0ICpvYmplY3QsIHZvaWQgKm9w YXF1ZSkKICAgICBpbmZvLT5wb2xsX21heF9ucyA9IGlvdGhyZWFkLT5wb2xsX21heF9uczsKICAg ICBpbmZvLT5wb2xsX2dyb3cgPSBpb3RocmVhZC0+cG9sbF9ncm93OwogICAgIGluZm8tPnBvbGxf c2hyaW5rID0gaW90aHJlYWQtPnBvbGxfc2hyaW5rOworICAgIGluZm8tPmFpb19tYXhfYmF0Y2gg PSBpb3RocmVhZC0+YWlvX21heF9iYXRjaDsKIAogICAgIFFBUElfTElTVF9BUFBFTkQoKnRhaWws IGluZm8pOwogICAgIHJldHVybiAwOwpkaWZmIC0tZ2l0IGEvbW9uaXRvci9obXAtY21kcy5jIGIv bW9uaXRvci9obXAtY21kcy5jCmluZGV4IDA5NDIwMjcyMDguLmUwMDI1NWY3ZWUgMTAwNjQ0Ci0t LSBhL21vbml0b3IvaG1wLWNtZHMuYworKysgYi9tb25pdG9yL2htcC1jbWRzLmMKQEAgLTE4OTMs NiArMTg5Myw4IEBAIHZvaWQgaG1wX2luZm9faW90aHJlYWRzKE1vbml0b3IgKm1vbiwgY29uc3Qg UURpY3QgKnFkaWN0KQogICAgICAgICBtb25pdG9yX3ByaW50Zihtb24sICIgIHBvbGwtbWF4LW5z PSUiIFBSSWQ2NCAiXG4iLCB2YWx1ZS0+cG9sbF9tYXhfbnMpOwogICAgICAgICBtb25pdG9yX3By aW50Zihtb24sICIgIHBvbGwtZ3Jvdz0lIiBQUklkNjQgIlxuIiwgdmFsdWUtPnBvbGxfZ3Jvdyk7 CiAgICAgICAgIG1vbml0b3JfcHJpbnRmKG1vbiwgIiAgcG9sbC1zaHJpbms9JSIgUFJJZDY0ICJc biIsIHZhbHVlLT5wb2xsX3Nocmluayk7CisgICAgICAgIG1vbml0b3JfcHJpbnRmKG1vbiwgIiAg YWlvLW1heC1iYXRjaD0lIiBQUklkNjQgIlxuIiwKKyAgICAgICAgICAgICAgICAgICAgICAgdmFs dWUtPmFpb19tYXhfYmF0Y2gpOwogICAgIH0KIAogICAgIHFhcGlfZnJlZV9JT1RocmVhZEluZm9M aXN0KGluZm9fbGlzdCk7CmRpZmYgLS1naXQgYS91dGlsL2Fpby1wb3NpeC5jIGIvdXRpbC9haW8t cG9zaXguYwppbmRleCAzMGY1MzU0YjFlLi4yYjg2Nzc3ZTkxIDEwMDY0NAotLS0gYS91dGlsL2Fp by1wb3NpeC5jCisrKyBiL3V0aWwvYWlvLXBvc2l4LmMKQEAgLTcxNiwzICs3MTYsMTUgQEAgdm9p ZCBhaW9fY29udGV4dF9zZXRfcG9sbF9wYXJhbXMoQWlvQ29udGV4dCAqY3R4LCBpbnQ2NF90IG1h eF9ucywKIAogICAgIGFpb19ub3RpZnkoY3R4KTsKIH0KKwordm9pZCBhaW9fY29udGV4dF9zZXRf YWlvX3BhcmFtcyhBaW9Db250ZXh0ICpjdHgsIGludDY0X3QgbWF4X2JhdGNoLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBFcnJvciAqKmVycnApCit7CisgICAgLyoKKyAgICAgKiBO byB0aHJlYWQgc3luY2hyb25pemF0aW9uIGhlcmUsIGl0IGRvZXNuJ3QgbWF0dGVyIGlmIGFuIGlu Y29ycmVjdCB2YWx1ZQorICAgICAqIGlzIHVzZWQgb25jZS4KKyAgICAgKi8KKyAgICBjdHgtPmFp b19tYXhfYmF0Y2ggPSBtYXhfYmF0Y2g7CisKKyAgICBhaW9fbm90aWZ5KGN0eCk7Cit9CmRpZmYg LS1naXQgYS91dGlsL2Fpby13aW4zMi5jIGIvdXRpbC9haW8td2luMzIuYwppbmRleCAxNjg3MTdi NTFiLi5kNWIwOWExMTkzIDEwMDY0NAotLS0gYS91dGlsL2Fpby13aW4zMi5jCisrKyBiL3V0aWwv YWlvLXdpbjMyLmMKQEAgLTQ0MCwzICs0NDAsOCBAQCB2b2lkIGFpb19jb250ZXh0X3NldF9wb2xs X3BhcmFtcyhBaW9Db250ZXh0ICpjdHgsIGludDY0X3QgbWF4X25zLAogICAgICAgICBlcnJvcl9z ZXRnKGVycnAsICJBaW9Db250ZXh0IHBvbGxpbmcgaXMgbm90IGltcGxlbWVudGVkIG9uIFdpbmRv d3MiKTsKICAgICB9CiB9CisKK3ZvaWQgYWlvX2NvbnRleHRfc2V0X2Fpb19wYXJhbXMoQWlvQ29u dGV4dCAqY3R4LCBpbnQ2NF90IG1heF9iYXRjaCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgRXJyb3IgKiplcnJwKQoreworfQpkaWZmIC0tZ2l0IGEvdXRpbC9hc3luYy5jIGIvdXRp bC9hc3luYy5jCmluZGV4IDlhNDE1OTEzMTkuLjZmNjcxN2EzNGIgMTAwNjQ0Ci0tLSBhL3V0aWwv YXN5bmMuYworKysgYi91dGlsL2FzeW5jLmMKQEAgLTU1NCw2ICs1NTQsOCBAQCBBaW9Db250ZXh0 ICphaW9fY29udGV4dF9uZXcoRXJyb3IgKiplcnJwKQogICAgIGN0eC0+cG9sbF9ncm93ID0gMDsK ICAgICBjdHgtPnBvbGxfc2hyaW5rID0gMDsKIAorICAgIGN0eC0+YWlvX21heF9iYXRjaCA9IDA7 CisKICAgICByZXR1cm4gY3R4OwogZmFpbDoKICAgICBnX3NvdXJjZV9kZXN0cm95KCZjdHgtPnNv dXJjZSk7CmRpZmYgLS1naXQgYS9xZW11LW9wdGlvbnMuaHggYi9xZW11LW9wdGlvbnMuaHgKaW5k ZXggMGM5ZGRjMDI3NC4uOTllZDVlYzVmMSAxMDA2NDQKLS0tIGEvcWVtdS1vcHRpb25zLmh4Cisr KyBiL3FlbXUtb3B0aW9ucy5oeApAQCAtNTMwMSw3ICs1MzAxLDcgQEAgU1JTVAogCiAgICAgICAg ICAgICBDTj1sYXB0b3AuZXhhbXBsZS5jb20sTz1FeGFtcGxlIEhvbWUsTD1Mb25kb24sU1Q9TG9u ZG9uLEM9R0IKIAotICAgIGBgLW9iamVjdCBpb3RocmVhZCxpZD1pZCxwb2xsLW1heC1ucz1wb2xs LW1heC1ucyxwb2xsLWdyb3c9cG9sbC1ncm93LHBvbGwtc2hyaW5rPXBvbGwtc2hyaW5rYGAKKyAg ICBgYC1vYmplY3QgaW90aHJlYWQsaWQ9aWQscG9sbC1tYXgtbnM9cG9sbC1tYXgtbnMscG9sbC1n cm93PXBvbGwtZ3Jvdyxwb2xsLXNocmluaz1wb2xsLXNocmluayxhaW8tbWF4LWJhdGNoPWFpby1t YXgtYmF0Y2hgYAogICAgICAgICBDcmVhdGVzIGEgZGVkaWNhdGVkIGV2ZW50IGxvb3AgdGhyZWFk IHRoYXQgZGV2aWNlcyBjYW4gYmUKICAgICAgICAgYXNzaWduZWQgdG8uIFRoaXMgaXMga25vd24g YXMgYW4gSU9UaHJlYWQuIEJ5IGRlZmF1bHQgZGV2aWNlCiAgICAgICAgIGVtdWxhdGlvbiBoYXBw ZW5zIGluIHZDUFUgdGhyZWFkcyBvciB0aGUgbWFpbiBldmVudCBsb29wIHRocmVhZC4KQEAgLTUz MzcsNyArNTMzNywxMSBAQCBTUlNUCiAgICAgICAgIHRoZSBwb2xsaW5nIHRpbWUgd2hlbiB0aGUg YWxnb3JpdGhtIGRldGVjdHMgaXQgaXMgc3BlbmRpbmcgdG9vCiAgICAgICAgIGxvbmcgcG9sbGlu ZyB3aXRob3V0IGVuY291bnRlcmluZyBldmVudHMuCiAKLSAgICAgICAgVGhlIHBvbGxpbmcgcGFy YW1ldGVycyBjYW4gYmUgbW9kaWZpZWQgYXQgcnVuLXRpbWUgdXNpbmcgdGhlCisgICAgICAgIFRo ZSBgYGFpby1tYXgtYmF0Y2hgYCBwYXJhbWV0ZXIgaXMgdGhlIG1heGltdW0gbnVtYmVyIG9mIHJl cXVlc3RzCisgICAgICAgIGluIGEgYmF0Y2ggZm9yIHRoZSBBSU8gZW5naW5lLCAwIG1lYW5zIHRo YXQgdGhlIGVuZ2luZSB3aWxsIHVzZQorICAgICAgICBpdHMgZGVmYXVsdC4KKworICAgICAgICBU aGUgSU9UaHJlYWQgcGFyYW1ldGVycyBjYW4gYmUgbW9kaWZpZWQgYXQgcnVuLXRpbWUgdXNpbmcg dGhlCiAgICAgICAgIGBgcW9tLXNldGBgIGNvbW1hbmQgKHdoZXJlIGBgaW90aHJlYWQxYGAgaXMg dGhlIElPVGhyZWFkJ3MKICAgICAgICAgYGBpZGBgKToKIAotLSAKMi4zMS4xCgo=