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=-6.5 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED 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 AF892C43331 for ; Fri, 6 Sep 2019 19:16:56 +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 69891206BB for ; Fri, 6 Sep 2019 19:16:56 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=amdcloud.onmicrosoft.com header.i=@amdcloud.onmicrosoft.com header.b="lFyCayaT" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 69891206BB Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=amd.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Received: from localhost ([::1]:59566 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1i6Jj4-00075q-TX for qemu-devel@archiver.kernel.org; Fri, 06 Sep 2019 15:16:54 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:42227) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1i6JeL-0001z1-Js for qemu-devel@nongnu.org; Fri, 06 Sep 2019 15:12:03 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1i6JeJ-000468-V4 for qemu-devel@nongnu.org; Fri, 06 Sep 2019 15:12:01 -0400 Received: from mail-eopbgr820045.outbound.protection.outlook.com ([40.107.82.45]:56736 helo=NAM01-SN1-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1i6JeJ-00045z-Nn for qemu-devel@nongnu.org; Fri, 06 Sep 2019 15:11:59 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=K2RlBC6ADLWhXdRRJbIJxLXz06GRuvKBjnkEKLJnwWRZXFZX+VgqFDsT/sqqtAEpJnmNW5SWjtMOCcjb7eIAURCrdnFqvyhyVAxKzfx8pQxxllBWb0zcrWOKKTMAyKWMbohU+ueUq9j5DTJu1Ab0wju9/4rqhZc8EP0KnxhNwsmsTa0geY6ud8x6WA6sYaWyPYsbnupB4FLteCci7msA2cXGbHGD0VupzKMfdXFUA01mmn/RiAQUJnpo6E/fc+YjzBI0Eds+1zgPD/7AAFS3zrMCfZqiJKVnwAfhxn7sGDsnw6CS29julvugElefkMZbKw/JZ4K3NGxz1TycQb1c3g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bXEw0n7MqNsbnRnV5gUXfMigHLDj0h38zB8kU3Z97WQ=; b=aUKUDnLAcjc0yx6dPjWJiDxROZ/bCPzFh0Wg31vkgmY5OAXTue1oZNBsQ0qjWaVVsCN74nma1pZojphFoQScHr205vj4ZpV5RDA5xe/xyGjRYKGG14RidRbylhXZyK/pALDKWikWeNjqWaYRDehWhi4wzI0XTHmHSBHhc54OcLAWrvrrpmoVlqny17csgYTzfkGLIWZQoAjEF/kfZ4DlqmOCVY5u5pjE8eUPxdaAhSuKg2FeO9Cwpbr0yZZ1xMS7HlGmhgsTdz9VxOrhAwDpN/0J8z/PH+yd4HHnvB1uTsbNHd20FzX9hy9LYfNZPMKEScvdKK9ojo3K+2WVUXGr3g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amdcloud.onmicrosoft.com; s=selector2-amdcloud-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=bXEw0n7MqNsbnRnV5gUXfMigHLDj0h38zB8kU3Z97WQ=; b=lFyCayaTVxWVvg7cvTCPMCU40rG5o88+7CkbmZnie97QFQYkjK+ddkebL7ECZIHtAsDRGk0Wr2u0VPmjCX9Zf8RkLbBszS8O+jfp7NC51t5jZF03oi2SXrkdEiyrs7xeyQqo5945TgIhNuLwZg3DZ64hZxvkcS0f/JRgy1a50cw= Received: from DM5PR12MB2471.namprd12.prod.outlook.com (52.132.141.138) by DM5PR12MB1179.namprd12.prod.outlook.com (10.168.234.137) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2241.14; Fri, 6 Sep 2019 19:11:57 +0000 Received: from DM5PR12MB2471.namprd12.prod.outlook.com ([fe80::6c7c:4b6d:f136:1bf8]) by DM5PR12MB2471.namprd12.prod.outlook.com ([fe80::6c7c:4b6d:f136:1bf8%3]) with mapi id 15.20.2220.022; Fri, 6 Sep 2019 19:11:57 +0000 From: "Moger, Babu" To: ssg.sos.staff , "ehabkost@redhat.com" , "marcel.apfelbaum@gmail.com" , "mst@redhat.com" , "pbonzini@redhat.com" , "rth@twiddle.net" , "eblake@redhat.com" , "armbru@redhat.com" , "imammedo@redhat.com" Thread-Topic: [RFC 2 PATCH 03/16] hw/i386: Introduce X86CPUTopoInfo to contain topology info Thread-Index: AQHVZObziLA3l0FNIkGr1sRRrqiJ3Q== Date: Fri, 6 Sep 2019 19:11:57 +0000 Message-ID: <156779711572.21957.10722611828264773686.stgit@localhost.localdomain> References: <156779689013.21957.1631551572950676212.stgit@localhost.localdomain> In-Reply-To: <156779689013.21957.1631551572950676212.stgit@localhost.localdomain> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: SN4PR0401CA0010.namprd04.prod.outlook.com (2603:10b6:803:21::20) To DM5PR12MB2471.namprd12.prod.outlook.com (2603:10b6:4:b5::10) authentication-results: spf=none (sender IP is ) smtp.mailfrom=Babu.Moger@amd.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [165.204.78.1] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: b6da3d73-6267-48e9-742b-08d732fe1622 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600166)(711020)(4605104)(1401327)(4618075)(2017052603328)(7193020); SRVR:DM5PR12MB1179; x-ms-traffictypediagnostic: DM5PR12MB1179: x-ld-processed: 3dd8961f-e488-4e60-8e11-a82d994e183d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:2733; x-forefront-prvs: 0152EBA40F x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(376002)(346002)(366004)(396003)(39860400002)(136003)(189003)(199004)(6116002)(103116003)(76176011)(305945005)(86362001)(256004)(2201001)(71190400001)(71200400001)(81156014)(81166006)(2906002)(476003)(3846002)(446003)(8676002)(11346002)(486006)(102836004)(7736002)(6506007)(386003)(6486002)(26005)(8936002)(5660300002)(186003)(4326008)(66066001)(6436002)(14454004)(25786009)(52116002)(9686003)(6512007)(53936002)(99286004)(2501003)(110136005)(478600001)(316002)(66476007)(64756008)(66446008)(66556008)(66946007); DIR:OUT; SFP:1101; SCL:1; SRVR:DM5PR12MB1179; H:DM5PR12MB2471.namprd12.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: amd.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: 5UdIfzb3w4RAnHMdLVY2xqhur+FxCziGESGE75PjqNmifNaOY/gpd+e9KG6WcJRVTrNWrgQ6c5DkmYcZN35SrDPb0r0XZ2919W11zRTOSDhPUWi/UYgXNvD3bWzyRrtna+k9b9m3zex7uyile9eexc4urWqykaCOebErJyqVdG5+GG+1/TQfUfZW8FiLW/T4quXisQJkEQYbZ+4Hmy7HHV1VdJtPALHmF2Q4gbN6zLguM5vrMLaKoJs0nGon/fhJnBGNN1Ds2qaJVP//An1mbhnmzjPh14juZsUny/VW5NsAm6WcxfTjscEynT7Cw0n0pF3WDXaPVvywfGQaqtgHeQZyzhkOGQG+jLV3MK2lWweUjRx9nGLYVKnw5NK+hfQLCF964jL0DRbwkMEGeRLgn+mprEGMEOo7qdwXS5FC9HA= Content-Type: text/plain; charset="utf-8" Content-ID: Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-Network-Message-Id: b6da3d73-6267-48e9-742b-08d732fe1622 X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Sep 2019 19:11:57.4760 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: iazF9OP1NqVq2TvrDjWeOUIIcdP80YmQQEZWHIQAYPSRaWsWeMMSYadU8Sewttv5 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR12MB1179 X-detected-operating-system: by eggs.gnu.org: Windows 7 or 8 [fuzzy] X-Received-From: 40.107.82.45 Subject: [Qemu-devel] [RFC 2 PATCH 03/16] hw/i386: Introduce X86CPUTopoInfo to contain topology info 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: "qemu-devel@nongnu.org" Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: "Qemu-devel" VGhpcyBpcyBhbiBlZmZvcnQgdG8gcmUtYXJyYW5nZSBmZXcgZGF0YSBzdHJ1Y3R1cmUgZm9yIGJl dHRlcg0KcmVhZGFiaWxpdHkuIEFkZCBYODZDUFVUb3BvSW5mbyB3aGljaCB3aWxsIGhhdmUgYWxs IHRoZSB0b3BvbG9neQ0KaW5mb3JtYXRpb25zIHJlcXVpcmVkIHRvIGJ1aWxkIHRoZSBjcHUgdG9w b2xvZ3kuIFRoZXJlIGlzIG5vDQpmdW5jdGlvbmFsIGNoYW5nZXMuDQoNClNpZ25lZC1vZmYtYnk6 IEJhYnUgTW9nZXIgPGJhYnUubW9nZXJAYW1kLmNvbT4NCi0tLQ0KIGh3L2kzODYvcGMuYyAgICAg ICAgICAgICAgIHwgICA0MCArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0t DQogaW5jbHVkZS9ody9pMzg2L3RvcG9sb2d5LmggfCAgIDQwICsrKysrKysrKysrKysrKysrKysr KysrKysrLS0tLS0tLS0tLS0tLS0NCiAyIGZpbGVzIGNoYW5nZWQsIDUzIGluc2VydGlvbnMoKyks IDI3IGRlbGV0aW9ucygtKQ0KDQpkaWZmIC0tZ2l0IGEvaHcvaTM4Ni9wYy5jIGIvaHcvaTM4Ni9w Yy5jDQppbmRleCBhZGE0NDVmOGYzLi45NWFhYjhlNWU3IDEwMDY0NA0KLS0tIGEvaHcvaTM4Ni9w Yy5jDQorKysgYi9ody9pMzg2L3BjLmMNCkBAIC05MzAsMTEgKzkzMCwxNSBAQCBzdGF0aWMgdWlu dDMyX3QgeDg2X2NwdV9hcGljX2lkX2Zyb21faW5kZXgoUENNYWNoaW5lU3RhdGUgKnBjbXMsDQog ew0KICAgICBNYWNoaW5lU3RhdGUgKm1zID0gTUFDSElORShwY21zKTsNCiAgICAgUENNYWNoaW5l Q2xhc3MgKnBjbWMgPSBQQ19NQUNISU5FX0dFVF9DTEFTUyhwY21zKTsNCisgICAgWDg2Q1BVVG9w b0luZm8gdG9wb19pbmZvOw0KICAgICB1aW50MzJfdCBjb3JyZWN0X2lkOw0KICAgICBzdGF0aWMg Ym9vbCB3YXJuZWQ7DQogDQotICAgIGNvcnJlY3RfaWQgPSB4ODZfYXBpY2lkX2Zyb21fY3B1X2lk eChwY21zLT5zbXBfZGllcywgbXMtPnNtcC5jb3JlcywNCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIG1zLT5zbXAudGhyZWFkcywgY3B1X2luZGV4KTsNCisgICAgdG9w b19pbmZvLm5yX2RpZXMgPSBwY21zLT5zbXBfZGllczsNCisgICAgdG9wb19pbmZvLm5yX2NvcmVz ID0gbXMtPnNtcC5jb3JlczsNCisgICAgdG9wb19pbmZvLm5yX3RocmVhZHMgPSBtcy0+c21wLnRo cmVhZHM7DQorDQorICAgIGNvcnJlY3RfaWQgPSB4ODZfYXBpY2lkX2Zyb21fY3B1X2lkeCgmdG9w b19pbmZvLCBjcHVfaW5kZXgpOw0KICAgICBpZiAocGNtYy0+Y29tcGF0X2FwaWNfaWRfbW9kZSkg ew0KICAgICAgICAgaWYgKGNwdV9pbmRleCAhPSBjb3JyZWN0X2lkICYmICF3YXJuZWQgJiYgIXF0 ZXN0X2VuYWJsZWQoKSkgew0KICAgICAgICAgICAgIGVycm9yX3JlcG9ydCgiQVBJQyBJRHMgc2V0 IGluIGNvbXBhdGliaWxpdHkgbW9kZSwgIg0KQEAgLTIzODYsNiArMjM5MCw3IEBAIHN0YXRpYyB2 b2lkIHBjX2NwdV9wcmVfcGx1ZyhIb3RwbHVnSGFuZGxlciAqaG90cGx1Z19kZXYsDQogICAgIFBD TWFjaGluZVN0YXRlICpwY21zID0gUENfTUFDSElORShob3RwbHVnX2Rldik7DQogICAgIHVuc2ln bmVkIGludCBzbXBfY29yZXMgPSBtcy0+c21wLmNvcmVzOw0KICAgICB1bnNpZ25lZCBpbnQgc21w X3RocmVhZHMgPSBtcy0+c21wLnRocmVhZHM7DQorICAgIFg4NkNQVVRvcG9JbmZvIHRvcG9faW5m bzsNCiANCiAgICAgaWYoIW9iamVjdF9keW5hbWljX2Nhc3QoT0JKRUNUKGNwdSksIG1zLT5jcHVf dHlwZSkpIHsNCiAgICAgICAgIGVycm9yX3NldGcoZXJycCwgIkludmFsaWQgQ1BVIHR5cGUsIGV4 cGVjdGVkIGNwdSB0eXBlOiAnJXMnIiwNCkBAIC0yMzkzLDYgKzIzOTgsMTAgQEAgc3RhdGljIHZv aWQgcGNfY3B1X3ByZV9wbHVnKEhvdHBsdWdIYW5kbGVyICpob3RwbHVnX2RldiwNCiAgICAgICAg IHJldHVybjsNCiAgICAgfQ0KIA0KKyAgICB0b3BvX2luZm8ubnJfZGllcyA9IHBjbXMtPnNtcF9k aWVzOw0KKyAgICB0b3BvX2luZm8ubnJfY29yZXMgPSBzbXBfY29yZXM7DQorICAgIHRvcG9faW5m by5ucl90aHJlYWRzID0gc21wX3RocmVhZHM7DQorDQogICAgIGVudi0+bnJfZGllcyA9IHBjbXMt PnNtcF9kaWVzOw0KIA0KICAgICAvKg0KQEAgLTI0MzYsMTYgKzI0NDUsMTQgQEAgc3RhdGljIHZv aWQgcGNfY3B1X3ByZV9wbHVnKEhvdHBsdWdIYW5kbGVyICpob3RwbHVnX2RldiwNCiAgICAgICAg IHRvcG9faWRzLmRpZV9pZCA9IGNwdS0+ZGllX2lkOw0KICAgICAgICAgdG9wb19pZHMuY29yZV9p ZCA9IGNwdS0+Y29yZV9pZDsNCiAgICAgICAgIHRvcG9faWRzLnNtdF9pZCA9IGNwdS0+dGhyZWFk X2lkOw0KLSAgICAgICAgY3B1LT5hcGljX2lkID0gYXBpY2lkX2Zyb21fdG9wb19pZHMocGNtcy0+ c21wX2RpZXMsIHNtcF9jb3JlcywNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHNtcF90aHJlYWRzLCAmdG9wb19pZHMpOw0KKyAgICAgICAgY3B1LT5hcGljX2lk ID0gYXBpY2lkX2Zyb21fdG9wb19pZHMoJnRvcG9faW5mbywgJnRvcG9faWRzKTsNCiAgICAgfQ0K IA0KICAgICBjcHVfc2xvdCA9IHBjX2ZpbmRfY3B1X3Nsb3QoTUFDSElORShwY21zKSwgY3B1LT5h cGljX2lkLCAmaWR4KTsNCiAgICAgaWYgKCFjcHVfc2xvdCkgew0KICAgICAgICAgTWFjaGluZVN0 YXRlICptcyA9IE1BQ0hJTkUocGNtcyk7DQogDQotICAgICAgICB4ODZfdG9wb19pZHNfZnJvbV9h cGljaWQoY3B1LT5hcGljX2lkLCBwY21zLT5zbXBfZGllcywNCi0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBzbXBfY29yZXMsIHNtcF90aHJlYWRzLCAmdG9wb19pZHMpOw0KKyAgICAg ICAgeDg2X3RvcG9faWRzX2Zyb21fYXBpY2lkKGNwdS0+YXBpY19pZCwgJnRvcG9faW5mbywgJnRv cG9faWRzKTsNCiAgICAgICAgIGVycm9yX3NldGcoZXJycCwNCiAgICAgICAgICAgICAiSW52YWxp ZCBDUFUgW3NvY2tldDogJXUsIGRpZTogJXUsIGNvcmU6ICV1LCB0aHJlYWQ6ICV1XSB3aXRoIg0K ICAgICAgICAgICAgICIgQVBJQyBJRCAlIiBQUkl1MzIgIiwgdmFsaWQgaW5kZXggcmFuZ2UgMDol ZCIsDQpAQCAtMjQ2Niw4ICsyNDczLDcgQEAgc3RhdGljIHZvaWQgcGNfY3B1X3ByZV9wbHVnKEhv dHBsdWdIYW5kbGVyICpob3RwbHVnX2RldiwNCiAgICAgLyogVE9ETzogbW92ZSBzb2NrZXRfaWQv Y29yZV9pZC90aHJlYWRfaWQgY2hlY2tzIGludG8geDg2X2NwdV9yZWFsaXplZm4oKQ0KICAgICAg KiBvbmNlIC1zbXAgcmVmYWN0b3JpbmcgaXMgY29tcGxldGUgYW5kIHRoZXJlIHdpbGwgYmUgQ1BV IHByaXZhdGUNCiAgICAgICogQ1BVU3RhdGU6Om5yX2NvcmVzIGFuZCBDUFVTdGF0ZTo6bnJfdGhy ZWFkcyBmaWVsZHMgaW5zdGVhZCBvZiBnbG9iYWxzICovDQotICAgIHg4Nl90b3BvX2lkc19mcm9t X2FwaWNpZChjcHUtPmFwaWNfaWQsIHBjbXMtPnNtcF9kaWVzLA0KLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc21wX2NvcmVzLCBzbXBfdGhyZWFkcywgJnRvcG9faWRzKTsNCisgICAgeDg2 X3RvcG9faWRzX2Zyb21fYXBpY2lkKGNwdS0+YXBpY19pZCwgJnRvcG9faW5mbywgJnRvcG9faWRz KTsNCiAgICAgaWYgKGNwdS0+c29ja2V0X2lkICE9IC0xICYmIGNwdS0+c29ja2V0X2lkICE9IHRv cG9faWRzLnBrZ19pZCkgew0KICAgICAgICAgZXJyb3Jfc2V0ZyhlcnJwLCAicHJvcGVydHkgc29j a2V0LWlkOiAldSBkb2Vzbid0IG1hdGNoIHNldCBhcGljLWlkOiINCiAgICAgICAgICAgICAiIDB4 JXggKHNvY2tldC1pZDogJXUpIiwgY3B1LT5zb2NrZXRfaWQsIGNwdS0+YXBpY19pZCwgdG9wb19p ZHMucGtnX2lkKTsNCkBAIC0yODQyLDE5ICsyODQ4LDI4IEBAIHN0YXRpYyBpbnQ2NF90IHBjX2dl dF9kZWZhdWx0X2NwdV9ub2RlX2lkKGNvbnN0IE1hY2hpbmVTdGF0ZSAqbXMsIGludCBpZHgpDQog ew0KICAgIFg4NkNQVVRvcG9JRHMgdG9wb19pZHM7DQogICAgUENNYWNoaW5lU3RhdGUgKnBjbXMg PSBQQ19NQUNISU5FKG1zKTsNCisgICBYODZDUFVUb3BvSW5mbyB0b3BvX2luZm87DQorDQorICAg dG9wb19pbmZvLm5yX2RpZXMgPSBwY21zLT5zbXBfZGllczsNCisgICB0b3BvX2luZm8ubnJfY29y ZXMgPSBtcy0+c21wLmNvcmVzOw0KKyAgIHRvcG9faW5mby5ucl90aHJlYWRzID0gbXMtPnNtcC50 aHJlYWRzOw0KIA0KICAgIGFzc2VydChpZHggPCBtcy0+cG9zc2libGVfY3B1cy0+bGVuKTsNCiAg ICB4ODZfdG9wb19pZHNfZnJvbV9hcGljaWQobXMtPnBvc3NpYmxlX2NwdXMtPmNwdXNbaWR4XS5h cmNoX2lkLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBwY21zLT5zbXBfZGllcywgbXMt PnNtcC5jb3JlcywNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgbXMtPnNtcC50aHJlYWRz LCAmdG9wb19pZHMpOw0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAmdG9wb19pbmZvLCAm dG9wb19pZHMpOw0KICAgIHJldHVybiB0b3BvX2lkcy5wa2dfaWQgJSBuYl9udW1hX25vZGVzOw0K IH0NCiANCiBzdGF0aWMgY29uc3QgQ1BVQXJjaElkTGlzdCAqcGNfcG9zc2libGVfY3B1X2FyY2hf aWRzKE1hY2hpbmVTdGF0ZSAqbXMpDQogew0KICAgICBQQ01hY2hpbmVTdGF0ZSAqcGNtcyA9IFBD X01BQ0hJTkUobXMpOw0KLSAgICBpbnQgaTsNCiAgICAgdW5zaWduZWQgaW50IG1heF9jcHVzID0g bXMtPnNtcC5tYXhfY3B1czsNCisgICAgWDg2Q1BVVG9wb0luZm8gdG9wb19pbmZvOw0KKyAgICBp bnQgaTsNCisNCisgICAgdG9wb19pbmZvLm5yX2RpZXMgPSBwY21zLT5zbXBfZGllczsNCisgICAg dG9wb19pbmZvLm5yX2NvcmVzID0gbXMtPnNtcC5jb3JlczsNCisgICAgdG9wb19pbmZvLm5yX3Ro cmVhZHMgPSBtcy0+c21wLnRocmVhZHM7DQogDQogICAgIGlmIChtcy0+cG9zc2libGVfY3B1cykg ew0KICAgICAgICAgLyoNCkBAIC0yODc1LDggKzI4OTAsNyBAQCBzdGF0aWMgY29uc3QgQ1BVQXJj aElkTGlzdCAqcGNfcG9zc2libGVfY3B1X2FyY2hfaWRzKE1hY2hpbmVTdGF0ZSAqbXMpDQogICAg ICAgICBtcy0+cG9zc2libGVfY3B1cy0+Y3B1c1tpXS52Y3B1c19jb3VudCA9IDE7DQogICAgICAg ICBtcy0+cG9zc2libGVfY3B1cy0+Y3B1c1tpXS5hcmNoX2lkID0geDg2X2NwdV9hcGljX2lkX2Zy b21faW5kZXgocGNtcywgaSk7DQogICAgICAgICB4ODZfdG9wb19pZHNfZnJvbV9hcGljaWQobXMt PnBvc3NpYmxlX2NwdXMtPmNwdXNbaV0uYXJjaF9pZCwNCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBwY21zLT5zbXBfZGllcywgbXMtPnNtcC5jb3JlcywNCi0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBtcy0+c21wLnRocmVhZHMsICZ0b3BvX2lkcyk7DQorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgJnRvcG9faW5mbywgJnRvcG9faWRzKTsNCiAgICAg ICAgIG1zLT5wb3NzaWJsZV9jcHVzLT5jcHVzW2ldLnByb3BzLmhhc19zb2NrZXRfaWQgPSB0cnVl Ow0KICAgICAgICAgbXMtPnBvc3NpYmxlX2NwdXMtPmNwdXNbaV0ucHJvcHMuc29ja2V0X2lkID0g dG9wb19pZHMucGtnX2lkOw0KICAgICAgICAgbXMtPnBvc3NpYmxlX2NwdXMtPmNwdXNbaV0ucHJv cHMuaGFzX2RpZV9pZCA9IHRydWU7DQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9ody9pMzg2L3RvcG9s b2d5LmggYi9pbmNsdWRlL2h3L2kzODYvdG9wb2xvZ3kuaA0KaW5kZXggMDYzNzc0M2NkZi4uOTA2 MDE3ZThlMyAxMDA2NDQNCi0tLSBhL2luY2x1ZGUvaHcvaTM4Ni90b3BvbG9neS5oDQorKysgYi9p bmNsdWRlL2h3L2kzODYvdG9wb2xvZ3kuaA0KQEAgLTU0LDYgKzU0LDE0IEBAIHR5cGVkZWYgc3Ry dWN0IFg4NkNQVVRvcG9JRHMgew0KICAgICB1bnNpZ25lZCBjY3hfaWQ7DQogfSBYODZDUFVUb3Bv SURzOw0KIA0KK3R5cGVkZWYgc3RydWN0IFg4NkNQVVRvcG9JbmZvIHsNCisgICAgdW5zaWduZWQg bnVtYV9ub2RlczsNCisgICAgdW5zaWduZWQgbnJfc29ja2V0czsNCisgICAgdW5zaWduZWQgbnJf ZGllczsNCisgICAgdW5zaWduZWQgbnJfY29yZXM7DQorICAgIHVuc2lnbmVkIG5yX3RocmVhZHM7 DQorfSBYODZDUFVUb3BvSW5mbzsNCisNCiAvKiBSZXR1cm4gdGhlIGJpdCB3aWR0aCBuZWVkZWQg Zm9yICdjb3VudCcgSURzDQogICovDQogc3RhdGljIHVuc2lnbmVkIGFwaWNpZF9iaXR3aWR0aF9m b3JfY291bnQodW5zaWduZWQgY291bnQpDQpAQCAtMTIxLDExICsxMjksMTMgQEAgc3RhdGljIGlu bGluZSB1bnNpZ25lZCBhcGljaWRfcGtnX29mZnNldCh1bnNpZ25lZCBucl9kaWVzLA0KICAqDQog ICogVGhlIGNhbGxlciBtdXN0IG1ha2Ugc3VyZSBjb3JlX2lkIDwgbnJfY29yZXMgYW5kIHNtdF9p ZCA8IG5yX3RocmVhZHMuDQogICovDQotc3RhdGljIGlubGluZSBhcGljX2lkX3QgYXBpY2lkX2Zy b21fdG9wb19pZHModW5zaWduZWQgbnJfZGllcywNCi0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBucl9jb3JlcywNCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBucl90aHJlYWRzLA0KK3N0YXRp YyBpbmxpbmUgYXBpY19pZF90IGFwaWNpZF9mcm9tX3RvcG9faWRzKFg4NkNQVVRvcG9JbmZvICp0 b3BvX2luZm8sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3QgWDg2Q1BVVG9wb0lEcyAqdG9wb19pZHMpDQogew0KKyAgICB1bnNpZ25lZCBucl9kaWVz ID0gdG9wb19pbmZvLT5ucl9kaWVzOw0KKyAgICB1bnNpZ25lZCBucl9jb3JlcyA9IHRvcG9faW5m by0+bnJfY29yZXM7DQorICAgIHVuc2lnbmVkIG5yX3RocmVhZHMgPSB0b3BvX2luZm8tPm5yX3Ro cmVhZHM7DQorDQogICAgIHJldHVybiAodG9wb19pZHMtPnBrZ19pZCAgPDwgYXBpY2lkX3BrZ19v ZmZzZXQobnJfZGllcywgbnJfY29yZXMsIG5yX3RocmVhZHMpKSB8DQogICAgICAgICAgICAodG9w b19pZHMtPmRpZV9pZCAgPDwgYXBpY2lkX2RpZV9vZmZzZXQobnJfZGllcywgbnJfY29yZXMsIG5y X3RocmVhZHMpKSB8DQogICAgICAgICAgICAodG9wb19pZHMtPmNvcmVfaWQgPDwgYXBpY2lkX2Nv cmVfb2Zmc2V0KG5yX2RpZXMsIG5yX2NvcmVzLCBucl90aHJlYWRzKSkgfA0KQEAgLTEzNSwxMiAr MTQ1LDE0IEBAIHN0YXRpYyBpbmxpbmUgYXBpY19pZF90IGFwaWNpZF9mcm9tX3RvcG9faWRzKHVu c2lnbmVkIG5yX2RpZXMsDQogLyogQ2FsY3VsYXRlIHRocmVhZC9jb3JlL3BhY2thZ2UgSURzIGZv ciBhIHNwZWNpZmljIHRvcG9sb2d5LA0KICAqIGJhc2VkIG9uIChjb250aWd1b3VzKSBDUFUgaW5k ZXgNCiAgKi8NCi1zdGF0aWMgaW5saW5lIHZvaWQgeDg2X3RvcG9faWRzX2Zyb21faWR4KHVuc2ln bmVkIG5yX2RpZXMsDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1 bnNpZ25lZCBucl9jb3JlcywNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHVuc2lnbmVkIG5yX3RocmVhZHMsDQorc3RhdGljIGlubGluZSB2b2lkIHg4Nl90b3BvX2lk c19mcm9tX2lkeChYODZDUFVUb3BvSW5mbyAqdG9wb19pbmZvLA0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY3B1X2luZGV4LA0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWDg2Q1BVVG9wb0lEcyAqdG9wb19pZHMpDQog ew0KKyAgICB1bnNpZ25lZCBucl9kaWVzID0gdG9wb19pbmZvLT5ucl9kaWVzOw0KKyAgICB1bnNp Z25lZCBucl9jb3JlcyA9IHRvcG9faW5mby0+bnJfY29yZXM7DQorICAgIHVuc2lnbmVkIG5yX3Ro cmVhZHMgPSB0b3BvX2luZm8tPm5yX3RocmVhZHM7DQorDQogICAgIHRvcG9faWRzLT5wa2dfaWQg PSBjcHVfaW5kZXggLyAobnJfZGllcyAqIG5yX2NvcmVzICogbnJfdGhyZWFkcyk7DQogICAgIHRv cG9faWRzLT5kaWVfaWQgPSBjcHVfaW5kZXggLyAobnJfY29yZXMgKiBucl90aHJlYWRzKSAlIG5y X2RpZXM7DQogICAgIHRvcG9faWRzLT5jb3JlX2lkID0gY3B1X2luZGV4IC8gbnJfdGhyZWFkcyAl IG5yX2NvcmVzOw0KQEAgLTE1MSwxMSArMTYzLDEzIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCB4ODZf dG9wb19pZHNfZnJvbV9pZHgodW5zaWduZWQgbnJfZGllcywNCiAgKiBiYXNlZCBvbiBBUElDIElE DQogICovDQogc3RhdGljIGlubGluZSB2b2lkIHg4Nl90b3BvX2lkc19mcm9tX2FwaWNpZChhcGlj X2lkX3QgYXBpY2lkLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgdW5zaWduZWQgbnJfZGllcywNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHVuc2lnbmVkIG5yX2NvcmVzLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbnJfdGhyZWFkcywNCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFg4NkNQVVRvcG9JbmZvICp0b3BvX2luZm8sDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBYODZDUFVUb3BvSURz ICp0b3BvX2lkcykNCiB7DQorICAgIHVuc2lnbmVkIG5yX2RpZXMgPSB0b3BvX2luZm8tPm5yX2Rp ZXM7DQorICAgIHVuc2lnbmVkIG5yX2NvcmVzID0gdG9wb19pbmZvLT5ucl9jb3JlczsNCisgICAg dW5zaWduZWQgbnJfdGhyZWFkcyA9IHRvcG9faW5mby0+bnJfdGhyZWFkczsNCisNCiAgICAgdG9w b19pZHMtPnNtdF9pZCA9IGFwaWNpZCAmDQogICAgICAgICAgICAgfigweEZGRkZGRkZGVUwgPDwg YXBpY2lkX3NtdF93aWR0aChucl9kaWVzLCBucl9jb3JlcywgbnJfdGhyZWFkcykpOw0KICAgICB0 b3BvX2lkcy0+Y29yZV9pZCA9DQpAQCAtMTcxLDE0ICsxODUsMTIgQEAgc3RhdGljIGlubGluZSB2 b2lkIHg4Nl90b3BvX2lkc19mcm9tX2FwaWNpZChhcGljX2lkX3QgYXBpY2lkLA0KICAqDQogICog J2NwdV9pbmRleCcgaXMgYSBzZXF1ZW50aWFsLCBjb250aWd1b3VzIElEIGZvciB0aGUgQ1BVLg0K ICAqLw0KLXN0YXRpYyBpbmxpbmUgYXBpY19pZF90IHg4Nl9hcGljaWRfZnJvbV9jcHVfaWR4KHVu c2lnbmVkIG5yX2RpZXMsDQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdW5zaWduZWQgbnJfY29yZXMsDQotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbnJfdGhyZWFkcywNCitzdGF0aWMgaW5saW5l IGFwaWNfaWRfdCB4ODZfYXBpY2lkX2Zyb21fY3B1X2lkeChYODZDUFVUb3BvSW5mbyAqdG9wb19p bmZvLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVu c2lnbmVkIGNwdV9pbmRleCkNCiB7DQogICAgIFg4NkNQVVRvcG9JRHMgdG9wb19pZHM7DQotICAg IHg4Nl90b3BvX2lkc19mcm9tX2lkeChucl9kaWVzLCBucl9jb3JlcywgbnJfdGhyZWFkcywgY3B1 X2luZGV4LCAmdG9wb19pZHMpOw0KLSAgICByZXR1cm4gYXBpY2lkX2Zyb21fdG9wb19pZHMobnJf ZGllcywgbnJfY29yZXMsIG5yX3RocmVhZHMsICZ0b3BvX2lkcyk7DQorICAgIHg4Nl90b3BvX2lk c19mcm9tX2lkeCh0b3BvX2luZm8sIGNwdV9pbmRleCwgJnRvcG9faWRzKTsNCisgICAgcmV0dXJu IGFwaWNpZF9mcm9tX3RvcG9faWRzKHRvcG9faW5mbywgJnRvcG9faWRzKTsNCiB9DQogDQogI2Vu ZGlmIC8qIEhXX0kzODZfVE9QT0xPR1lfSCAqLw0KDQo=