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=-9.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, USER_AGENT_GIT 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 E37D1C33CAF for ; Mon, 13 Jan 2020 21:34:12 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (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 B404C2084D for ; Mon, 13 Jan 2020 21:34:12 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B404C2084D Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=xen.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1ir7LP-0006Zg-NM; Mon, 13 Jan 2020 21:33:55 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1ir7LO-0006ZR-4s for xen-devel@lists.xenproject.org; Mon, 13 Jan 2020 21:33:54 +0000 X-Inumbo-ID: 63d67546-364c-11ea-82e6-12813bfff9fa Received: from mail-wr1-f68.google.com (unknown [209.85.221.68]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id 63d67546-364c-11ea-82e6-12813bfff9fa; Mon, 13 Jan 2020 21:33:51 +0000 (UTC) Received: by mail-wr1-f68.google.com with SMTP id c14so10172723wrn.7 for ; Mon, 13 Jan 2020 13:33:51 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=nGKvJF6eT0mDZtX41O0asvxAkfZ8//D5/WgZOr3je3E=; b=ehKqlu6kRjAcdCkCM9VO2v9QXK31o6ArmabW+/lqyCPh9koWgl3dISJfnKCHR9lsA0 jFsNBjfa+V3jEz+9O39tt9bdgFacAFugpBKFPXRxkXD8grJov2jOBiglvQcpXdYuYxOu sIFJcK9GqAQTFFfvB+lpstlnEN0dnAa7aMHaTKJRy/MD7ifEAk6+n9xW6I0S19KDOQrX HAOW/7Z27uFUSWfkv/a+WtvIt5rR+k7bvss6DO+jbZIgDLQZMnfNwyygP69Mz6w0M7Jm afteclzJpH/D10RHKpp/hvP+V4pgx87wDULJXHy3KCPlICuDVG6EhU1vRElFrQbSIzJc IWLw== X-Gm-Message-State: APjAAAVN5Vfyxg8lthNML19Nk33xSQtBG1gZNt4wxuJy9wge1ERd4OpV g7Z+qVvE30ToiAroiD2Lp/7LJ/0A/fyH3A== X-Google-Smtp-Source: APXvYqws7GCwqgp8+jE1b4P5tU3/Sdbbdup7y5dmzPMOCtd/RYTjAUdzE7Oeiu94SLWSwLX9gBEjNw== X-Received: by 2002:a5d:5345:: with SMTP id t5mr21789840wrv.0.1578951230237; Mon, 13 Jan 2020 13:33:50 -0800 (PST) Received: from a483e7b01a66.ant.amazon.com (54-240-197-230.amazon.com. [54.240.197.230]) by smtp.gmail.com with ESMTPSA id i10sm16938652wru.16.2020.01.13.13.33.48 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 13 Jan 2020 13:33:49 -0800 (PST) From: Julien Grall To: xen-devel@lists.xenproject.org Date: Mon, 13 Jan 2020 21:33:42 +0000 Message-Id: <20200113213342.8206-5-julien@xen.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20200113213342.8206-1-julien@xen.org> References: <20200113213342.8206-1-julien@xen.org> MIME-Version: 1.0 Subject: [Xen-devel] [PATCH 4/4] xen/x86: Rework inclusion between struct pirq and struct hvm_pirq_dpci X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Stefano Stabellini , Julien Grall , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Julien Grall , Ian Jackson , Jan Beulich , Volodymyr Babchuk , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" RnJvbTogSnVsaWVuIEdyYWxsIDxqZ3JhbGxAYW1hem9uLmNvbT4KCkF0IHRoZSBtb21lbnQsIGFs bG9jX3BpcnFfc3RydWN0KCkgcmVsaWVzIG9uIHRoZSBmaWVsZCAnYXJjaCcgdG8gYmUgdGhlCmxh c3QgbWVtYmVyIG9mIHRoZSBzdHJ1Y3R1cmUuCgpBcyB0aGlzIGlzIHVzZWQgZm9yIGNvbXB1dGlu ZyB0aGUgc2l6ZSBvZiB0aGUgc3RydWN0dXJlLCB0aGUgdmFsdWUgd2lsbApiZSBtaXNjb21wdXRl ZCBpZiBhIG5ldyBmaWVsZCBpcyBhZGRlZCBhZnRlcndhcmRzLgoKU3VjaCBxdWlya2luZXNzIG1h a2VzIHF1aXRlIGRpZmZpY3VsdCB0byB1bmRlcnN0YW5kIGhvdyBzdHJ1Y3QgcGlycQp3b3Jrcy4g R2l2ZW4gdGhhdCBzdHJ1Y3QgaHZtX3BpcnFfZHBjaSBpcyBvbmx5IHVzZWQgaW4gY29tYmluYXRp b24gb2YgYQpzdHJ1Y3QgcGlycSwgd2UgY2FuIGludmVyc2UgdGhlIGluY2x1c2lvbi4gaS5lIHBp cnEgd2lsbCBub3cgYmUKY29udGFpbmVkIGluIHN0cnVjdCBodm1fcGlycV9kcGNpLgoKQXMgdGhl IGZpZWxkIHBpcnEuYXJjaC5odm0uZW11aXJxIGlzIGFzIHdlbGwgSFZNIHNwZWNpZmljLCB0aGlz IGlzIG5vdwptb3ZlZCBpbiBzdHJ1Y3QgaHZtX3BpcnFfZHBjaS4KClRoZXJlIGlzIGEgZmV3IHNp ZGUgZWZmZWN0cyB3aXRoIHRoaXMgY2hhbmdlczoKICAgIC0gV2Ugbm93IG5lZWQgdG8gZGlzdGlu Z3Vpc2ggYmV0d2VlbiBQSVJRIGFsbG9jYXRlZCBmb3IgSFZNIGFuZCBQVgogICAgICBndWVzdHMu IFRoaXMgaXMgdG8gYWxsb3cgdXMgdG8ga25vdyB3aGF0IHdlIGFyZSBmcmVlaW5nLgogICAgLSBj b250YWluZXJfb2YgaXMgbm90IGFibGUgdG8gY2F0ZXIgd2l0aCBjb25zdCBhbmQgbm9uLWNvbnN0 IGF0IHRoZQogICAgICBzYW1lIHRpbWUuIFNvIHdlIG5lZWQgdG8gaW50cm9kdWNlIHR3byBtYWNy b3MgKGNvbnN0IGFuZAogICAgICBub24tY29uc3QpLgoKTGFzdGx5IGFsbCB0aGUgSFZNIHNwZWNp ZmljIHBpcnEgY29kZSBjYW4gbm93IGJlIG1vdmVkIGluIGh2bS9pcnEuaAphbGxvd2luZyB1c2Ug dG8gZHJvcCB0aGUgaW5jbHVkZSBmcm9tIGlycS5oLiBUaGlzIGlzIG9uZSBsZXNzIGhlYWRlcgpp bmNsdWRlZCB0cmVld2lkZS4KClNpZ25lZC1vZmYtYnk6IEp1bGllbiBHcmFsbCA8amdyYWxsQGFt YXpvbi5jb20+Ci0tLQogeGVuL2FyY2gvYXJtL2lycS5jICAgICAgICAgICAgfCAgNSArKysrKwog eGVuL2FyY2gveDg2L2h2bS9pcnEuYyAgICAgICAgfCAgNyArKysrLS0tCiB4ZW4vYXJjaC94ODYv aXJxLmMgICAgICAgICAgICB8IDM5ICsrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0t CiB4ZW4vY29tbW9uL2RvbWFpbi5jICAgICAgICAgICB8ICA3ICstLS0tLS0KIHhlbi9kcml2ZXJz L3Bhc3N0aHJvdWdoL2lvLmMgIHwgIDEgKwogeGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vaXJxLmgg fCAxOSArKysrKysrKysrKysrKysrKwogeGVuL2luY2x1ZGUvYXNtLXg4Ni9pcnEuaCAgICAgfCAx OSArKystLS0tLS0tLS0tLS0tLQogeGVuL2luY2x1ZGUveGVuL2RvbWFpbi5oICAgICAgfCAgMyAr KysKIDggZmlsZXMgY2hhbmdlZCwgNjMgaW5zZXJ0aW9ucygrKSwgMzcgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEveGVuL2FyY2gvYXJtL2lycS5jIGIveGVuL2FyY2gvYXJtL2lycS5jCmluZGV4 IDM4Nzc2NTdhNTIuLmZkMTA4ZWEzYTUgMTAwNjQ0Ci0tLSBhL3hlbi9hcmNoL2FybS9pcnEuYwor KysgYi94ZW4vYXJjaC9hcm0vaXJxLmMKQEAgLTU4Miw2ICs1ODIsMTEgQEAgc3RydWN0IHBpcnEg KmFsbG9jX3BpcnFfc3RydWN0KHN0cnVjdCBkb21haW4gKmQpCiAgICAgcmV0dXJuIE5VTEw7CiB9 CiAKK3ZvaWQgYXJjaF9mcmVlX3BpcnFfc3RydWN0KHN0cnVjdCByY3VfaGVhZCAqaGVhZCkKK3sK KyAgICBBU1NFUlRfVU5SRUFDSEFCTEUoKTsKK30KKwogLyoKICAqIFRoZXNlIGFyZSBhbGwgdW5y ZWFjaGFibGUgZ2l2ZW4gYW4gYWxsb2NfcGlycV9zdHJ1Y3QKICAqIHdoaWNoIHJldHVybnMgTlVM TCwgYWxsIGNhbGxlcnMgdHJ5IHRvIGxvb2t1cCBzdHJ1Y3QgcGlycSBmaXJzdApkaWZmIC0tZ2l0 IGEveGVuL2FyY2gveDg2L2h2bS9pcnEuYyBiL3hlbi9hcmNoL3g4Ni9odm0vaXJxLmMKaW5kZXgg YzY4NDQyMmIyNC4uZTBiYjBhOGI5MCAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2h2bS9pcnEu YworKysgYi94ZW4vYXJjaC94ODYvaHZtL2lycS5jCkBAIC0yOSw3ICsyOSw4IEBACiAKIGJvb2wg aHZtX2RvbWFpbl91c2VfcGlycShjb25zdCBzdHJ1Y3QgZG9tYWluICpkLCBjb25zdCBzdHJ1Y3Qg cGlycSAqcGlycSkKIHsKLSAgICByZXR1cm4gaXNfaHZtX2RvbWFpbihkKSAmJiBwaXJxICYmIHBp cnEtPmFyY2guaHZtLmVtdWlycSAhPSBJUlFfVU5CT1VORDsKKyAgICByZXR1cm4gaXNfaHZtX2Rv bWFpbihkKSAmJiBwaXJxICYmCisgICAgICAgIGNvbnN0X3BpcnFfZHBjaShwaXJxKS0+ZW11aXJx ICE9IElSUV9VTkJPVU5EOwogfQogCiAvKiBNdXN0IGJlIGNhbGxlZCB3aXRoIGh2bV9kb21haW4t PmlycV9sb2NrIGhvbGQgKi8KQEAgLTM5Niw3ICszOTcsNyBAQCBpbnQgaHZtX2luamVjdF9tc2ko c3RydWN0IGRvbWFpbiAqZCwgdWludDY0X3QgYWRkciwgdWludDMyX3QgZGF0YSkKICAgICAgICAg ICAgIHN0cnVjdCBwaXJxICppbmZvID0gcGlycV9pbmZvKGQsIHBpcnEpOwogCiAgICAgICAgICAg ICAvKiBpZiBpdCBpcyB0aGUgZmlyc3QgdGltZSwgYWxsb2NhdGUgdGhlIHBpcnEgKi8KLSAgICAg ICAgICAgIGlmICggIWluZm8gfHwgaW5mby0+YXJjaC5odm0uZW11aXJxID09IElSUV9VTkJPVU5E ICkKKyAgICAgICAgICAgIGlmICggIWluZm8gfHwgcGlycV9kcGNpKGluZm8pLT5lbXVpcnEgPT0g SVJRX1VOQk9VTkQgKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIGludCByYzsKIApA QCAtNDA5LDcgKzQxMCw3IEBAIGludCBodm1faW5qZWN0X21zaShzdHJ1Y3QgZG9tYWluICpkLCB1 aW50NjRfdCBhZGRyLCB1aW50MzJfdCBkYXRhKQogICAgICAgICAgICAgICAgIGlmICggIWluZm8g KQogICAgICAgICAgICAgICAgICAgICByZXR1cm4gLUVCVVNZOwogICAgICAgICAgICAgfQotICAg ICAgICAgICAgZWxzZSBpZiAoIGluZm8tPmFyY2guaHZtLmVtdWlycSAhPSBJUlFfTVNJX0VNVSAp CisgICAgICAgICAgICBlbHNlIGlmICggcGlycV9kcGNpKGluZm8pLT5lbXVpcnEgIT0gSVJRX01T SV9FTVUgKQogICAgICAgICAgICAgICAgIHJldHVybiAtRUlOVkFMOwogICAgICAgICAgICAgc2Vu ZF9ndWVzdF9waXJxKGQsIGluZm8pOwogICAgICAgICAgICAgcmV0dXJuIDA7CmRpZmYgLS1naXQg YS94ZW4vYXJjaC94ODYvaXJxLmMgYi94ZW4vYXJjaC94ODYvaXJxLmMKaW5kZXggMzEwYWMwMGE2 MC4uM2UwMTEwMWY4OCAxMDA2NDQKLS0tIGEveGVuL2FyY2gveDg2L2lycS5jCisrKyBiL3hlbi9h cmNoL3g4Ni9pcnEuYwpAQCAtMTI4NiwyMiArMTI4NiwzNyBAQCB2b2lkIGNsZWFudXBfZG9tYWlu X2lycV9tYXBwaW5nKHN0cnVjdCBkb21haW4gKmQpCiAKIHN0cnVjdCBwaXJxICphbGxvY19waXJx X3N0cnVjdChzdHJ1Y3QgZG9tYWluICpkKQogewotICAgIHNpemVfdCBzeiA9IGlzX2h2bV9kb21h aW4oZCkgPyBzaXplb2Yoc3RydWN0IHBpcnEpIDoKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgb2Zmc2V0b2Yoc3RydWN0IHBpcnEsIGFyY2guaHZtKTsKLSAgICBzdHJ1Y3QgcGly cSAqcGlycSA9IHh6YWxsb2NfYnl0ZXMoc3opOworICAgIHN0cnVjdCBwaXJxICpwaXJxOwogCi0g ICAgaWYgKCBwaXJxICkKKyAgICBpZiAoIGlzX2h2bV9kb21haW4oZCkgKQogICAgIHsKLSAgICAg ICAgaWYgKCBpc19odm1fZG9tYWluKGQpICkKKyAgICAgICAgc3RydWN0IGh2bV9waXJxX2RwY2kg KmRwY2kgPSB4emFsbG9jKHN0cnVjdCBodm1fcGlycV9kcGNpKTsKKworICAgICAgICBpZiAoIGRw Y2kgKQogICAgICAgICB7Ci0gICAgICAgICAgICBwaXJxLT5hcmNoLmh2bS5lbXVpcnEgPSBJUlFf VU5CT1VORDsKLSAgICAgICAgICAgIHB0X3BpcnFfaW5pdChkLCAmcGlycS0+YXJjaC5odm0uZHBj aSk7CisgICAgICAgICAgICBwdF9waXJxX2luaXQoZCwgZHBjaSk7CisgICAgICAgICAgICBwaXJx ID0gZHBjaV9waXJxKGRwY2kpOworICAgICAgICAgICAgcGlycS0+YXJjaC5odm0gPSB0cnVlOwog ICAgICAgICB9CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHBpcnEgPSBOVUxMOwogICAgIH0K KyAgICBlbHNlCisgICAgICAgIHBpcnEgPSB4emFsbG9jKHN0cnVjdCBwaXJxKTsKIAogICAgIHJl dHVybiBwaXJxOwogfQogCit2b2lkIGFyY2hfZnJlZV9waXJxX3N0cnVjdChzdHJ1Y3QgcmN1X2hl YWQgKmhlYWQpCit7CisgICAgc3RydWN0IHBpcnEgKnBpcnEgPSBjb250YWluZXJfb2YoaGVhZCwg c3RydWN0IHBpcnEsIHJjdV9oZWFkKTsKKworICAgIGlmICggcGlycS0+YXJjaC5odm0gKQorICAg ICAgICB4ZnJlZShwaXJxX2RwY2kocGlycSkpOworICAgIGVsc2UKKyAgICAgICAgeGZyZWUocGly cSk7Cit9CisKIHZvaWQgKHBpcnFfY2xlYW51cF9jaGVjaykoc3RydWN0IHBpcnEgKnBpcnEsIHN0 cnVjdCBkb21haW4gKmQpCiB7CiAgICAgLyoKQEAgLTEzMTUsOSArMTMzMCw5IEBAIHZvaWQgKHBp cnFfY2xlYW51cF9jaGVjaykoc3RydWN0IHBpcnEgKnBpcnEsIHN0cnVjdCBkb21haW4gKmQpCiAK ICAgICBpZiAoIGlzX2h2bV9kb21haW4oZCkgKQogICAgIHsKLSAgICAgICAgaWYgKCBwaXJxLT5h cmNoLmh2bS5lbXVpcnEgIT0gSVJRX1VOQk9VTkQgKQorICAgICAgICBpZiAoIHBpcnFfZHBjaShw aXJxKS0+ZW11aXJxICE9IElSUV9VTkJPVU5EICkKICAgICAgICAgICAgIHJldHVybjsKLSAgICAg ICAgaWYgKCAhcHRfcGlycV9jbGVhbnVwX2NoZWNrKCZwaXJxLT5hcmNoLmh2bS5kcGNpKSApCisg ICAgICAgIGlmICggIXB0X3BpcnFfY2xlYW51cF9jaGVjayhwaXJxX2RwY2kocGlycSkpICkKICAg ICAgICAgICAgIHJldHVybjsKICAgICB9CiAKQEAgLTIwMjksNyArMjA0NCw3IEBAIHN0YXRpYyBp bmxpbmUgYm9vbCBpc19mcmVlX3BpcnEoY29uc3Qgc3RydWN0IGRvbWFpbiAqZCwKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RydWN0IHBpcnEgKnBpcnEpCiB7CiAgICAg cmV0dXJuICFwaXJxIHx8ICghcGlycS0+YXJjaC5pcnEgJiYgKCFpc19odm1fZG9tYWluKGQpIHx8 Ci0gICAgICAgIHBpcnEtPmFyY2guaHZtLmVtdWlycSA9PSBJUlFfVU5CT1VORCkpOworICAgICAg ICBjb25zdF9waXJxX2RwY2kocGlycSktPmVtdWlycSA9PSBJUlFfVU5CT1VORCkpOwogfQogCiBp bnQgZ2V0X2ZyZWVfcGlycShzdHJ1Y3QgZG9tYWluICpkLCBpbnQgdHlwZSkKQEAgLTI3MjQsNyAr MjczOSw3IEBAIGludCBtYXBfZG9tYWluX2VtdWlycV9waXJxKHN0cnVjdCBkb21haW4gKmQsIGlu dCBwaXJxLCBpbnQgZW11aXJxKQogICAgICAgICAgICAgcmV0dXJuIGVycjsKICAgICAgICAgfQog ICAgIH0KLSAgICBpbmZvLT5hcmNoLmh2bS5lbXVpcnEgPSBlbXVpcnE7CisgICAgcGlycV9kcGNp KGluZm8pLT5lbXVpcnEgPSBlbXVpcnE7CiAKICAgICByZXR1cm4gMDsKIH0KQEAgLTI3NTQsNyAr Mjc2OSw3IEBAIGludCB1bm1hcF9kb21haW5fcGlycV9lbXVpcnEoc3RydWN0IGRvbWFpbiAqZCwg aW50IHBpcnEpCiAgICAgaW5mbyA9IHBpcnFfaW5mbyhkLCBwaXJxKTsKICAgICBpZiAoIGluZm8g KQogICAgIHsKLSAgICAgICAgaW5mby0+YXJjaC5odm0uZW11aXJxID0gSVJRX1VOQk9VTkQ7Cisg ICAgICAgIHBpcnFfZHBjaShpbmZvKS0+ZW11aXJxID0gSVJRX1VOQk9VTkQ7CiAgICAgICAgIHBp cnFfY2xlYW51cF9jaGVjayhpbmZvLCBkKTsKICAgICB9CiAgICAgaWYgKCBlbXVpcnEgIT0gSVJR X1BUICkKZGlmZiAtLWdpdCBhL3hlbi9jb21tb24vZG9tYWluLmMgYi94ZW4vY29tbW9uL2RvbWFp bi5jCmluZGV4IDBiMTEwM2ZkYjIuLjdmMDRkYTc5ZTYgMTAwNjQ0Ci0tLSBhL3hlbi9jb21tb24v ZG9tYWluLmMKKysrIGIveGVuL2NvbW1vbi9kb21haW4uYwpAQCAtMTYyNSwxNiArMTYyNSwxMSBA QCBzdHJ1Y3QgcGlycSAqcGlycV9nZXRfaW5mbyhzdHJ1Y3QgZG9tYWluICpkLCBpbnQgcGlycSkK ICAgICByZXR1cm4gaW5mbzsKIH0KIAotc3RhdGljIHZvaWQgX2ZyZWVfcGlycV9zdHJ1Y3Qoc3Ry dWN0IHJjdV9oZWFkICpoZWFkKQotewotICAgIHhmcmVlKGNvbnRhaW5lcl9vZihoZWFkLCBzdHJ1 Y3QgcGlycSwgcmN1X2hlYWQpKTsKLX0KLQogdm9pZCBmcmVlX3BpcnFfc3RydWN0KHZvaWQgKnB0 cikKIHsKICAgICBzdHJ1Y3QgcGlycSAqcGlycSA9IHB0cjsKIAotICAgIGNhbGxfcmN1KCZwaXJx LT5yY3VfaGVhZCwgX2ZyZWVfcGlycV9zdHJ1Y3QpOworICAgIGNhbGxfcmN1KCZwaXJxLT5yY3Vf aGVhZCwgYXJjaF9mcmVlX3BpcnFfc3RydWN0KTsKIH0KIAogc3RydWN0IG1pZ3JhdGVfaW5mbyB7 CmRpZmYgLS1naXQgYS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9pby5jIGIveGVuL2RyaXZlcnMv cGFzc3Rocm91Z2gvaW8uYwppbmRleCBiMjkyZTc5MzgyLi5lN2IyODhiNGFhIDEwMDY0NAotLS0g YS94ZW4vZHJpdmVycy9wYXNzdGhyb3VnaC9pby5jCisrKyBiL3hlbi9kcml2ZXJzL3Bhc3N0aHJv dWdoL2lvLmMKQEAgLTc2OSw2ICs3NjksNyBAQCBpbnQgcHRfaXJxX2Rlc3Ryb3lfYmluZCgKIAog dm9pZCBwdF9waXJxX2luaXQoc3RydWN0IGRvbWFpbiAqZCwgc3RydWN0IGh2bV9waXJxX2RwY2kg KmRwY2kpCiB7CisgICAgZHBjaS0+ZW11aXJxID0gSVJRX1VOQk9VTkQ7CiAgICAgSU5JVF9MSVNU X0hFQUQoJmRwY2ktPmRpZ2xfbGlzdCk7CiAgICAgZHBjaS0+Z21zaS5kZXN0X3ZjcHVfaWQgPSAt MTsKIH0KZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRlL2FzbS14ODYvaHZtL2lycS5oIGIveGVuL2lu Y2x1ZGUvYXNtLXg4Ni9odm0vaXJxLmgKaW5kZXggNWI3ZTkwYzE3OS4uMGNjZmFhZDUzYiAxMDA2 NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vaXJxLmgKKysrIGIveGVuL2luY2x1ZGUv YXNtLXg4Ni9odm0vaXJxLmgKQEAgLTIxLDYgKzIxLDcgQEAKICNpZm5kZWYgX19BU01fWDg2X0hW TV9JUlFfSF9fCiAjZGVmaW5lIF9fQVNNX1g4Nl9IVk1fSVJRX0hfXwogCisjaW5jbHVkZSA8eGVu L2lycS5oPgogI2luY2x1ZGUgPHhlbi90aW1lci5oPgogCiAjaW5jbHVkZSA8YXNtL2h2bS9odm0u aD4KQEAgLTE3MSw4ICsxNzIsMjYgQEAgc3RydWN0IGh2bV9waXJxX2RwY2kgewogICAgIHN0cnVj dCBodm1fZ21zaV9pbmZvIGdtc2k7CiAgICAgc3RydWN0IHRpbWVyIHRpbWVyOwogICAgIHN0cnVj dCBsaXN0X2hlYWQgc29mdGlycV9saXN0OworICAgIGludCBlbXVpcnE7CisgICAgc3RydWN0IHBp cnEgcGlycTsKIH07CiAKKyNkZWZpbmUgcGlycV9kcGNpKHApICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKHApID8gY29udGFpbmVyX29m KHAsIHN0cnVjdCBodm1fcGlycV9kcGNpLCBwaXJxKSA6IE5VTEwpCisjZGVmaW5lIGNvbnN0X3Bp cnFfZHBjaShwKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc CisgICAgKChwKSA/IGNvbnRhaW5lcl9vZihwLCBjb25zdCBzdHJ1Y3QgaHZtX3BpcnFfZHBjaSwg cGlycSkgOiBOVUxMKQorCisjZGVmaW5lIGRwY2lfcGlycShwZCkgKCYocGQpLT5waXJxKQorCisj ZGVmaW5lIGRvbWFpbl9waXJxX3RvX2VtdWlycShkLCBwKSAoeyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcCisgICAgc3RydWN0IHBpcnEgKl9fcGkgPSBwaXJxX2luZm8oZCwgcCk7 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgX19waSA/IHBpcnFfZHBjaShf X3BpKS0+ZW11aXJxIDogSVJRX1VOQk9VTkQ7ICAgICAgICAgICAgICAgICAgICAgICBcCit9KQor I2RlZmluZSBkb21haW5fZW11aXJxX3RvX3BpcnEoZCwgZW11aXJxKSAoeyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXAorICAgIHZvaWQgKl9fcmV0ID0gcmFkaXhfdHJlZV9sb29rdXAoJihk KS0+YXJjaC5odm0uZW11aXJxX3BpcnEsIGVtdWlycSk7XAorICAgIF9fcmV0ID8gcmFkaXhfdHJl ZV9wdHJfdG9faW50KF9fcmV0KSA6IElSUV9VTkJPVU5EOyAgICAgICAgICAgICAgICAgXAorfSkK Kwogdm9pZCBwdF9waXJxX2luaXQoc3RydWN0IGRvbWFpbiAqLCBzdHJ1Y3QgaHZtX3BpcnFfZHBj aSAqKTsKIGJvb2wgcHRfcGlycV9jbGVhbnVwX2NoZWNrKHN0cnVjdCBodm1fcGlycV9kcGNpICop OwogaW50IHB0X3BpcnFfaXRlcmF0ZShzdHJ1Y3QgZG9tYWluICpkLApkaWZmIC0tZ2l0IGEveGVu L2luY2x1ZGUvYXNtLXg4Ni9pcnEuaCBiL3hlbi9pbmNsdWRlL2FzbS14ODYvaXJxLmgKaW5kZXgg NDRhZWZjOGYwMy4uMDdhNjNiYWUwNCAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9p cnEuaAorKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L2lycS5oCkBAIC04LDcgKzgsNiBAQAogI2lu Y2x1ZGUgPHhlbi9jcHVtYXNrLmg+CiAjaW5jbHVkZSA8eGVuL3BlcmNwdS5oPgogI2luY2x1ZGUg PHhlbi9zbXAuaD4KLSNpbmNsdWRlIDxhc20vaHZtL2lycS5oPgogCiBleHRlcm4gdW5zaWduZWQg aW50IG5yX2lycXNfZ3NpOwogZXh0ZXJuIHVuc2lnbmVkIGludCBucl9pcnFzOwpAQCAtMTMzLDE3 ICsxMzIsMTAgQEAgREVDTEFSRV9QRVJfQ1BVKHVuc2lnbmVkIGludCwgaXJxX2NvdW50KTsKIAog c3RydWN0IGFyY2hfcGlycSB7CiAgICAgaW50IGlycTsKLSAgICB1bmlvbiB7Ci0gICAgICAgIHN0 cnVjdCBodm1fcGlycSB7Ci0gICAgICAgICAgICBpbnQgZW11aXJxOwotICAgICAgICAgICAgc3Ry dWN0IGh2bV9waXJxX2RwY2kgZHBjaTsKLSAgICAgICAgfSBodm07Ci0gICAgfTsKKyAgICAvKiBJ cyB0aGUgUElSUSBhc3NvY2lhdGVkIHRvIGFuIEhWTSBkb21haW4/ICovCisgICAgYm9vbCBodm07 CiB9OwogCi0jZGVmaW5lIHBpcnFfZHBjaShwaXJxKSAoKHBpcnEpID8gJihwaXJxKS0+YXJjaC5o dm0uZHBjaSA6IE5VTEwpCi0jZGVmaW5lIGRwY2lfcGlycShwZCkgY29udGFpbmVyX29mKHBkLCBz dHJ1Y3QgcGlycSwgYXJjaC5odm0uZHBjaSkKLQogaW50IHBpcnFfc2hhcmVkKHN0cnVjdCBkb21h aW4gKmQgLCBpbnQgaXJxKTsKIAogaW50IG1hcF9kb21haW5fcGlycShzdHJ1Y3QgZG9tYWluICpk LCBpbnQgcGlycSwgaW50IGlycSwgaW50IHR5cGUsCkBAIC0xOTgsMTIgKzE5MCw3IEBAIHZvaWQg Y2xlYW51cF9kb21haW5faXJxX21hcHBpbmcoc3RydWN0IGRvbWFpbiAqKTsKICAgICBfX3JldCA/ IHJhZGl4X3RyZWVfcHRyX3RvX2ludChfX3JldCkgOiAwOyAgICAgICAgICAgICAgICAgICBcCiB9 KQogI2RlZmluZSBQSVJRX0FMTE9DQVRFRCAtMQotI2RlZmluZSBkb21haW5fcGlycV90b19lbXVp cnEoZCwgcGlycSkgcGlycV9maWVsZChkLCBwaXJxLCAgICAgICAgICAgICAgXAotICAgIGFyY2gu aHZtLmVtdWlycSwgSVJRX1VOQk9VTkQpCi0jZGVmaW5lIGRvbWFpbl9lbXVpcnFfdG9fcGlycShk LCBlbXVpcnEpICh7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgdm9pZCAqX19y ZXQgPSByYWRpeF90cmVlX2xvb2t1cCgmKGQpLT5hcmNoLmh2bS5lbXVpcnFfcGlycSwgZW11aXJx KTtcCi0gICAgX19yZXQgPyByYWRpeF90cmVlX3B0cl90b19pbnQoX19yZXQpIDogSVJRX1VOQk9V TkQ7ICAgICAgICAgICAgICAgICBcCi19KQorCiAjZGVmaW5lIElSUV9VTkJPVU5EIC0xCiAjZGVm aW5lIElSUV9QVCAtMgogI2RlZmluZSBJUlFfTVNJX0VNVSAtMwpkaWZmIC0tZ2l0IGEveGVuL2lu Y2x1ZGUveGVuL2RvbWFpbi5oIGIveGVuL2luY2x1ZGUveGVuL2RvbWFpbi5oCmluZGV4IDg5YmYw YTE3MjEuLjk5YWVhNjMwZDQgMTAwNjQ0Ci0tLSBhL3hlbi9pbmNsdWRlL3hlbi9kb21haW4uaAor KysgYi94ZW4vaW5jbHVkZS94ZW4vZG9tYWluLmgKQEAgLTQyLDYgKzQyLDkgQEAgdm9pZCBmcmVl X3ZjcHVfc3RydWN0KHN0cnVjdCB2Y3B1ICp2KTsKIAogLyogQWxsb2NhdGUvZnJlZSBhIFBJUlEg c3RydWN0dXJlLiAqLwogc3RydWN0IHBpcnEgKmFsbG9jX3BpcnFfc3RydWN0KHN0cnVjdCBkb21h aW4gKik7CisKKy8qIFBlci1hcmNoIGNhbGxiYWNrIHVzZWQgYnkgdGhlIFJDVSAqLwordm9pZCBh cmNoX2ZyZWVfcGlycV9zdHJ1Y3Qoc3RydWN0IHJjdV9oZWFkICpoZWFkKTsKIHZvaWQgZnJlZV9w aXJxX3N0cnVjdCh2b2lkICopOwogCiAvKgotLSAKMi4yNC4wCgoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4t ZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9t YWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==