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=-8.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,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 68218C43613 for ; Mon, 24 Jun 2019 15:10:17 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 2C39F20645 for ; Mon, 24 Jun 2019 15:10:17 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=marvell.com header.i=@marvell.com header.b="a98Lohf8"; dkim=pass (1024-bit key) header.d=marvell.onmicrosoft.com header.i=@marvell.onmicrosoft.com header.b="Gb8L0b5W" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730669AbfFXPJd (ORCPT ); Mon, 24 Jun 2019 11:09:33 -0400 Received: from mx0a-0016f401.pphosted.com ([67.231.148.174]:42782 "EHLO mx0b-0016f401.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1730546AbfFXPJ1 (ORCPT ); Mon, 24 Jun 2019 11:09:27 -0400 Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x5OF0G0H018677; Mon, 24 Jun 2019 08:09:18 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pfpt0818; bh=vK/hGpemHSdkor+/r7WTQlppSZAa66sxeY5ljJ4uA8I=; b=a98Lohf88XsR67JybI7OJT9BsFdcsumv3qhjEIaaG/XK37TS+kvEG65v+f0J3938vt19 iYbrpmw9XsRBm8+HjAszLeBJULsc6tp6NanISQOY5/s+DxnpQdeFZXmLEE9zJAlNj5Gt hKjKkY62iaJ0uQEmUilkwOXjrS8ChycDHuJ4yYa7gXgZ0hsu1iVfqCnX2lQoyL/O4Nys tMh4ssuEg7f4FsVcV/7h+9fCiiMH5hwxmLHnrBeqBLzIejr64cfdR9vChRDbC8C3Jogy GrMi+OnioixeJanu+uWCTIKOT8hQDzqhjzcyKVmo76b3Mx1wJfVfp32Skbw5TjqJqW9t VQ== Received: from sc-exch02.marvell.com ([199.233.58.182]) by mx0a-0016f401.pphosted.com with ESMTP id 2tarxr9ta7-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 24 Jun 2019 08:09:18 -0700 Received: from SC-EXCH03.marvell.com (10.93.176.83) by SC-EXCH02.marvell.com (10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Mon, 24 Jun 2019 08:09:17 -0700 Received: from NAM03-BY2-obe.outbound.protection.outlook.com (104.47.42.51) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Mon, 24 Jun 2019 08:09:16 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector2-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vK/hGpemHSdkor+/r7WTQlppSZAa66sxeY5ljJ4uA8I=; b=Gb8L0b5WARvkTkJhhTAv1pTTEeUr3y1kocT+6kr7kHWUeN7Wj/i8tkGeDnA1LyIw2h1fJ3rTLnu+z0L56pzNyPG5TlyRzyD3e5+HdBEDohHvR9yLOou+U6jCv31w26ULH68N200BcM8JaQ9IMyL0Ze9xZD0DU8i153JtM4JA3Mc= Received: from MN2PR18MB3408.namprd18.prod.outlook.com (10.255.238.217) by MN2PR18MB3197.namprd18.prod.outlook.com (10.255.236.158) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2008.13; Mon, 24 Jun 2019 15:09:15 +0000 Received: from MN2PR18MB3408.namprd18.prod.outlook.com ([fe80::d3:794c:1b94:cf3]) by MN2PR18MB3408.namprd18.prod.outlook.com ([fe80::d3:794c:1b94:cf3%4]) with mapi id 15.20.2008.014; Mon, 24 Jun 2019 15:09:15 +0000 From: Robert Richter To: Borislav Petkov , James Morse , "Mauro Carvalho Chehab" CC: "linux-edac@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Robert Richter Subject: [PATCH v2 10/24] EDAC, mc: Remove per layer counters Thread-Topic: [PATCH v2 10/24] EDAC, mc: Remove per layer counters Thread-Index: AQHVKp7JCHSgNFUAD0uH9veNN3pALQ== Date: Mon, 24 Jun 2019 15:09:15 +0000 Message-ID: <20190624150758.6695-11-rrichter@marvell.com> References: <20190624150758.6695-1-rrichter@marvell.com> In-Reply-To: <20190624150758.6695-1-rrichter@marvell.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: HE1P190CA0035.EURP190.PROD.OUTLOOK.COM (2603:10a6:7:52::24) To MN2PR18MB3408.namprd18.prod.outlook.com (2603:10b6:208:16c::25) x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.20.1 x-originating-ip: [92.254.182.202] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 941bd320-f963-4a1f-4fa4-08d6f8b5ec11 x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(2017052603328)(7193020);SRVR:MN2PR18MB3197; x-ms-traffictypediagnostic: MN2PR18MB3197: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:2582; x-forefront-prvs: 007814487B x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(39860400002)(366004)(136003)(396003)(346002)(376002)(199004)(189003)(36756003)(110136005)(107886003)(54906003)(81156014)(81166006)(68736007)(30864003)(8676002)(25786009)(5660300002)(8936002)(305945005)(7736002)(4326008)(1076003)(186003)(6116002)(14454004)(476003)(486006)(2616005)(11346002)(256004)(446003)(3846002)(50226002)(26005)(2906002)(52116002)(76176011)(71200400001)(71190400001)(99286004)(386003)(6506007)(102836004)(478600001)(316002)(86362001)(6512007)(66066001)(53936002)(6486002)(73956011)(66946007)(66476007)(66556008)(64756008)(66446008)(6436002);DIR:OUT;SFP:1101;SCL:1;SRVR:MN2PR18MB3197;H:MN2PR18MB3408.namprd18.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;A:1;MX:1; received-spf: None (protection.outlook.com: marvell.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: Hsfq7kyKeODZJLQo8dB0/k+ilcEI7lC4dWgYGO2Vue04ww/b/dUmegFbt0smHT/R4wXDCO1CIvU1K8TJ0TROuy667sePsnDT2SAYMetdzwOsVe6WBRi6ogo+I9Z9YwZ6MUcDifcmsWru4df0LR9MAbCC5ItLrEtNAiB20D6HyJ/QSonz3xTlE+pjy9EIfl/3c42HRHiOnXvoaHshpv22RdnWOt/G5NSl7mimXVtGbdyf7mjcdVewhU4vQ0jdzVg66S9RNmFurBm0kWJGYId5u46nSsj6MfzCcTveYOhDO8sOjaPBCsMyNdknF8cjt9L+ZQ7snE7nugbdJJwM29PopM/Hjc2AM+gbroG/MuOZ+rdG/bY0E7QmOmYB7KheW2R8Cwut4hMhBdsGV8dA2pba9AEwnhy9FaDlbDRkGKpnodE= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 941bd320-f963-4a1f-4fa4-08d6f8b5ec11 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Jun 2019 15:09:15.6698 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: rrichter@marvell.com X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR18MB3197 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2019-06-24_10:,, signatures=0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org TG9va2luZyBhdCBob3cgbWNpLT57dWUsY2V9X3Blcl9sYXllcltFREFDX01BWF9MQVlFUlNdIGlz IHVzZWQsIGl0DQp0dXJucyBvdXQgdGhhdCBvbmx5IHRoZSBsZWF2ZXMgaW4gdGhlIG1lbW9yeSBo aWVyYXJjaHkgYXJlIGNvbnN1bWVkDQooaW4gc3lzZnMpLCBidXQgbm90IHRoZSBpbnRlcm1lZGlh dGUgbGF5ZXJzLCBlLmcuOg0KDQogY291bnQgPSBkaW1tLT5tY2ktPmNlX3Blcl9sYXllcltkaW1t LT5tY2ktPm5fbGF5ZXJzLTFdW2RpbW0tPmlkeF07DQoNClNvIGxldCdzIGdldCByaWQgb2YgdGhl IHVudXNlZCBjb3VudGVycyB0aGF0IGp1c3QgYWRkIGNvbXBsZXhpdHkuDQoNCkVycm9yIGNvdW50 ZXIgdmFsdWVzIGFyZSBkaXJlY3RseSBzdG9yZWQgaW4gc3RydWN0IGRpbW1faW5mbyBub3cuDQoN ClNpZ25lZC1vZmYtYnk6IFJvYmVydCBSaWNodGVyIDxycmljaHRlckBtYXJ2ZWxsLmNvbT4NCi0t LQ0KIGRyaXZlcnMvZWRhYy9lZGFjX21jLmMgICAgICAgfCA5OCArKysrKysrKysrKystLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NCiBkcml2ZXJzL2VkYWMvZWRhY19tY19zeXNmcy5jIHwgMjAgKysr LS0tLS0NCiBkcml2ZXJzL2VkYWMvZ2hlc19lZGFjLmMgICAgIHwgIDUgKy0NCiBpbmNsdWRlL2xp bnV4L2VkYWMuaCAgICAgICAgIHwgIDcgKystDQogNCBmaWxlcyBjaGFuZ2VkLCA0NCBpbnNlcnRp b25zKCspLCA4NiBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZWRhYy9lZGFj X21jLmMgYi9kcml2ZXJzL2VkYWMvZWRhY19tYy5jDQppbmRleCBmMmFjZGFiMzRlYjcuLmJjZTM5 YjJlMTBjOSAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvZWRhYy9lZGFjX21jLmMNCisrKyBiL2RyaXZl cnMvZWRhYy9lZGFjX21jLmMNCkBAIC0zMTMsMTAgKzMxMyw5IEBAIHN0cnVjdCBtZW1fY3RsX2lu Zm8gKmVkYWNfbWNfYWxsb2ModW5zaWduZWQgbWNfbnVtLA0KIAlzdHJ1Y3QgY3Nyb3dfaW5mbyAq Y3NyOw0KIAlzdHJ1Y3QgcmFua19pbmZvICpjaGFuOw0KIAlzdHJ1Y3QgZGltbV9pbmZvICpkaW1t Ow0KLQl1MzIgKmNlX3Blcl9sYXllcltFREFDX01BWF9MQVlFUlNdLCAqdWVfcGVyX2xheWVyW0VE QUNfTUFYX0xBWUVSU107DQogCXVuc2lnbmVkIHBvc1tFREFDX01BWF9MQVlFUlNdOw0KLQl1bnNp Z25lZCBzaXplLCB0b3RfZGltbXMgPSAxLCBjb3VudCA9IDE7DQotCXVuc2lnbmVkIHRvdF9jc3Jv d3MgPSAxLCB0b3RfY2hhbm5lbHMgPSAxLCB0b3RfZXJyY291bnQgPSAwOw0KKwl1bnNpZ25lZCBz aXplLCB0b3RfZGltbXMgPSAxOw0KKwl1bnNpZ25lZCB0b3RfY3Nyb3dzID0gMSwgdG90X2NoYW5u ZWxzID0gMTsNCiAJdm9pZCAqcHZ0LCAqcCwgKnB0ciA9IE5VTEw7DQogCWludCBpZHgsIGksIGos IHJvdywgY2huLCBuLCBsZW47DQogCWJvb2wgcGVyX3JhbmsgPSBmYWxzZTsNCkBAIC0zNDIsMTkg KzM0MSwxMCBAQCBzdHJ1Y3QgbWVtX2N0bF9pbmZvICplZGFjX21jX2FsbG9jKHVuc2lnbmVkIG1j X251bSwNCiAJICogc3RyaW5nZW50IGFzIHdoYXQgdGhlIGNvbXBpbGVyIHdvdWxkIHByb3ZpZGUg aWYgd2UgY291bGQgc2ltcGx5DQogCSAqIGhhcmRjb2RlIGV2ZXJ5dGhpbmcgaW50byBhIHNpbmds ZSBzdHJ1Y3QuDQogCSAqLw0KLQltY2kgPSBlZGFjX2FsaWduX3B0cigmcHRyLCBzaXplb2YoKm1j aSksIDEpOw0KLQlsYXllciA9IGVkYWNfYWxpZ25fcHRyKCZwdHIsIHNpemVvZigqbGF5ZXIpLCBu X2xheWVycyk7DQotCWZvciAoaSA9IDA7IGkgPCBuX2xheWVyczsgaSsrKSB7DQotCQljb3VudCAq PSBsYXllcnNbaV0uc2l6ZTsNCi0JCWVkYWNfZGJnKDQsICJlcnJjb3VudCBsYXllciAlZCBzaXpl ICVkXG4iLCBpLCBjb3VudCk7DQotCQljZV9wZXJfbGF5ZXJbaV0gPSBlZGFjX2FsaWduX3B0cigm cHRyLCBzaXplb2YodTMyKSwgY291bnQpOw0KLQkJdWVfcGVyX2xheWVyW2ldID0gZWRhY19hbGln bl9wdHIoJnB0ciwgc2l6ZW9mKHUzMiksIGNvdW50KTsNCi0JCXRvdF9lcnJjb3VudCArPSAyICog Y291bnQ7DQotCX0NCi0NCi0JZWRhY19kYmcoNCwgImFsbG9jYXRpbmcgJWQgZXJyb3IgY291bnRl cnNcbiIsIHRvdF9lcnJjb3VudCk7DQotCXB2dCA9IGVkYWNfYWxpZ25fcHRyKCZwdHIsIHN6X3B2 dCwgMSk7DQotCXNpemUgPSAoKHVuc2lnbmVkIGxvbmcpcHZ0KSArIHN6X3B2dDsNCisJbWNpCT0g ZWRhY19hbGlnbl9wdHIoJnB0ciwgc2l6ZW9mKCptY2kpLCAxKTsNCisJbGF5ZXIJPSBlZGFjX2Fs aWduX3B0cigmcHRyLCBzaXplb2YoKmxheWVyKSwgbl9sYXllcnMpOw0KKwlwdnQJPSBlZGFjX2Fs aWduX3B0cigmcHRyLCBzel9wdnQsIDEpOw0KKwlzaXplCT0gKCh1bnNpZ25lZCBsb25nKXB2dCkg KyBzel9wdnQ7DQogDQogCWVkYWNfZGJnKDEsICJhbGxvY2F0aW5nICV1IGJ5dGVzIGZvciBtY2kg ZGF0YSAoJWQgJXMsICVkIGNzcm93cy9jaGFubmVscylcbiIsDQogCQkgc2l6ZSwNCkBAIC0zNzAs MTAgKzM2MCw2IEBAIHN0cnVjdCBtZW1fY3RsX2luZm8gKmVkYWNfbWNfYWxsb2ModW5zaWduZWQg bWNfbnVtLA0KIAkgKiByYXRoZXIgdGhhbiBhbiBpbWFnaW5hcnkgY2h1bmsgb2YgbWVtb3J5IGxv Y2F0ZWQgYXQgYWRkcmVzcyAwLg0KIAkgKi8NCiAJbGF5ZXIgPSAoc3RydWN0IGVkYWNfbWNfbGF5 ZXIgKikoKChjaGFyICopbWNpKSArICgodW5zaWduZWQgbG9uZylsYXllcikpOw0KLQlmb3IgKGkg PSAwOyBpIDwgbl9sYXllcnM7IGkrKykgew0KLQkJbWNpLT5jZV9wZXJfbGF5ZXJbaV0gPSAodTMy ICopKChjaGFyICopbWNpICsgKCh1bnNpZ25lZCBsb25nKWNlX3Blcl9sYXllcltpXSkpOw0KLQkJ bWNpLT51ZV9wZXJfbGF5ZXJbaV0gPSAodTMyICopKChjaGFyICopbWNpICsgKCh1bnNpZ25lZCBs b25nKXVlX3Blcl9sYXllcltpXSkpOw0KLQl9DQogCXB2dCA9IHN6X3B2dCA/ICgoKGNoYXIgKilt Y2kpICsgKCh1bnNpZ25lZCBsb25nKXB2dCkpIDogTlVMTDsNCiANCiAJLyogc2V0dXAgaW5kZXgg YW5kIHZhcmlvdXMgaW50ZXJuYWwgcG9pbnRlcnMgKi8NCkBAIC05MDMsNTMgKzg4OSwzMSBAQCBj b25zdCBjaGFyICplZGFjX2xheWVyX25hbWVbXSA9IHsNCiBFWFBPUlRfU1lNQk9MX0dQTChlZGFj X2xheWVyX25hbWUpOw0KIA0KIHN0YXRpYyB2b2lkIGVkYWNfaW5jX2NlX2Vycm9yKHN0cnVjdCBt ZW1fY3RsX2luZm8gKm1jaSwNCi0JCQkgICAgICBib29sIGVuYWJsZV9wZXJfbGF5ZXJfcmVwb3J0 LA0KIAkJCSAgICAgIGNvbnN0IGludCBwb3NbRURBQ19NQVhfTEFZRVJTXSwNCiAJCQkgICAgICBj b25zdCB1MTYgY291bnQpDQogew0KLQlpbnQgaSwgaW5kZXggPSAwOw0KKwlzdHJ1Y3QgZGltbV9p bmZvICpkaW1tID0gZWRhY19nZXRfZGltbShtY2ksIHBvc1swXSwgcG9zWzFdLCBwb3NbMl0pOw0K IA0KIAltY2ktPmNlX21jICs9IGNvdW50Ow0KIA0KLQlpZiAoIWVuYWJsZV9wZXJfbGF5ZXJfcmVw b3J0KSB7DQorCWlmIChkaW1tKQ0KKwkJZGltbS0+Y2VfY291bnQgKz0gY291bnQ7DQorCWVsc2UN CiAJCW1jaS0+Y2Vfbm9pbmZvX2NvdW50ICs9IGNvdW50Ow0KLQkJcmV0dXJuOw0KLQl9DQotDQot CWZvciAoaSA9IDA7IGkgPCBtY2ktPm5fbGF5ZXJzOyBpKyspIHsNCi0JCWlmIChwb3NbaV0gPCAw KQ0KLQkJCWJyZWFrOw0KLQkJaW5kZXggKz0gcG9zW2ldOw0KLQkJbWNpLT5jZV9wZXJfbGF5ZXJb aV1baW5kZXhdICs9IGNvdW50Ow0KLQ0KLQkJaWYgKGkgPCBtY2ktPm5fbGF5ZXJzIC0gMSkNCi0J CQlpbmRleCAqPSBtY2ktPmxheWVyc1tpICsgMV0uc2l6ZTsNCi0JfQ0KIH0NCiANCiBzdGF0aWMg dm9pZCBlZGFjX2luY191ZV9lcnJvcihzdHJ1Y3QgbWVtX2N0bF9pbmZvICptY2ksDQotCQkJCSAg ICBib29sIGVuYWJsZV9wZXJfbGF5ZXJfcmVwb3J0LA0KIAkJCQkgICAgY29uc3QgaW50IHBvc1tF REFDX01BWF9MQVlFUlNdLA0KIAkJCQkgICAgY29uc3QgdTE2IGNvdW50KQ0KIHsNCi0JaW50IGks IGluZGV4ID0gMDsNCisJc3RydWN0IGRpbW1faW5mbyAqZGltbSA9IGVkYWNfZ2V0X2RpbW0obWNp LCBwb3NbMF0sIHBvc1sxXSwgcG9zWzJdKTsNCiANCiAJbWNpLT51ZV9tYyArPSBjb3VudDsNCiAN Ci0JaWYgKCFlbmFibGVfcGVyX2xheWVyX3JlcG9ydCkgew0KKwlpZiAoZGltbSkNCisJCWRpbW0t PnVlX2NvdW50ICs9IGNvdW50Ow0KKwllbHNlDQogCQltY2ktPnVlX25vaW5mb19jb3VudCArPSBj b3VudDsNCi0JCXJldHVybjsNCi0JfQ0KLQ0KLQlmb3IgKGkgPSAwOyBpIDwgbWNpLT5uX2xheWVy czsgaSsrKSB7DQotCQlpZiAocG9zW2ldIDwgMCkNCi0JCQlicmVhazsNCi0JCWluZGV4ICs9IHBv c1tpXTsNCi0JCW1jaS0+dWVfcGVyX2xheWVyW2ldW2luZGV4XSArPSBjb3VudDsNCi0NCi0JCWlm IChpIDwgbWNpLT5uX2xheWVycyAtIDEpDQotCQkJaW5kZXggKj0gbWNpLT5sYXllcnNbaSArIDFd LnNpemU7DQotCX0NCiB9DQogDQogc3RhdGljIHZvaWQgZWRhY19jZV9lcnJvcihzdHJ1Y3QgbWVt X2N0bF9pbmZvICptY2ksDQpAQCAtOTYwLDcgKzkyNCw2IEBAIHN0YXRpYyB2b2lkIGVkYWNfY2Vf ZXJyb3Ioc3RydWN0IG1lbV9jdGxfaW5mbyAqbWNpLA0KIAkJCSAgY29uc3QgY2hhciAqbGFiZWws DQogCQkJICBjb25zdCBjaGFyICpkZXRhaWwsDQogCQkJICBjb25zdCBjaGFyICpvdGhlcl9kZXRh aWwsDQotCQkJICBjb25zdCBib29sIGVuYWJsZV9wZXJfbGF5ZXJfcmVwb3J0LA0KIAkJCSAgY29u c3QgdW5zaWduZWQgbG9uZyBwYWdlX2ZyYW1lX251bWJlciwNCiAJCQkgIGNvbnN0IHVuc2lnbmVk IGxvbmcgb2Zmc2V0X2luX3BhZ2UsDQogCQkJICBsb25nIGdyYWluKQ0KQEAgLTk4Myw3ICs5NDYs NyBAQCBzdGF0aWMgdm9pZCBlZGFjX2NlX2Vycm9yKHN0cnVjdCBtZW1fY3RsX2luZm8gKm1jaSwN CiAJCQkJICAgICAgIGVycm9yX2NvdW50LCBtc2csIG1zZ19hdXgsIGxhYmVsLA0KIAkJCQkgICAg ICAgbG9jYXRpb24sIGRldGFpbCk7DQogCX0NCi0JZWRhY19pbmNfY2VfZXJyb3IobWNpLCBlbmFi bGVfcGVyX2xheWVyX3JlcG9ydCwgcG9zLCBlcnJvcl9jb3VudCk7DQorCWVkYWNfaW5jX2NlX2Vy cm9yKG1jaSwgcG9zLCBlcnJvcl9jb3VudCk7DQogDQogCWlmIChtY2ktPnNjcnViX21vZGUgPT0g U0NSVUJfU1dfU1JDKSB7DQogCQkvKg0KQEAgLTEwMTMsOCArOTc2LDcgQEAgc3RhdGljIHZvaWQg ZWRhY191ZV9lcnJvcihzdHJ1Y3QgbWVtX2N0bF9pbmZvICptY2ksDQogCQkJICBjb25zdCBjaGFy ICpsb2NhdGlvbiwNCiAJCQkgIGNvbnN0IGNoYXIgKmxhYmVsLA0KIAkJCSAgY29uc3QgY2hhciAq ZGV0YWlsLA0KLQkJCSAgY29uc3QgY2hhciAqb3RoZXJfZGV0YWlsLA0KLQkJCSAgY29uc3QgYm9v bCBlbmFibGVfcGVyX2xheWVyX3JlcG9ydCkNCisJCQkgIGNvbnN0IGNoYXIgKm90aGVyX2RldGFp bCkNCiB7DQogCWNoYXIgKm1zZ19hdXggPSAiIjsNCiANCkBAIC0xMDQzLDcgKzEwMDUsNyBAQCBz dGF0aWMgdm9pZCBlZGFjX3VlX2Vycm9yKHN0cnVjdCBtZW1fY3RsX2luZm8gKm1jaSwNCiAJCQkg ICAgICBtc2csIG1zZ19hdXgsIGxhYmVsLCBsb2NhdGlvbiwgZGV0YWlsKTsNCiAJfQ0KIA0KLQll ZGFjX2luY191ZV9lcnJvcihtY2ksIGVuYWJsZV9wZXJfbGF5ZXJfcmVwb3J0LCBwb3MsIGVycm9y X2NvdW50KTsNCisJZWRhY19pbmNfdWVfZXJyb3IobWNpLCBwb3MsIGVycm9yX2NvdW50KTsNCiB9 DQogDQogdm9pZCBlZGFjX3Jhd19tY19oYW5kbGVfZXJyb3IoY29uc3QgZW51bSBod19ldmVudF9t Y19lcnJfdHlwZSB0eXBlLA0KQEAgLTEwNzYsMTYgKzEwMzgsMTYgQEAgdm9pZCBlZGFjX3Jhd19t Y19oYW5kbGVfZXJyb3IoY29uc3QgZW51bSBod19ldmVudF9tY19lcnJfdHlwZSB0eXBlLA0KIAkJ CSJwYWdlOjB4JWx4IG9mZnNldDoweCVseCBncmFpbjolbGQgc3luZHJvbWU6MHglbHgiLA0KIAkJ CWUtPnBhZ2VfZnJhbWVfbnVtYmVyLCBlLT5vZmZzZXRfaW5fcGFnZSwNCiAJCQllLT5ncmFpbiwg ZS0+c3luZHJvbWUpOw0KLQkJZWRhY19jZV9lcnJvcihtY2ksIGUtPmVycm9yX2NvdW50LCBwb3Ms IGUtPm1zZywgZS0+bG9jYXRpb24sIGUtPmxhYmVsLA0KLQkJCSAgICAgIGRldGFpbCwgZS0+b3Ro ZXJfZGV0YWlsLCBlLT5lbmFibGVfcGVyX2xheWVyX3JlcG9ydCwNCisJCWVkYWNfY2VfZXJyb3Io bWNpLCBlLT5lcnJvcl9jb3VudCwgcG9zLCBlLT5tc2csIGUtPmxvY2F0aW9uLA0KKwkJCSAgICAg IGUtPmxhYmVsLCBkZXRhaWwsIGUtPm90aGVyX2RldGFpbCwNCiAJCQkgICAgICBlLT5wYWdlX2Zy YW1lX251bWJlciwgZS0+b2Zmc2V0X2luX3BhZ2UsIGUtPmdyYWluKTsNCiAJfSBlbHNlIHsNCiAJ CXNucHJpbnRmKGRldGFpbCwgc2l6ZW9mKGRldGFpbCksDQogCQkJInBhZ2U6MHglbHggb2Zmc2V0 OjB4JWx4IGdyYWluOiVsZCIsDQogCQkJZS0+cGFnZV9mcmFtZV9udW1iZXIsIGUtPm9mZnNldF9p bl9wYWdlLCBlLT5ncmFpbik7DQogDQotCQllZGFjX3VlX2Vycm9yKG1jaSwgZS0+ZXJyb3JfY291 bnQsIHBvcywgZS0+bXNnLCBlLT5sb2NhdGlvbiwgZS0+bGFiZWwsDQotCQkJICAgICAgZGV0YWls LCBlLT5vdGhlcl9kZXRhaWwsIGUtPmVuYWJsZV9wZXJfbGF5ZXJfcmVwb3J0KTsNCisJCWVkYWNf dWVfZXJyb3IobWNpLCBlLT5lcnJvcl9jb3VudCwgcG9zLCBlLT5tc2csIGUtPmxvY2F0aW9uLA0K KwkJCSAgICAgIGUtPmxhYmVsLCBkZXRhaWwsIGUtPm90aGVyX2RldGFpbCk7DQogCX0NCiANCiAN CkBAIC0xMTEwLDYgKzEwNzIsNyBAQCB2b2lkIGVkYWNfbWNfaGFuZGxlX2Vycm9yKGNvbnN0IGVu dW0gaHdfZXZlbnRfbWNfZXJyX3R5cGUgdHlwZSwNCiAJaW50IHBvc1tFREFDX01BWF9MQVlFUlNd ID0geyB0b3BfbGF5ZXIsIG1pZF9sYXllciwgbG93X2xheWVyIH07DQogCWludCBpLCBuX2xhYmVs cyA9IDA7DQogCXN0cnVjdCBlZGFjX3Jhd19lcnJvcl9kZXNjICplID0gJm1jaS0+ZXJyb3JfZGVz YzsNCisJYm9vbCBwZXJfbGF5ZXJfcmVwb3J0ID0gZmFsc2U7DQogDQogCWVkYWNfZGJnKDMsICJN QyVkXG4iLCBtY2ktPm1jX2lkeCk7DQogDQpAQCAtMTEyNyw5ICsxMDkwLDkgQEAgdm9pZCBlZGFj X21jX2hhbmRsZV9lcnJvcihjb25zdCBlbnVtIGh3X2V2ZW50X21jX2Vycl90eXBlIHR5cGUsDQog DQogCS8qDQogCSAqIENoZWNrIGlmIHRoZSBldmVudCByZXBvcnQgaXMgY29uc2lzdGVudCBhbmQg aWYgdGhlIG1lbW9yeQ0KLQkgKiBsb2NhdGlvbiBpcyBrbm93bi4gSWYgaXQgaXMga25vd24sIGVu YWJsZV9wZXJfbGF5ZXJfcmVwb3J0IHdpbGwgYmUNCi0JICogdHJ1ZSwgdGhlIERJTU0ocykgbGFi ZWwgaW5mbyB3aWxsIGJlIGZpbGxlZCBhbmQgdGhlIHBlci1sYXllcg0KLQkgKiBlcnJvciBjb3Vu dGVycyB3aWxsIGJlIGluY3JlbWVudGVkLg0KKwkgKiBsb2NhdGlvbiBpcyBrbm93bi4gSWYgaXQg aXMga25vd24sIHRoZSBESU1NKHMpIGxhYmVsIGluZm8NCisJICogd2lsbCBiZSBmaWxsZWQgYW5k IHRoZSBwZXItbGF5ZXIgZXJyb3IgY291bnRlcnMgd2lsbCBiZQ0KKwkgKiBpbmNyZW1lbnRlZC4N CiAJICovDQogCWZvciAoaSA9IDA7IGkgPCBtY2ktPm5fbGF5ZXJzOyBpKyspIHsNCiAJCWlmIChw b3NbaV0gPj0gKGludCltY2ktPmxheWVyc1tpXS5zaXplKSB7DQpAQCAtMTE0Nyw3ICsxMTEwLDcg QEAgdm9pZCBlZGFjX21jX2hhbmRsZV9lcnJvcihjb25zdCBlbnVtIGh3X2V2ZW50X21jX2Vycl90 eXBlIHR5cGUsDQogCQkJcG9zW2ldID0gLTE7DQogCQl9DQogCQlpZiAocG9zW2ldID49IDApDQot CQkJZS0+ZW5hYmxlX3Blcl9sYXllcl9yZXBvcnQgPSB0cnVlOw0KKwkJCXBlcl9sYXllcl9yZXBv cnQgPSB0cnVlOw0KIAl9DQogDQogCS8qDQpAQCAtMTE3NiwxNSArMTEzOSwxOCBAQCB2b2lkIGVk YWNfbWNfaGFuZGxlX2Vycm9yKGNvbnN0IGVudW0gaHdfZXZlbnRfbWNfZXJyX3R5cGUgdHlwZSwN CiAJCWlmIChkaW1tLT5ncmFpbiA+IGUtPmdyYWluKQ0KIAkJCWUtPmdyYWluID0gZGltbS0+Z3Jh aW47DQogDQorCQlpZiAoIXBlcl9sYXllcl9yZXBvcnQpDQorCQkJY29udGludWU7DQorDQogCQkv Kg0KIAkJICogSWYgdGhlIGVycm9yIGlzIG1lbW9yeS1jb250cm9sbGVyIHdpZGUsIHRoZXJlJ3Mg bm8gbmVlZCB0bw0KIAkJICogc2VlayBmb3IgdGhlIGFmZmVjdGVkIERJTU1zIGJlY2F1c2UgdGhl IHdob2xlDQogCQkgKiBjaGFubmVsL21lbW9yeSBjb250cm9sbGVyLy4uLiAgbWF5IGJlIGFmZmVj dGVkLg0KIAkJICogQWxzbywgZG9uJ3Qgc2hvdyBlcnJvcnMgZm9yIGVtcHR5IERJTU0gc2xvdHMu DQogCQkgKi8NCi0JCWlmIChlLT5lbmFibGVfcGVyX2xheWVyX3JlcG9ydCAmJiBkaW1tLT5ucl9w YWdlcykgew0KKwkJaWYgKGRpbW0tPm5yX3BhZ2VzKSB7DQogCQkJaWYgKG5fbGFiZWxzID49IEVE QUNfTUFYX0xBQkVMUykgew0KLQkJCQllLT5lbmFibGVfcGVyX2xheWVyX3JlcG9ydCA9IGZhbHNl Ow0KKwkJCQlwZXJfbGF5ZXJfcmVwb3J0ID0gZmFsc2U7DQogCQkJCWJyZWFrOw0KIAkJCX0NCiAJ CQluX2xhYmVscysrOw0KQEAgLTEyMTUsNyArMTE4MSw3IEBAIHZvaWQgZWRhY19tY19oYW5kbGVf ZXJyb3IoY29uc3QgZW51bSBod19ldmVudF9tY19lcnJfdHlwZSB0eXBlLA0KIAkJfQ0KIAl9DQog DQotCWlmICghZS0+ZW5hYmxlX3Blcl9sYXllcl9yZXBvcnQpIHsNCisJaWYgKCFwZXJfbGF5ZXJf cmVwb3J0KSB7DQogCQlzdHJjcHkoZS0+bGFiZWwsICJhbnkgbWVtb3J5Iik7DQogCX0gZWxzZSB7 DQogCQllZGFjX2RiZyg0LCAiY3Nyb3cvY2hhbm5lbCB0byBpbmNyZW1lbnQ6ICglZCwlZClcbiIs IHJvdywgY2hhbik7DQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9lZGFjL2VkYWNfbWNfc3lzZnMuYyBi L2RyaXZlcnMvZWRhYy9lZGFjX21jX3N5c2ZzLmMNCmluZGV4IDRkMTVjODhhNTJjZC4uYTRjMWI4 NTAxZmYzIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9lZGFjL2VkYWNfbWNfc3lzZnMuYw0KKysrIGIv ZHJpdmVycy9lZGFjL2VkYWNfbWNfc3lzZnMuYw0KQEAgLTU1OCwxMCArNTU4LDggQEAgc3RhdGlj IHNzaXplX3QgZGltbWRldl9jZV9jb3VudF9zaG93KHN0cnVjdCBkZXZpY2UgKmRldiwNCiAJCQkJ ICAgICAgY2hhciAqZGF0YSkNCiB7DQogCXN0cnVjdCBkaW1tX2luZm8gKmRpbW0gPSB0b19kaW1t KGRldik7DQotCXUzMiBjb3VudDsNCiANCi0JY291bnQgPSBkaW1tLT5tY2ktPmNlX3Blcl9sYXll cltkaW1tLT5tY2ktPm5fbGF5ZXJzLTFdW2RpbW0tPmlkeF07DQotCXJldHVybiBzcHJpbnRmKGRh dGEsICIldVxuIiwgY291bnQpOw0KKwlyZXR1cm4gc3ByaW50ZihkYXRhLCAiJXVcbiIsIGRpbW0t PmNlX2NvdW50KTsNCiB9DQogDQogc3RhdGljIHNzaXplX3QgZGltbWRldl91ZV9jb3VudF9zaG93 KHN0cnVjdCBkZXZpY2UgKmRldiwNCkBAIC01NjksMTAgKzU2Nyw4IEBAIHN0YXRpYyBzc2l6ZV90 IGRpbW1kZXZfdWVfY291bnRfc2hvdyhzdHJ1Y3QgZGV2aWNlICpkZXYsDQogCQkJCSAgICAgIGNo YXIgKmRhdGEpDQogew0KIAlzdHJ1Y3QgZGltbV9pbmZvICpkaW1tID0gdG9fZGltbShkZXYpOw0K LQl1MzIgY291bnQ7DQogDQotCWNvdW50ID0gZGltbS0+bWNpLT51ZV9wZXJfbGF5ZXJbZGltbS0+ bWNpLT5uX2xheWVycy0xXVtkaW1tLT5pZHhdOw0KLQlyZXR1cm4gc3ByaW50ZihkYXRhLCAiJXVc biIsIGNvdW50KTsNCisJcmV0dXJuIHNwcmludGYoZGF0YSwgIiV1XG4iLCBkaW1tLT51ZV9jb3Vu dCk7DQogfQ0KIA0KIC8qIGRpbW0vcmFuayBhdHRyaWJ1dGUgZmlsZXMgKi8NCkBAIC02NjAsNyAr NjU2LDkgQEAgc3RhdGljIHNzaXplX3QgbWNpX3Jlc2V0X2NvdW50ZXJzX3N0b3JlKHN0cnVjdCBk ZXZpY2UgKmRldiwNCiAJCQkJCWNvbnN0IGNoYXIgKmRhdGEsIHNpemVfdCBjb3VudCkNCiB7DQog CXN0cnVjdCBtZW1fY3RsX2luZm8gKm1jaSA9IHRvX21jaShkZXYpOw0KLQlpbnQgY250LCByb3cs IGNoYW4sIGk7DQorCXN0cnVjdCBkaW1tX2luZm8gKmRpbW07DQorCWludCByb3csIGNoYW47DQor DQogCW1jaS0+dWVfbWMgPSAwOw0KIAltY2ktPmNlX21jID0gMDsNCiAJbWNpLT51ZV9ub2luZm9f Y291bnQgPSAwOw0KQEAgLTY3NiwxMSArNjc0LDkgQEAgc3RhdGljIHNzaXplX3QgbWNpX3Jlc2V0 X2NvdW50ZXJzX3N0b3JlKHN0cnVjdCBkZXZpY2UgKmRldiwNCiAJCQlyaS0+Y2hhbm5lbHNbY2hh bl0tPmNlX2NvdW50ID0gMDsNCiAJfQ0KIA0KLQljbnQgPSAxOw0KLQlmb3IgKGkgPSAwOyBpIDwg bWNpLT5uX2xheWVyczsgaSsrKSB7DQotCQljbnQgKj0gbWNpLT5sYXllcnNbaV0uc2l6ZTsNCi0J CW1lbXNldChtY2ktPmNlX3Blcl9sYXllcltpXSwgMCwgY250ICogc2l6ZW9mKHUzMikpOw0KLQkJ bWVtc2V0KG1jaS0+dWVfcGVyX2xheWVyW2ldLCAwLCBjbnQgKiBzaXplb2YodTMyKSk7DQorCW1j aV9mb3JfZWFjaF9kaW1tKG1jaSwgZGltbSkgew0KKwkJZGltbS0+dWVfY291bnQgPSAwOw0KKwkJ ZGltbS0+Y2VfY291bnQgPSAwOw0KIAl9DQogDQogCW1jaS0+c3RhcnRfdGltZSA9IGppZmZpZXM7 DQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9lZGFjL2doZXNfZWRhYy5jIGIvZHJpdmVycy9lZGFjL2do ZXNfZWRhYy5jDQppbmRleCA3MmU3NWVhNTUyNmMuLjc1N2EwMmYyY2U0OSAxMDA2NDQNCi0tLSBh L2RyaXZlcnMvZWRhYy9naGVzX2VkYWMuYw0KKysrIGIvZHJpdmVycy9lZGFjL2doZXNfZWRhYy5j DQpAQCAtMzQ4LDExICszNDgsOCBAQCB2b2lkIGdoZXNfZWRhY19yZXBvcnRfbWVtX2Vycm9yKGlu dCBzZXYsIHN0cnVjdCBjcGVyX3NlY19tZW1fZXJyICptZW1fZXJyKQ0KIAkJCQkgICAgIG1lbV9l cnItPm1lbV9kZXZfaGFuZGxlKTsNCiANCiAJCWluZGV4ID0gZ2V0X2RpbW1fc21iaW9zX2luZGV4 KG1lbV9lcnItPm1lbV9kZXZfaGFuZGxlKTsNCi0JCWlmIChpbmRleCA+PSAwKSB7DQorCQlpZiAo aW5kZXggPj0gMCkNCiAJCQllLT50b3BfbGF5ZXIgPSBpbmRleDsNCi0JCQllLT5lbmFibGVfcGVy X2xheWVyX3JlcG9ydCA9IHRydWU7DQotCQl9DQotDQogCX0NCiAJaWYgKHAgPiBlLT5sb2NhdGlv bikNCiAJCSoocCAtIDEpID0gJ1wwJzsNCmRpZmYgLS1naXQgYS9pbmNsdWRlL2xpbnV4L2VkYWMu aCBiL2luY2x1ZGUvbGludXgvZWRhYy5oDQppbmRleCAyMGEwNGY0ODYxNmMuLjRkY2YwNzVlOWRm ZiAxMDA2NDQNCi0tLSBhL2luY2x1ZGUvbGludXgvZWRhYy5oDQorKysgYi9pbmNsdWRlL2xpbnV4 L2VkYWMuaA0KQEAgLTM4Myw2ICszODMsOSBAQCBzdHJ1Y3QgZGltbV9pbmZvIHsNCiAJdW5zaWdu ZWQgY3Nyb3csIGNzY2hhbm5lbDsJLyogUG9pbnRzIHRvIHRoZSBvbGQgQVBJIGRhdGEgKi8NCiAN CiAJdTE2IHNtYmlvc19oYW5kbGU7ICAgICAgICAgICAgICAvKiBIYW5kbGUgZm9yIFNNQklPUyB0 eXBlIDE3ICovDQorDQorCXUzMiBjZV9jb3VudDsNCisJdTMyIHVlX2NvdW50Ow0KIH07DQogDQog LyoqDQpAQCAtNDUzLDggKzQ1Niw2IEBAIHN0cnVjdCBlcnJjb3VudF9hdHRyaWJ1dGVfZGF0YSB7 DQogICogQGxvY2F0aW9uOgkJCWxvY2F0aW9uIG9mIHRoZSBlcnJvcg0KICAqIEBsYWJlbDoJCQls YWJlbCBvZiB0aGUgYWZmZWN0ZWQgRElNTShzKQ0KICAqIEBvdGhlcl9kZXRhaWw6CQlvdGhlciBk cml2ZXItc3BlY2lmaWMgZGV0YWlsIGFib3V0IHRoZSBlcnJvcg0KLSAqIEBlbmFibGVfcGVyX2xh eWVyX3JlcG9ydDoJaWYgZmFsc2UsIHRoZSBlcnJvciBhZmZlY3RzIGFsbCBsYXllcnMNCi0gKgkJ CQkodHlwaWNhbGx5LCBhIG1lbW9yeSBjb250cm9sbGVyIGVycm9yKQ0KICAqLw0KIHN0cnVjdCBl ZGFjX3Jhd19lcnJvcl9kZXNjIHsNCiAJLyoNCkBAIC00NzUsNyArNDc2LDYgQEAgc3RydWN0IGVk YWNfcmF3X2Vycm9yX2Rlc2Mgew0KIAl1bnNpZ25lZCBsb25nIHN5bmRyb21lOw0KIAljb25zdCBj aGFyICptc2c7DQogCWNvbnN0IGNoYXIgKm90aGVyX2RldGFpbDsNCi0JYm9vbCBlbmFibGVfcGVy X2xheWVyX3JlcG9ydDsNCiB9Ow0KIA0KIC8qIE1FTU9SWSBjb250cm9sbGVyIGluZm9ybWF0aW9u IHN0cnVjdHVyZQ0KQEAgLTU2NSw3ICs1NjUsNiBAQCBzdHJ1Y3QgbWVtX2N0bF9pbmZvIHsNCiAJ ICovDQogCXUzMiBjZV9ub2luZm9fY291bnQsIHVlX25vaW5mb19jb3VudDsNCiAJdTMyIHVlX21j LCBjZV9tYzsNCi0JdTMyICpjZV9wZXJfbGF5ZXJbRURBQ19NQVhfTEFZRVJTXSwgKnVlX3Blcl9s YXllcltFREFDX01BWF9MQVlFUlNdOw0KIA0KIAlzdHJ1Y3QgY29tcGxldGlvbiBjb21wbGV0ZTsN CiANCi0tIA0KMi4yMC4xDQoNCg==