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.8 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,UNWANTED_LANGUAGE_BODY,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 7CDAFC282DD for ; Wed, 8 Jan 2020 14:09:05 +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 4426D20643 for ; Wed, 8 Jan 2020 14:09:05 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=bitdefender.onmicrosoft.com header.i=@bitdefender.onmicrosoft.com header.b="gcWB6tVj" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4426D20643 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=bitdefender.com 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 1ipC0l-000438-NI; Wed, 08 Jan 2020 14:08:39 +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 1ipC0j-000433-Vp for xen-devel@lists.xenproject.org; Wed, 08 Jan 2020 14:08:38 +0000 X-Inumbo-ID: 5c034b12-3220-11ea-b7ff-12813bfff9fa Received: from EUR05-VI1-obe.outbound.protection.outlook.com (unknown [40.107.21.136]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id 5c034b12-3220-11ea-b7ff-12813bfff9fa; Wed, 08 Jan 2020 14:08:36 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IrAKZkkyIq/tp5LJonPYh4zjxHe7jC9fR9ygtqHUJbEf0SorgfQDUhgX4PZ7nwYariTZ9rjU4l4KqHwtEg1PQv5Izo8zP7NYUujjioSKjGlKJ8J1YH8slBwhJRRZ9ewbnntX60iN03RSv52mKyA/0svQGZLxVaySovbBWOfzyyM0GdlurPEGiHDlOjdUJbg2GG3cQuWvQtp+I0m3x+ooj4quwn1m1y/HtaNO0HgCoVS3ZlMnaPohpOadWB4Fx+CpbuCjM0ZqJq6xCTKzLn4q73S0sVeB2oevvarmlnTYgnv77tePLlFHcIgVkmyI805Bu/lmm8987L+72XZEKOfLpg== 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=eePxzpxYo/MhwmgzdiCnxuBgi2bP92P+EChzn6tAxik=; b=BeOtDtVEKY1/2GEEYzpG78dEqeB13rWUdwwCaPnkrtLuZ70MHC+sghcJGinCG03J5NPsrnWNy/Meap6huir97hLm1aruPb+ySSAe5bsyd/OFH4lz38liyKI3Mz5QyJ3E+2ThlFDTagKLbqstRAnRqFbS2TkstGkIyKbEsnRtv9/+BxQiTR1tmR+XwWCGqycBFHKN1+2P7EnZZ4LlfEE2gftz8YVbZAFgIytuIrwLVOOxEaqV1RoQmeuduw/CL/xOFlvW9IQ6HhVK19NRFkI9lFVgyGHvrxZHs2G26NuIgQQrRpSsYjX5XQzRWYRj7R/1FI7qplDLXDSKzEY13J/nHQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=bitdefender.com; dmarc=pass action=none header.from=bitdefender.com; dkim=pass header.d=bitdefender.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bitdefender.onmicrosoft.com; s=selector2-bitdefender-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=eePxzpxYo/MhwmgzdiCnxuBgi2bP92P+EChzn6tAxik=; b=gcWB6tVj3Ti+h4hI+55N+DC74O1njRX+V3qgHhX7fMx7Np5uqC1KODNzw2xrFiTCsxgrs1lgVEd19eS1VL/M1E0cFhAbCV1jccoUCZleJ6IfZFRvJo05uwjOjDkhsSU4dwmGAHB2LRJidvj5BTKkhqPnZvB64RKll5qV7rWmT6o= Received: from DB6PR02MB2999.eurprd02.prod.outlook.com (10.170.219.144) by DB6PR02MB3253.eurprd02.prod.outlook.com (10.170.221.151) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2602.12; Wed, 8 Jan 2020 14:08:34 +0000 Received: from DB6PR02MB2999.eurprd02.prod.outlook.com ([fe80::f1c2:7dd1:1131:1c1d]) by DB6PR02MB2999.eurprd02.prod.outlook.com ([fe80::f1c2:7dd1:1131:1c1d%7]) with mapi id 15.20.2623.008; Wed, 8 Jan 2020 14:08:34 +0000 Received: from aisaila-Latitude-E5570.dsd.bitdefender.biz (91.199.104.6) by AM4PR05CA0023.eurprd05.prod.outlook.com (2603:10a6:205::36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2623.9 via Frontend Transport; Wed, 8 Jan 2020 14:08:33 +0000 From: Alexandru Stefan ISAILA To: "xen-devel@lists.xenproject.org" Thread-Topic: [PATCH V7 1/4] x86/mm: Add array_index_nospec to guest provided index values Thread-Index: AQHVxi0djSZfDHZ8NkyVFOFmjVTSAQ== Date: Wed, 8 Jan 2020 14:08:34 +0000 Message-ID: <20200108140810.6528-1-aisaila@bitdefender.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: AM4PR05CA0023.eurprd05.prod.outlook.com (2603:10a6:205::36) To DB6PR02MB2999.eurprd02.prod.outlook.com (2603:10a6:6:17::16) authentication-results: spf=none (sender IP is ) smtp.mailfrom=aisaila@bitdefender.com; x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.17.1 x-originating-ip: [91.199.104.6] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 03f8ea97-20cc-4620-dd44-08d794443f6c x-ms-traffictypediagnostic: DB6PR02MB3253:|DB6PR02MB3253: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:1002; x-forefront-prvs: 02760F0D1C x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(136003)(396003)(376002)(346002)(366004)(39850400004)(189003)(199004)(66446008)(16526019)(4326008)(66556008)(54906003)(8676002)(81156014)(66476007)(316002)(64756008)(81166006)(2906002)(6506007)(6512007)(6916009)(52116002)(26005)(186003)(66946007)(5660300002)(8936002)(36756003)(1076003)(956004)(2616005)(86362001)(478600001)(6486002)(71200400001); DIR:OUT; SFP:1102; SCL:1; SRVR:DB6PR02MB3253; H:DB6PR02MB2999.eurprd02.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; received-spf: None (protection.outlook.com: bitdefender.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: oua2/h5wsv3DP9VbaM+prT0foeaawrp9jOGBOJp7hJmex+uuCDmdMSHiVwfPLeGimK3UYwg0qVblZs4mJa8NYJvfU5mTbLzqK3V9Zl4sPtfl3x0DUJfxbM6uC/p+IGkOJ8IEf8VgntLNNRWmqOn7OTw3F7bFrqJllx4Lfl/Cfjtj+emabrsEH+5FIpqZBnh83brBe19eDU80Dp2o374x+2XepsFiezrwVPp80j6UprfTl4ukTl8Eh9wNR8rpaygvTD9GqTDkukcktMxmt/EpSWBRhfE1YUNBWpXPRUYFr3/7FptwsbU8Uul9tFQpK6ZJobvVfKxoRg1YN7W9ABwe14AKg2cBT9xTR9jgEvP1olAdk7LyZMRk7lc8du9m7IrEU0OX5Sbg5eCOu/e+1b+EXUdjdPbzeglmAv8vp7LOCq4T81Vk96dvPHs+At9WeRHs Content-ID: <2C8B672076B90E4DA8CFB3165843465D@eurprd02.prod.outlook.com> MIME-Version: 1.0 X-OriginatorOrg: bitdefender.com X-MS-Exchange-CrossTenant-Network-Message-Id: 03f8ea97-20cc-4620-dd44-08d794443f6c X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Jan 2020 14:08:34.0719 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 487baf29-f1da-469a-9221-243f830c36f3 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: lO+nZy7Kf0UyuLttj5uwZ5tJoAdgde++gqmBWnvQGM1AgnZsforjP8Z9DmrbcSgwThpm0QspeWoWti+2MK+PJOVJBJx7UM9/JD3mrHXWFJE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR02MB3253 Subject: [Xen-devel] [PATCH V7 1/4] x86/mm: Add array_index_nospec to guest provided index values 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: Petre Ovidiu PIRCALABU , Kevin Tian , Tamas K Lengyel , Wei Liu , Razvan COJOCARU , George Dunlap , Andrew Cooper , Jan Beulich , Jun Nakajima , Alexandru Stefan ISAILA , =?utf-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" VGhpcyBwYXRjaCBhaW1zIHRvIHNhbml0aXplIGluZGV4ZXMsIHBvdGVudGlhbGx5IGd1ZXN0IHBy b3ZpZGVkDQp2YWx1ZXMsIGZvciBhbHRwMm1fZXB0cFtdIGFuZCBhbHRwMm1fcDJtW10gYXJyYXlz Lg0KDQpSZXF1ZXN0ZWQtYnk6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4NClNpZ25l ZC1vZmYtYnk6IEFsZXhhbmRydSBJc2FpbGEgPGFpc2FpbGFAYml0ZGVmZW5kZXIuY29tPg0KQWNr ZWQtYnk6IFRhbWFzIEsgTGVuZ3llbCA8dGFtYXNAdGtsZW5neWVsLmNvbT4NCi0tLQ0KQ0M6IFJh enZhbiBDb2pvY2FydSA8cmNvam9jYXJ1QGJpdGRlZmVuZGVyLmNvbT4NCkNDOiBUYW1hcyBLIExl bmd5ZWwgPHRhbWFzQHRrbGVuZ3llbC5jb20+DQpDQzogUGV0cmUgUGlyY2FsYWJ1IDxwcGlyY2Fs YWJ1QGJpdGRlZmVuZGVyLmNvbT4NCkNDOiBHZW9yZ2UgRHVubGFwIDxnZW9yZ2UuZHVubGFwQGV1 LmNpdHJpeC5jb20+DQpDQzogSmFuIEJldWxpY2ggPGpiZXVsaWNoQHN1c2UuY29tPg0KQ0M6IEFu ZHJldyBDb29wZXIgPGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20+DQpDQzogV2VpIExpdSA8d2xA eGVuLm9yZz4NCkNDOiAiUm9nZXIgUGF1IE1vbm7DqSIgPHJvZ2VyLnBhdUBjaXRyaXguY29tPg0K Q0M6IEp1biBOYWthamltYSA8anVuLm5ha2FqaW1hQGludGVsLmNvbT4NCkNDOiBLZXZpbiBUaWFu IDxrZXZpbi50aWFuQGludGVsLmNvbT4NCi0tLQ0KQ2hhbmdlcyBzaW5jZSBWNjoNCgktIFJlbW92 ZSBzdHJheSBzcGFjZXMNCgktIFVzZSBBUlJBWV9TSVpFKGQtPmFyY2guYWx0cDJtX3AybSkgaW5z ZWFkIG9mIE1BWF9BTFRQMk0uDQotLS0NCiB4ZW4vYXJjaC94ODYvbW0vbWVtX2FjY2Vzcy5jIHwg MjQgKysrKysrKysrKystLS0tLS0tLQ0KIHhlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0LmMgICAgfCAg NiArKystLQ0KIHhlbi9hcmNoL3g4Ni9tbS9wMm0uYyAgICAgICAgfCA0NSArKysrKysrKysrKysr KysrKysrKysrKy0tLS0tLS0tLS0tLS0NCiAzIGZpbGVzIGNoYW5nZWQsIDQ4IGluc2VydGlvbnMo KyksIDI3IGRlbGV0aW9ucygtKQ0KDQpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L21tL21lbV9h Y2Nlc3MuYyBiL3hlbi9hcmNoL3g4Ni9tbS9tZW1fYWNjZXNzLmMNCmluZGV4IDMyMGI5ZmU2MjEu LmYzMjNkODg1YjEgMTAwNjQ0DQotLS0gYS94ZW4vYXJjaC94ODYvbW0vbWVtX2FjY2Vzcy5jDQor KysgYi94ZW4vYXJjaC94ODYvbW0vbWVtX2FjY2Vzcy5jDQpAQCAtMzY2LDExICszNjYsMTMgQEAg bG9uZyBwMm1fc2V0X21lbV9hY2Nlc3Moc3RydWN0IGRvbWFpbiAqZCwgZ2ZuX3QgZ2ZuLCB1aW50 MzJfdCBuciwNCiAjaWZkZWYgQ09ORklHX0hWTQ0KICAgICBpZiAoIGFsdHAybV9pZHggKQ0KICAg ICB7DQotICAgICAgICBpZiAoIGFsdHAybV9pZHggPj0gTUFYX0FMVFAyTSB8fA0KLSAgICAgICAg ICAgICBkLT5hcmNoLmFsdHAybV9lcHRwW2FsdHAybV9pZHhdID09IG1mbl94KElOVkFMSURfTUZO KSApDQorICAgICAgICBpZiAoIGFsdHAybV9pZHggPj0gbWluKEFSUkFZX1NJWkUoZC0+YXJjaC5h bHRwMm1fcDJtKSwgTUFYX0VQVFApIHx8DQorICAgICAgICAgICAgIGQtPmFyY2guYWx0cDJtX2Vw dHBbYXJyYXlfaW5kZXhfbm9zcGVjKGFsdHAybV9pZHgsIE1BWF9FUFRQKV0gPT0NCisgICAgICAg ICAgICAgbWZuX3goSU5WQUxJRF9NRk4pICkNCiAgICAgICAgICAgICByZXR1cm4gLUVJTlZBTDsN CiANCi0gICAgICAgIGFwMm0gPSBkLT5hcmNoLmFsdHAybV9wMm1bYWx0cDJtX2lkeF07DQorICAg ICAgICBhcDJtID0gZC0+YXJjaC5hbHRwMm1fcDJtW2FycmF5X2luZGV4X25vc3BlYyhhbHRwMm1f aWR4LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBUlJBWV9TSVpFKGQtPmFy Y2guYWx0cDJtX3AybSkpXTsNCiAgICAgfQ0KICNlbHNlDQogICAgIEFTU0VSVCghYWx0cDJtX2lk eCk7DQpAQCAtNDI1LDExICs0MjcsMTMgQEAgbG9uZyBwMm1fc2V0X21lbV9hY2Nlc3NfbXVsdGko c3RydWN0IGRvbWFpbiAqZCwNCiAjaWZkZWYgQ09ORklHX0hWTQ0KICAgICBpZiAoIGFsdHAybV9p ZHggKQ0KICAgICB7DQotICAgICAgICBpZiAoIGFsdHAybV9pZHggPj0gTUFYX0FMVFAyTSB8fA0K LSAgICAgICAgICAgICBkLT5hcmNoLmFsdHAybV9lcHRwW2FsdHAybV9pZHhdID09IG1mbl94KElO VkFMSURfTUZOKSApDQorICAgICAgICBpZiAoIGFsdHAybV9pZHggPj0gbWluKEFSUkFZX1NJWkUo ZC0+YXJjaC5hbHRwMm1fcDJtKSwgTUFYX0VQVFApIHx8DQorICAgICAgICAgICAgIGQtPmFyY2gu YWx0cDJtX2VwdHBbYXJyYXlfaW5kZXhfbm9zcGVjKGFsdHAybV9pZHgsIE1BWF9FUFRQKV0gPT0N CisgICAgICAgICAgICAgbWZuX3goSU5WQUxJRF9NRk4pICkNCiAgICAgICAgICAgICByZXR1cm4g LUVJTlZBTDsNCiANCi0gICAgICAgIGFwMm0gPSBkLT5hcmNoLmFsdHAybV9wMm1bYWx0cDJtX2lk eF07DQorICAgICAgICBhcDJtID0gZC0+YXJjaC5hbHRwMm1fcDJtW2FycmF5X2luZGV4X25vc3Bl YyhhbHRwMm1faWR4LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBUlJBWV9T SVpFKGQtPmFyY2guYWx0cDJtX3AybSkpXTsNCiAgICAgfQ0KICNlbHNlDQogICAgIEFTU0VSVCgh YWx0cDJtX2lkeCk7DQpAQCAtNDkxLDExICs0OTUsMTMgQEAgaW50IHAybV9nZXRfbWVtX2FjY2Vz cyhzdHJ1Y3QgZG9tYWluICpkLCBnZm5fdCBnZm4sIHhlbm1lbV9hY2Nlc3NfdCAqYWNjZXNzLA0K ICAgICB9DQogICAgIGVsc2UgaWYgKCBhbHRwMm1faWR4ICkgLyogYWx0cDJtIHZpZXcgMCBpcyB0 cmVhdGVkIGFzIHRoZSBob3N0cDJtICovDQogICAgIHsNCi0gICAgICAgIGlmICggYWx0cDJtX2lk eCA+PSBNQVhfQUxUUDJNIHx8DQotICAgICAgICAgICAgIGQtPmFyY2guYWx0cDJtX2VwdHBbYWx0 cDJtX2lkeF0gPT0gbWZuX3goSU5WQUxJRF9NRk4pICkNCisgICAgICAgIGlmICggYWx0cDJtX2lk eCA+PSBtaW4oQVJSQVlfU0laRShkLT5hcmNoLmFsdHAybV9wMm0pLCBNQVhfRVBUUCkgfHwNCisg ICAgICAgICAgICAgZC0+YXJjaC5hbHRwMm1fZXB0cFthcnJheV9pbmRleF9ub3NwZWMoYWx0cDJt X2lkeCwgTUFYX0VQVFApXSA9PQ0KKyAgICAgICAgICAgICBtZm5feChJTlZBTElEX01GTikgKQ0K ICAgICAgICAgICAgIHJldHVybiAtRUlOVkFMOw0KIA0KLSAgICAgICAgcDJtID0gZC0+YXJjaC5h bHRwMm1fcDJtW2FsdHAybV9pZHhdOw0KKyAgICAgICAgcDJtID0gZC0+YXJjaC5hbHRwMm1fcDJt W2FycmF5X2luZGV4X25vc3BlYyhhbHRwMm1faWR4LA0KKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEFSUkFZX1NJWkUoZC0+YXJjaC5hbHRwMm1fcDJtKSldOw0KICAgICB9DQogI2Vs c2UNCiAgICAgQVNTRVJUKCFhbHRwMm1faWR4KTsNCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYv bW0vcDJtLWVwdC5jIGIveGVuL2FyY2gveDg2L21tL3AybS1lcHQuYw0KaW5kZXggYjU1MTc3Njlj OS4uMWMyM2VhNjE2OSAxMDA2NDQNCi0tLSBhL3hlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0LmMNCisr KyBiL3hlbi9hcmNoL3g4Ni9tbS9wMm0tZXB0LmMNCkBAIC0xMzUzLDcgKzEzNTMsOSBAQCB2b2lk IHNldHVwX2VwdF9kdW1wKHZvaWQpDQogDQogdm9pZCBwMm1faW5pdF9hbHRwMm1fZXB0KHN0cnVj dCBkb21haW4gKmQsIHVuc2lnbmVkIGludCBpKQ0KIHsNCi0gICAgc3RydWN0IHAybV9kb21haW4g KnAybSA9IGQtPmFyY2guYWx0cDJtX3AybVtpXTsNCisgICAgc3RydWN0IHAybV9kb21haW4gKnAy bSA9IGQtPmFyY2guDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRwMm1fcDJtW2Fy cmF5X2luZGV4X25vc3BlYyhpLA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBBUlJBWV9TSVpFKGQtPmFyY2guYWx0cDJtX3AybSkpXTsNCiAgICAgc3RydWN0IHAybV9k b21haW4gKmhvc3RwMm0gPSBwMm1fZ2V0X2hvc3RwMm0oZCk7DQogICAgIHN0cnVjdCBlcHRfZGF0 YSAqZXB0Ow0KIA0KQEAgLTEzNjYsNyArMTM2OCw3IEBAIHZvaWQgcDJtX2luaXRfYWx0cDJtX2Vw dChzdHJ1Y3QgZG9tYWluICpkLCB1bnNpZ25lZCBpbnQgaSkNCiAgICAgcDJtLT5tYXhfbWFwcGVk X3BmbiA9IHAybS0+bWF4X3JlbWFwcGVkX2dmbiA9IDA7DQogICAgIGVwdCA9ICZwMm0tPmVwdDsN CiAgICAgZXB0LT5tZm4gPSBwYWdldGFibGVfZ2V0X3BmbihwMm1fZ2V0X3BhZ2V0YWJsZShwMm0p KTsNCi0gICAgZC0+YXJjaC5hbHRwMm1fZXB0cFtpXSA9IGVwdC0+ZXB0cDsNCisgICAgZC0+YXJj aC5hbHRwMm1fZXB0cFthcnJheV9pbmRleF9ub3NwZWMoaSwgTUFYX0VQVFApXSA9IGVwdC0+ZXB0 cDsNCiB9DQogDQogdW5zaWduZWQgaW50IHAybV9maW5kX2FsdHAybV9ieV9lcHRwKHN0cnVjdCBk b21haW4gKmQsIHVpbnQ2NF90IGVwdHApDQpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L21tL3Ay bS5jIGIveGVuL2FyY2gveDg2L21tL3AybS5jDQppbmRleCAzMTE5MjY5MDczLi41ZjA0Njk2MGE5 IDEwMDY0NA0KLS0tIGEveGVuL2FyY2gveDg2L21tL3AybS5jDQorKysgYi94ZW4vYXJjaC94ODYv bW0vcDJtLmMNCkBAIC0yNTAyLDcgKzI1MDIsOCBAQCBzdGF0aWMgdm9pZCBwMm1fcmVzZXRfYWx0 cDJtKHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGludCBpZHgsDQogICAgIHN0cnVjdCBwMm1f ZG9tYWluICpwMm07DQogDQogICAgIEFTU0VSVChpZHggPCBNQVhfQUxUUDJNKTsNCi0gICAgcDJt ID0gZC0+YXJjaC5hbHRwMm1fcDJtW2lkeF07DQorICAgIHAybSA9IGQtPmFyY2guYWx0cDJtX3Ay bVthcnJheV9pbmRleF9ub3NwZWMoaWR4LA0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg QVJSQVlfU0laRShkLT5hcmNoLmFsdHAybV9wMm0pKV07DQogDQogICAgIHAybV9sb2NrKHAybSk7 DQogDQpAQCAtMjU0Myw3ICsyNTQ0LDggQEAgc3RhdGljIGludCBwMm1fYWN0aXZhdGVfYWx0cDJt KHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGludCBpZHgpDQogDQogICAgIEFTU0VSVChpZHgg PCBNQVhfQUxUUDJNKTsNCiANCi0gICAgcDJtID0gZC0+YXJjaC5hbHRwMm1fcDJtW2lkeF07DQor ICAgIHAybSA9IGQtPmFyY2guYWx0cDJtX3AybVthcnJheV9pbmRleF9ub3NwZWMoaWR4LA0KKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgQVJSQVlfU0laRShkLT5hcmNoLmFsdHAybV9wMm0p KV07DQogICAgIGhvc3RwMm0gPSBwMm1fZ2V0X2hvc3RwMm0oZCk7DQogDQogICAgIHAybV9sb2Nr KHAybSk7DQpAQCAtMjU3NCwxMiArMjU3NiwxMyBAQCBpbnQgcDJtX2luaXRfYWx0cDJtX2J5X2lk KHN0cnVjdCBkb21haW4gKmQsIHVuc2lnbmVkIGludCBpZHgpDQogew0KICAgICBpbnQgcmMgPSAt RUlOVkFMOw0KIA0KLSAgICBpZiAoIGlkeCA+PSBNQVhfQUxUUDJNICkNCisgICAgaWYgKCBpZHgg Pj0gbWluKEFSUkFZX1NJWkUoZC0+YXJjaC5hbHRwMm1fcDJtKSwgTUFYX0VQVFApICkNCiAgICAg ICAgIHJldHVybiByYzsNCiANCiAgICAgYWx0cDJtX2xpc3RfbG9jayhkKTsNCiANCi0gICAgaWYg KCBkLT5hcmNoLmFsdHAybV9lcHRwW2lkeF0gPT0gbWZuX3goSU5WQUxJRF9NRk4pICkNCisgICAg aWYgKCBkLT5hcmNoLmFsdHAybV9lcHRwW2FycmF5X2luZGV4X25vc3BlYyhpZHgsIE1BWF9FUFRQ KV0gPT0NCisgICAgICAgICBtZm5feChJTlZBTElEX01GTikgKQ0KICAgICAgICAgcmMgPSBwMm1f YWN0aXZhdGVfYWx0cDJtKGQsIGlkeCk7DQogDQogICAgIGFsdHAybV9saXN0X3VubG9jayhkKTsN CkBAIC0yNjE1LDcgKzI2MTgsNyBAQCBpbnQgcDJtX2Rlc3Ryb3lfYWx0cDJtX2J5X2lkKHN0cnVj dCBkb21haW4gKmQsIHVuc2lnbmVkIGludCBpZHgpDQogICAgIHN0cnVjdCBwMm1fZG9tYWluICpw Mm07DQogICAgIGludCByYyA9IC1FQlVTWTsNCiANCi0gICAgaWYgKCAhaWR4IHx8IGlkeCA+PSBN QVhfQUxUUDJNICkNCisgICAgaWYgKCAhaWR4IHx8IGlkeCA+PSBtaW4oQVJSQVlfU0laRShkLT5h cmNoLmFsdHAybV9wMm0pLCBNQVhfRVBUUCkgKQ0KICAgICAgICAgcmV0dXJuIHJjOw0KIA0KICAg ICByYyA9IGRvbWFpbl9wYXVzZV9leGNlcHRfc2VsZihkKTsNCkBAIC0yNjI1LDE0ICsyNjI4LDE3 IEBAIGludCBwMm1fZGVzdHJveV9hbHRwMm1fYnlfaWQoc3RydWN0IGRvbWFpbiAqZCwgdW5zaWdu ZWQgaW50IGlkeCkNCiAgICAgcmMgPSAtRUJVU1k7DQogICAgIGFsdHAybV9saXN0X2xvY2soZCk7 DQogDQotICAgIGlmICggZC0+YXJjaC5hbHRwMm1fZXB0cFtpZHhdICE9IG1mbl94KElOVkFMSURf TUZOKSApDQorICAgIGlmICggZC0+YXJjaC5hbHRwMm1fZXB0cFthcnJheV9pbmRleF9ub3NwZWMo aWR4LCBNQVhfRVBUUCldICE9DQorICAgICAgICAgbWZuX3goSU5WQUxJRF9NRk4pICkNCiAgICAg ew0KLSAgICAgICAgcDJtID0gZC0+YXJjaC5hbHRwMm1fcDJtW2lkeF07DQorICAgICAgICBwMm0g PSBkLT5hcmNoLmFsdHAybV9wMm1bYXJyYXlfaW5kZXhfbm9zcGVjKGlkeCwNCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBBUlJBWV9TSVpFKGQtPmFyY2guYWx0cDJtX3AybSkpXTsN CiANCiAgICAgICAgIGlmICggIV9hdG9taWNfcmVhZChwMm0tPmFjdGl2ZV92Y3B1cykgKQ0KICAg ICAgICAgew0KICAgICAgICAgICAgIHAybV9yZXNldF9hbHRwMm0oZCwgaWR4LCBBTFRQMk1fREVB Q1RJVkFURSk7DQotICAgICAgICAgICAgZC0+YXJjaC5hbHRwMm1fZXB0cFtpZHhdID0gbWZuX3go SU5WQUxJRF9NRk4pOw0KKyAgICAgICAgICAgIGQtPmFyY2guYWx0cDJtX2VwdHBbYXJyYXlfaW5k ZXhfbm9zcGVjKGlkeCwgTUFYX0VQVFApXSA9DQorICAgICAgICAgICAgbWZuX3goSU5WQUxJRF9N Rk4pOw0KICAgICAgICAgICAgIHJjID0gMDsNCiAgICAgICAgIH0NCiAgICAgfQ0KQEAgLTI2ODks MTEgKzI2OTUsMTQgQEAgaW50IHAybV9jaGFuZ2VfYWx0cDJtX2dmbihzdHJ1Y3QgZG9tYWluICpk LCB1bnNpZ25lZCBpbnQgaWR4LA0KICAgICBtZm5fdCBtZm47DQogICAgIGludCByYyA9IC1FSU5W QUw7DQogDQotICAgIGlmICggaWR4ID49IE1BWF9BTFRQMk0gfHwgZC0+YXJjaC5hbHRwMm1fZXB0 cFtpZHhdID09IG1mbl94KElOVkFMSURfTUZOKSApDQorICAgIGlmICggaWR4ID49ICBtaW4oQVJS QVlfU0laRShkLT5hcmNoLmFsdHAybV9wMm0pLCBNQVhfRVBUUCkgfHwNCisgICAgICAgICBkLT5h cmNoLmFsdHAybV9lcHRwW2FycmF5X2luZGV4X25vc3BlYyhpZHgsIE1BWF9FUFRQKV0gPT0NCisg ICAgICAgICBtZm5feChJTlZBTElEX01GTikgKQ0KICAgICAgICAgcmV0dXJuIHJjOw0KIA0KICAg ICBocDJtID0gcDJtX2dldF9ob3N0cDJtKGQpOw0KLSAgICBhcDJtID0gZC0+YXJjaC5hbHRwMm1f cDJtW2lkeF07DQorICAgIGFwMm0gPSBkLT5hcmNoLmFsdHAybV9wMm1bYXJyYXlfaW5kZXhfbm9z cGVjKGlkeCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBUlJBWV9TSVpFKGQtPmFy Y2guYWx0cDJtX3AybSkpXTsNCiANCiAgICAgcDJtX2xvY2soaHAybSk7DQogICAgIHAybV9sb2Nr KGFwMm0pOw0KQEAgLTMwMzIsMTEgKzMwNDEsMTMgQEAgaW50IHAybV9zZXRfc3VwcHJlc3NfdmUo c3RydWN0IGRvbWFpbiAqZCwgZ2ZuX3QgZ2ZuLCBib29sIHN1cHByZXNzX3ZlLA0KIA0KICAgICBp ZiAoIGFsdHAybV9pZHggPiAwICkNCiAgICAgew0KLSAgICAgICAgaWYgKCBhbHRwMm1faWR4ID49 IE1BWF9BTFRQMk0gfHwNCi0gICAgICAgICAgICAgZC0+YXJjaC5hbHRwMm1fZXB0cFthbHRwMm1f aWR4XSA9PSBtZm5feChJTlZBTElEX01GTikgKQ0KKyAgICAgICAgaWYgKCBhbHRwMm1faWR4ID49 IG1pbihBUlJBWV9TSVpFKGQtPmFyY2guYWx0cDJtX3AybSksIE1BWF9FUFRQKSB8fA0KKyAgICAg ICAgICAgICBkLT5hcmNoLmFsdHAybV9lcHRwW2FycmF5X2luZGV4X25vc3BlYyhhbHRwMm1faWR4 LCBNQVhfRVBUUCldID09DQorICAgICAgICAgICAgIG1mbl94KElOVkFMSURfTUZOKSApDQogICAg ICAgICAgICAgcmV0dXJuIC1FSU5WQUw7DQogDQotICAgICAgICBwMm0gPSBhcDJtID0gZC0+YXJj aC5hbHRwMm1fcDJtW2FsdHAybV9pZHhdOw0KKyAgICAgICAgcDJtID0gYXAybSA9IGQtPmFyY2gu YWx0cDJtX3AybVthcnJheV9pbmRleF9ub3NwZWMoYWx0cDJtX2lkeCwNCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgQVJSQVlfU0laRShkLT5hcmNoLmFsdHAybV9wMm0p KV07DQogICAgIH0NCiAgICAgZWxzZQ0KICAgICAgICAgcDJtID0gaG9zdF9wMm07DQpAQCAtMzA3 NSwxMSArMzA4NiwxMyBAQCBpbnQgcDJtX2dldF9zdXBwcmVzc192ZShzdHJ1Y3QgZG9tYWluICpk LCBnZm5fdCBnZm4sIGJvb2wgKnN1cHByZXNzX3ZlLA0KIA0KICAgICBpZiAoIGFsdHAybV9pZHgg PiAwICkNCiAgICAgew0KLSAgICAgICAgaWYgKCBhbHRwMm1faWR4ID49IE1BWF9BTFRQMk0gfHwN Ci0gICAgICAgICAgICAgZC0+YXJjaC5hbHRwMm1fZXB0cFthbHRwMm1faWR4XSA9PSBtZm5feChJ TlZBTElEX01GTikgKQ0KKyAgICAgICAgaWYgKCBhbHRwMm1faWR4ID49IG1pbihBUlJBWV9TSVpF KGQtPmFyY2guYWx0cDJtX3AybSksIE1BWF9FUFRQKSB8fA0KKyAgICAgICAgICAgICBkLT5hcmNo LmFsdHAybV9lcHRwW2FycmF5X2luZGV4X25vc3BlYyhhbHRwMm1faWR4LCBNQVhfRVBUUCldID09 DQorICAgICAgICAgICAgIG1mbl94KElOVkFMSURfTUZOKSApDQogICAgICAgICAgICAgcmV0dXJu IC1FSU5WQUw7DQogDQotICAgICAgICBwMm0gPSBhcDJtID0gZC0+YXJjaC5hbHRwMm1fcDJtW2Fs dHAybV9pZHhdOw0KKyAgICAgICAgcDJtID0gYXAybSA9IGQtPmFyY2guYWx0cDJtX3AybVthcnJh eV9pbmRleF9ub3NwZWMoYWx0cDJtX2lkeCwNCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgQVJSQVlfU0laRShkLT5hcmNoLmFsdHAybV9wMm0pKV07DQogICAgIH0NCiAg ICAgZWxzZQ0KICAgICAgICAgcDJtID0gaG9zdF9wMm07DQotLSANCjIuMTcuMQ0KDQpfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGlu ZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnBy b2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs