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.1 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,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 8AAB5C04AB3 for ; Wed, 29 May 2019 08:44:31 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 4D1AB21670 for ; Wed, 29 May 2019 08:44:31 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=marvell.com header.i=@marvell.com header.b="PeclCnA6"; dkim=pass (1024-bit key) header.d=marvell.onmicrosoft.com header.i=@marvell.onmicrosoft.com header.b="HQhogKUj" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726189AbfE2Ioa (ORCPT ); Wed, 29 May 2019 04:44:30 -0400 Received: from mx0b-0016f401.pphosted.com ([67.231.156.173]:49482 "EHLO mx0b-0016f401.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726162AbfE2Io3 (ORCPT ); Wed, 29 May 2019 04:44:29 -0400 Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x4T8dpBF017806; Wed, 29 May 2019 01:44:19 -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=wzWksusEaTyX0Xqg/yKi2uWhEhxqWz63CbuF6f9E0Qk=; b=PeclCnA6+pFzsa+zH4bB1fGAKk5ZgZ1pWjiUaboYtN6lhmId/njb+4IA7RQS4NuSTZdh 9dFSnxK4DHxzvZ25BlKQ3D84LR1kJOdr+13YLoFjaxJK0aX1LWDqcuPDaoyUS6GlsPGY IBd9Ib077b+M5DLWbFnjK6+EifMlDMfOLQnGF1f7injmiNdWTnU463NH/a6RxCeoGwsh lAci4PpMfBCZBAE8A/tyld/DXkChgl+49KFhcyRDoHiVt4wGl1RFe3mHs7KWVZQw3YQP YLiMMrEVL8rZO5wf+rpT6DSnxZ67OOvdFVCFaTbd4I9WOGdhFrO4ssWyMrX9rs6fKBqC mw== Received: from sc-exch03.marvell.com ([199.233.58.183]) by mx0b-0016f401.pphosted.com with ESMTP id 2sskp88p4b-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Wed, 29 May 2019 01:44:18 -0700 Received: from SC-EXCH02.marvell.com (10.93.176.82) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Wed, 29 May 2019 01:44:17 -0700 Received: from NAM03-CO1-obe.outbound.protection.outlook.com (104.47.40.59) by SC-EXCH02.marvell.com (10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Wed, 29 May 2019 01:44:17 -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=wzWksusEaTyX0Xqg/yKi2uWhEhxqWz63CbuF6f9E0Qk=; b=HQhogKUjY+mr+uaNLIVZ5gH1uDzxZoQCYoH0dc5L/pFC2TX1/hYgUB0gkA26ebuE3cPPzyiDmW7nYxY4KSHMNsT8OipYQMnaeFbskMsJSo2iNGSLkb5/vFApvMD7G687uQlJ6jrRw4/uR7/tfZvxD71RX3z/TxHe+n5LG461hkU= Received: from MN2PR18MB3408.namprd18.prod.outlook.com (10.255.238.217) by MN2PR18MB3437.namprd18.prod.outlook.com (10.255.239.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1922.20; Wed, 29 May 2019 08:44:15 +0000 Received: from MN2PR18MB3408.namprd18.prod.outlook.com ([fe80::7c9a:f3bf:fe2e:fe4a]) by MN2PR18MB3408.namprd18.prod.outlook.com ([fe80::7c9a:f3bf:fe2e:fe4a%4]) with mapi id 15.20.1922.021; Wed, 29 May 2019 08:44:15 +0000 From: Robert Richter To: Borislav Petkov , Tony Luck , "James Morse" , Mauro Carvalho Chehab CC: "linux-edac@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Robert Richter Subject: [PATCH 05/21] EDAC: Introduce mci_for_each_dimm() iterator Thread-Topic: [PATCH 05/21] EDAC: Introduce mci_for_each_dimm() iterator Thread-Index: AQHVFfqyZ42X6bVw40qQR+81APMGEQ== Date: Wed, 29 May 2019 08:44:15 +0000 Message-ID: <20190529084344.28562-6-rrichter@marvell.com> References: <20190529084344.28562-1-rrichter@marvell.com> In-Reply-To: <20190529084344.28562-1-rrichter@marvell.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: AM6PR01CA0046.eurprd01.prod.exchangelabs.com (2603:10a6:20b:e0::23) 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: [78.54.13.57] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 6d80d6cc-c981-41cc-d3ab-08d6e411d489 x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(2017052603328)(7193020);SRVR:MN2PR18MB3437; x-ms-traffictypediagnostic: MN2PR18MB3437: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:148; x-forefront-prvs: 0052308DC6 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(366004)(346002)(396003)(376002)(39860400002)(136003)(189003)(199004)(8936002)(4326008)(53936002)(50226002)(110136005)(107886003)(68736007)(36756003)(5660300002)(54906003)(11346002)(26005)(186003)(52116002)(2906002)(2616005)(476003)(446003)(6506007)(14454004)(66476007)(25786009)(478600001)(386003)(86362001)(486006)(81166006)(81156014)(8676002)(305945005)(316002)(7736002)(14444005)(256004)(99286004)(76176011)(6512007)(6436002)(73956011)(64756008)(66446008)(66556008)(66066001)(3846002)(66946007)(1076003)(6486002)(102836004)(71190400001)(71200400001)(6116002);DIR:OUT;SFP:1101;SCL:1;SRVR:MN2PR18MB3437;H:MN2PR18MB3408.namprd18.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A: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: YtrkEShsXDpods6VL7CkS3LZzfiT0tv7nBxNTChJTaq7LqLc4D/hSZIlLfHD4OaeBugr3kBuQitKN3eGvYC1cB30+maqYmNOJUQ0s02LhoRrcNI1IapgjZKL/KOJAI+OjAQvABdaOT84BQ2wIfQEgxeSNHCmjwJKgJBc8lZ+w3QlMqDJBD1V9cRESP0x64lw+9US8dBSTtLy/dswkp8n8B6eKGCDUOAMM/PIkTkSLKubVzEDzsv9ISzWOEHRhToLFMHgyQRXZjnDniDs8G3KG3g63vOolglB3FHknzkKU/VBuzzeIrAmJ8r+bV6bjltMOaGe1PqHHwZdVodq7F5OoX+PLDtAegYHGI9lrh/Dv7aMsUGkDobFjgd8VOMhff/0PgodBaj/hR1woRaexK0QJQc46l6JyrLgm4IaW80HCl4= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 6d80d6cc-c981-41cc-d3ab-08d6e411d489 X-MS-Exchange-CrossTenant-originalarrivaltime: 29 May 2019 08:44:15.5446 (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: MN2PR18MB3437 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2019-05-29_05:,, signatures=0 Sender: linux-edac-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-edac@vger.kernel.org TWFrZSBjb2RlIG1vcmUgcmVhZGFibGUgYnkgaW50cm9kdWNpbmcgYSBtY2lfZm9yX2VhY2hfZGlt bSgpIGl0ZXJhdG9yLg0KTm93LCB3ZSBqdXN0IGdldCBhIHBvaW50ZXIgdG8gYSBzdHJ1Y3QgZGlt bV9pbmZvLiBEaXJlY3QgYXJyYXkgYWNjZXNzDQp1c2luZyBhbiBpbmRleCBpcyBubyBsb25nZXIg bmVlZGVkIHRvIGl0ZXJhdGUuDQoNClNpZ25lZC1vZmYtYnk6IFJvYmVydCBSaWNodGVyIDxycmlj aHRlckBtYXJ2ZWxsLmNvbT4NCi0tLQ0KIGRyaXZlcnMvZWRhYy9lZGFjX21jLmMgICAgICAgfCAx OCArKysrKysrKysrLS0tLS0tLS0NCiBkcml2ZXJzL2VkYWMvZWRhY19tY19zeXNmcy5jIHwgMzQg KysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIGRyaXZlcnMvZWRhYy9naGVzX2Vk YWMuYyAgICAgfCAgOCArKysrLS0tLQ0KIGRyaXZlcnMvZWRhYy9pNTEwMF9lZGFjLmMgICAgfCAx MSArKysrKy0tLS0tLQ0KIGluY2x1ZGUvbGludXgvZWRhYy5oICAgICAgICAgfCAgNyArKysrKysr DQogNSBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCAzNyBkZWxldGlvbnMoLSkNCg0K ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZWRhYy9lZGFjX21jLmMgYi9kcml2ZXJzL2VkYWMvZWRhY19t Yy5jDQppbmRleCAwN2VkYmQ4MGFmMDcuLmE2YjM0Y2NjZTNkNCAxMDA2NDQNCi0tLSBhL2RyaXZl cnMvZWRhYy9lZGFjX21jLmMNCisrKyBiL2RyaXZlcnMvZWRhYy9lZGFjX21jLmMNCkBAIC0xNDUs MTUgKzE0NSwxOCBAQCBzdGF0aWMgdm9pZCBlZGFjX21jX2R1bXBfY2hhbm5lbChzdHJ1Y3QgcmFu a19pbmZvICpjaGFuKQ0KIAllZGFjX2RiZyg0LCAiICAgIGNoYW5uZWwtPmRpbW0gPSAlcFxuIiwg Y2hhbi0+ZGltbSk7DQogfQ0KIA0KLXN0YXRpYyB2b2lkIGVkYWNfbWNfZHVtcF9kaW1tKHN0cnVj dCBkaW1tX2luZm8gKmRpbW0sIGludCBudW1iZXIpDQorc3RhdGljIHZvaWQgZWRhY19tY19kdW1w X2RpbW0oc3RydWN0IGRpbW1faW5mbyAqZGltbSkNCiB7DQogCWNoYXIgbG9jYXRpb25bODBdOw0K IA0KKwlpZiAoIWRpbW0tPm5yX3BhZ2VzKQ0KKwkJcmV0dXJuOw0KKw0KIAllZGFjX2RpbW1faW5m b19sb2NhdGlvbihkaW1tLCBsb2NhdGlvbiwgc2l6ZW9mKGxvY2F0aW9uKSk7DQogDQogCWVkYWNf ZGJnKDQsICIlcyVpOiAlc21hcHBlZCBhcyB2aXJ0dWFsIHJvdyAlZCwgY2hhbiAlZFxuIiwNCiAJ CSBkaW1tLT5tY2ktPmNzYmFzZWQgPyAicmFuayIgOiAiZGltbSIsDQotCQkgbnVtYmVyLCBsb2Nh dGlvbiwgZGltbS0+Y3Nyb3csIGRpbW0tPmNzY2hhbm5lbCk7DQorCQkgZGltbS0+aWR4LCBsb2Nh dGlvbiwgZGltbS0+Y3Nyb3csIGRpbW0tPmNzY2hhbm5lbCk7DQogCWVkYWNfZGJnKDQsICIgIGRp bW0gPSAlcFxuIiwgZGltbSk7DQogCWVkYWNfZGJnKDQsICIgIGRpbW0tPmxhYmVsID0gJyVzJ1xu IiwgZGltbS0+bGFiZWwpOw0KIAllZGFjX2RiZyg0LCAiICBkaW1tLT5ucl9wYWdlcyA9IDB4JXhc biIsIGRpbW0tPm5yX3BhZ2VzKTsNCkBAIC03MDMsNiArNzA2LDcgQEAgRVhQT1JUX1NZTUJPTF9H UEwoZWRhY19nZXRfb3duZXIpOw0KIGludCBlZGFjX21jX2FkZF9tY193aXRoX2dyb3VwcyhzdHJ1 Y3QgbWVtX2N0bF9pbmZvICptY2ksDQogCQkJICAgICAgIGNvbnN0IHN0cnVjdCBhdHRyaWJ1dGVf Z3JvdXAgKipncm91cHMpDQogew0KKwlzdHJ1Y3QgZGltbV9pbmZvICpkaW1tOw0KIAlpbnQgcmV0 ID0gLUVJTlZBTDsNCiAJZWRhY19kYmcoMCwgIlxuIik7DQogDQpAQCAtNzI3LDkgKzczMSw4IEBA IGludCBlZGFjX21jX2FkZF9tY193aXRoX2dyb3VwcyhzdHJ1Y3QgbWVtX2N0bF9pbmZvICptY2ks DQogCQkJCWlmIChjc3Jvdy0+Y2hhbm5lbHNbal0tPmRpbW0tPm5yX3BhZ2VzKQ0KIAkJCQkJZWRh Y19tY19kdW1wX2NoYW5uZWwoY3Nyb3ctPmNoYW5uZWxzW2pdKTsNCiAJCX0NCi0JCWZvciAoaSA9 IDA7IGkgPCBtY2ktPnRvdF9kaW1tczsgaSsrKQ0KLQkJCWlmIChtY2ktPmRpbW1zW2ldLT5ucl9w YWdlcykNCi0JCQkJZWRhY19tY19kdW1wX2RpbW0obWNpLT5kaW1tc1tpXSwgaSk7DQorCQltY2lf Zm9yX2VhY2hfZGltbShtY2ksIGRpbW0pDQorCQkJZWRhY19tY19kdW1wX2RpbW0oZGltbSk7DQog CX0NCiAjZW5kaWYNCiAJbXV0ZXhfbG9jaygmbWVtX2N0bHNfbXV0ZXgpOw0KQEAgLTEwODcsNiAr MTA5MCw3IEBAIHZvaWQgZWRhY19tY19oYW5kbGVfZXJyb3IoY29uc3QgZW51bSBod19ldmVudF9t Y19lcnJfdHlwZSB0eXBlLA0KIAkJCSAgY29uc3QgY2hhciAqbXNnLA0KIAkJCSAgY29uc3QgY2hh ciAqb3RoZXJfZGV0YWlsKQ0KIHsNCisJc3RydWN0IGRpbW1faW5mbyAqZGltbTsNCiAJY2hhciAq cDsNCiAJaW50IHJvdyA9IC0xLCBjaGFuID0gLTE7DQogCWludCBwb3NbRURBQ19NQVhfTEFZRVJT XSA9IHsgdG9wX2xheWVyLCBtaWRfbGF5ZXIsIGxvd19sYXllciB9Ow0KQEAgLTExNDcsOSArMTE1 MSw3IEBAIHZvaWQgZWRhY19tY19oYW5kbGVfZXJyb3IoY29uc3QgZW51bSBod19ldmVudF9tY19l cnJfdHlwZSB0eXBlLA0KIAlwID0gZS0+bGFiZWw7DQogCSpwID0gJ1wwJzsNCiANCi0JZm9yIChp ID0gMDsgaSA8IG1jaS0+dG90X2RpbW1zOyBpKyspIHsNCi0JCXN0cnVjdCBkaW1tX2luZm8gKmRp bW0gPSBtY2ktPmRpbW1zW2ldOw0KLQ0KKwltY2lfZm9yX2VhY2hfZGltbShtY2ksIGRpbW0pIHsN CiAJCWlmICh0b3BfbGF5ZXIgPj0gMCAmJiB0b3BfbGF5ZXIgIT0gZGltbS0+bG9jYXRpb25bMF0p DQogCQkJY29udGludWU7DQogCQlpZiAobWlkX2xheWVyID49IDAgJiYgbWlkX2xheWVyICE9IGRp bW0tPmxvY2F0aW9uWzFdKQ0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZWRhYy9lZGFjX21jX3N5c2Zz LmMgYi9kcml2ZXJzL2VkYWMvZWRhY19tY19zeXNmcy5jDQppbmRleCA4YmVlZmE2OTlhNDkuLjc1 Y2JhMDgxMmExNiAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvZWRhYy9lZGFjX21jX3N5c2ZzLmMNCisr KyBiL2RyaXZlcnMvZWRhYy9lZGFjX21jX3N5c2ZzLmMNCkBAIC02MjIsOCArNjIyLDcgQEAgc3Rh dGljIGNvbnN0IHN0cnVjdCBkZXZpY2VfdHlwZSBkaW1tX2F0dHJfdHlwZSA9IHsNCiANCiAvKiBD cmVhdGUgYSBESU1NIG9iamVjdCB1bmRlciBzcGVjaWZlZCBtZW1vcnkgY29udHJvbGxlciBkZXZp Y2UgKi8NCiBzdGF0aWMgaW50IGVkYWNfY3JlYXRlX2RpbW1fb2JqZWN0KHN0cnVjdCBtZW1fY3Rs X2luZm8gKm1jaSwNCi0JCQkJICAgc3RydWN0IGRpbW1faW5mbyAqZGltbSwNCi0JCQkJICAgaW50 IGluZGV4KQ0KKwkJCQkgICBzdHJ1Y3QgZGltbV9pbmZvICpkaW1tKQ0KIHsNCiAJaW50IGVycjsN CiAJZGltbS0+bWNpID0gbWNpOw0KQEAgLTYzMyw5ICs2MzIsOSBAQCBzdGF0aWMgaW50IGVkYWNf Y3JlYXRlX2RpbW1fb2JqZWN0KHN0cnVjdCBtZW1fY3RsX2luZm8gKm1jaSwNCiANCiAJZGltbS0+ ZGV2LnBhcmVudCA9ICZtY2ktPmRldjsNCiAJaWYgKG1jaS0+Y3NiYXNlZCkNCi0JCWRldl9zZXRf bmFtZSgmZGltbS0+ZGV2LCAicmFuayVkIiwgaW5kZXgpOw0KKwkJZGV2X3NldF9uYW1lKCZkaW1t LT5kZXYsICJyYW5rJWQiLCBkaW1tLT5pZHgpOw0KIAllbHNlDQotCQlkZXZfc2V0X25hbWUoJmRp bW0tPmRldiwgImRpbW0lZCIsIGluZGV4KTsNCisJCWRldl9zZXRfbmFtZSgmZGltbS0+ZGV2LCAi ZGltbSVkIiwgZGltbS0+aWR4KTsNCiAJZGV2X3NldF9kcnZkYXRhKCZkaW1tLT5kZXYsIGRpbW0p Ow0KIAlwbV9ydW50aW1lX2ZvcmJpZCgmbWNpLT5kZXYpOw0KIA0KQEAgLTkwOSw3ICs5MDgsOCBA QCBzdGF0aWMgY29uc3Qgc3RydWN0IGRldmljZV90eXBlIG1jaV9hdHRyX3R5cGUgPSB7DQogaW50 IGVkYWNfY3JlYXRlX3N5c2ZzX21jaV9kZXZpY2Uoc3RydWN0IG1lbV9jdGxfaW5mbyAqbWNpLA0K IAkJCQkgY29uc3Qgc3RydWN0IGF0dHJpYnV0ZV9ncm91cCAqKmdyb3VwcykNCiB7DQotCWludCBp LCBlcnI7DQorCXN0cnVjdCBkaW1tX2luZm8gKmRpbW07DQorCWludCBlcnI7DQogDQogCS8qIGdl dCB0aGUgL3N5cy9kZXZpY2VzL3N5c3RlbS9lZGFjIHN1YnN5cyByZWZlcmVuY2UgKi8NCiAJbWNp LT5kZXYudHlwZSA9ICZtY2lfYXR0cl90eXBlOw0KQEAgLTkzMiwxNCArOTMyLDEzIEBAIGludCBl ZGFjX2NyZWF0ZV9zeXNmc19tY2lfZGV2aWNlKHN0cnVjdCBtZW1fY3RsX2luZm8gKm1jaSwNCiAJ LyoNCiAJICogQ3JlYXRlIHRoZSBkaW1tL3JhbmsgZGV2aWNlcw0KIAkgKi8NCi0JZm9yIChpID0g MDsgaSA8IG1jaS0+dG90X2RpbW1zOyBpKyspIHsNCi0JCXN0cnVjdCBkaW1tX2luZm8gKmRpbW0g PSBtY2ktPmRpbW1zW2ldOw0KKwltY2lfZm9yX2VhY2hfZGltbShtY2ksIGRpbW0pIHsNCiAJCS8q IE9ubHkgZXhwb3NlIHBvcHVsYXRlZCBESU1NcyAqLw0KIAkJaWYgKCFkaW1tLT5ucl9wYWdlcykN CiAJCQljb250aW51ZTsNCiANCiAjaWZkZWYgQ09ORklHX0VEQUNfREVCVUcNCi0JCWVkYWNfZGJn KDEsICJjcmVhdGluZyBkaW1tJWQsIGxvY2F0ZWQgYXQgIiwgaSk7DQorCQllZGFjX2RiZygxLCAi Y3JlYXRpbmcgZGltbSVkLCBsb2NhdGVkIGF0ICIsIGRpbW0tPmlkeCk7DQogCQlpZiAoZWRhY19k ZWJ1Z19sZXZlbCA+PSAxKSB7DQogCQkJaW50IGxheTsNCiAJCQlmb3IgKGxheSA9IDA7IGxheSA8 IG1jaS0+bl9sYXllcnM7IGxheSsrKQ0KQEAgLTk0OSw5ICs5NDgsMTAgQEAgaW50IGVkYWNfY3Jl YXRlX3N5c2ZzX21jaV9kZXZpY2Uoc3RydWN0IG1lbV9jdGxfaW5mbyAqbWNpLA0KIAkJCXByaW50 ayhLRVJOX0NPTlQgIlxuIik7DQogCQl9DQogI2VuZGlmDQotCQllcnIgPSBlZGFjX2NyZWF0ZV9k aW1tX29iamVjdChtY2ksIGRpbW0sIGkpOw0KKwkJZXJyID0gZWRhY19jcmVhdGVfZGltbV9vYmpl Y3QobWNpLCBkaW1tKTsNCiAJCWlmIChlcnIpIHsNCi0JCQllZGFjX2RiZygxLCAiZmFpbHVyZTog Y3JlYXRlIGRpbW0gJWQgb2JqXG4iLCBpKTsNCisJCQllZGFjX2RiZygxLCAiZmFpbHVyZTogY3Jl YXRlIGRpbW0gJWQgb2JqXG4iLA0KKwkJCQlkaW1tLT5pZHgpOw0KIAkJCWdvdG8gZmFpbF91bnJl Z2lzdGVyX2RpbW07DQogCQl9DQogCX0NCkBAIC05NjYsMTIgKzk2Niw5IEBAIGludCBlZGFjX2Ny ZWF0ZV9zeXNmc19tY2lfZGV2aWNlKHN0cnVjdCBtZW1fY3RsX2luZm8gKm1jaSwNCiAJcmV0dXJu IDA7DQogDQogZmFpbF91bnJlZ2lzdGVyX2RpbW06DQotCWZvciAoaS0tOyBpID49IDA7IGktLSkg ew0KLQkJc3RydWN0IGRpbW1faW5mbyAqZGltbSA9IG1jaS0+ZGltbXNbaV07DQotCQlpZiAoIWRp bW0tPm5yX3BhZ2VzKQ0KLQkJCWNvbnRpbnVlOw0KLQ0KLQkJZGV2aWNlX3VucmVnaXN0ZXIoJmRp bW0tPmRldik7DQorCW1jaV9mb3JfZWFjaF9kaW1tKG1jaSwgZGltbSkgew0KKwkJaWYgKGRldmlj ZV9pc19yZWdpc3RlcmVkKCZkaW1tLT5kZXYpKQ0KKwkJCWRldmljZV91bnJlZ2lzdGVyKCZkaW1t LT5kZXYpOw0KIAl9DQogCWRldmljZV91bnJlZ2lzdGVyKCZtY2ktPmRldik7DQogDQpAQCAtOTgz LDcgKzk4MCw3IEBAIGludCBlZGFjX2NyZWF0ZV9zeXNmc19tY2lfZGV2aWNlKHN0cnVjdCBtZW1f Y3RsX2luZm8gKm1jaSwNCiAgKi8NCiB2b2lkIGVkYWNfcmVtb3ZlX3N5c2ZzX21jaV9kZXZpY2Uo c3RydWN0IG1lbV9jdGxfaW5mbyAqbWNpKQ0KIHsNCi0JaW50IGk7DQorCXN0cnVjdCBkaW1tX2lu Zm8gKmRpbW07DQogDQogCWVkYWNfZGJnKDAsICJcbiIpOw0KIA0KQEAgLTk5NCw4ICs5OTEsNyBA QCB2b2lkIGVkYWNfcmVtb3ZlX3N5c2ZzX21jaV9kZXZpY2Uoc3RydWN0IG1lbV9jdGxfaW5mbyAq bWNpKQ0KIAllZGFjX2RlbGV0ZV9jc3Jvd19vYmplY3RzKG1jaSk7DQogI2VuZGlmDQogDQotCWZv ciAoaSA9IDA7IGkgPCBtY2ktPnRvdF9kaW1tczsgaSsrKSB7DQotCQlzdHJ1Y3QgZGltbV9pbmZv ICpkaW1tID0gbWNpLT5kaW1tc1tpXTsNCisJbWNpX2Zvcl9lYWNoX2RpbW0obWNpLCBkaW1tKSB7 DQogCQlpZiAoZGltbS0+bnJfcGFnZXMgPT0gMCkNCiAJCQljb250aW51ZTsNCiAJCWVkYWNfZGJn KDAsICJyZW1vdmluZyBkZXZpY2UgJXNcbiIsIGRldl9uYW1lKCZkaW1tLT5kZXYpKTsNCmRpZmYg LS1naXQgYS9kcml2ZXJzL2VkYWMvZ2hlc19lZGFjLmMgYi9kcml2ZXJzL2VkYWMvZ2hlc19lZGFj LmMNCmluZGV4IDQyYWZhMjYwNGRiMy4uZmU0NTM5MmYwYzNlIDEwMDY0NA0KLS0tIGEvZHJpdmVy cy9lZGFjL2doZXNfZWRhYy5jDQorKysgYi9kcml2ZXJzL2VkYWMvZ2hlc19lZGFjLmMNCkBAIC04 NCwxMSArODQsMTEgQEAgc3RhdGljIHZvaWQgZ2hlc19lZGFjX2NvdW50X2RpbW1zKGNvbnN0IHN0 cnVjdCBkbWlfaGVhZGVyICpkaCwgdm9pZCAqYXJnKQ0KIHN0YXRpYyBpbnQgZ2V0X2RpbW1fc21i aW9zX2luZGV4KHUxNiBoYW5kbGUpDQogew0KIAlzdHJ1Y3QgbWVtX2N0bF9pbmZvICptY2kgPSBn aGVzX3B2dC0+bWNpOw0KLQlpbnQgaTsNCisJc3RydWN0IGRpbW1faW5mbyAqZGltbTsNCiANCi0J Zm9yIChpID0gMDsgaSA8IG1jaS0+dG90X2RpbW1zOyBpKyspIHsNCi0JCWlmIChtY2ktPmRpbW1z W2ldLT5zbWJpb3NfaGFuZGxlID09IGhhbmRsZSkNCi0JCQlyZXR1cm4gaTsNCisJbWNpX2Zvcl9l YWNoX2RpbW0obWNpLCBkaW1tKSB7DQorCQlpZiAoZGltbS0+c21iaW9zX2hhbmRsZSA9PSBoYW5k bGUpDQorCQkJcmV0dXJuIGRpbW0tPmlkeDsNCiAJfQ0KIAlyZXR1cm4gLTE7DQogfQ0KZGlmZiAt LWdpdCBhL2RyaXZlcnMvZWRhYy9pNTEwMF9lZGFjLmMgYi9kcml2ZXJzL2VkYWMvaTUxMDBfZWRh Yy5jDQppbmRleCAzOWJhN2YyNDE0YWUuLjdlYzQyYjI2YTcxNiAxMDA2NDQNCi0tLSBhL2RyaXZl cnMvZWRhYy9pNTEwMF9lZGFjLmMNCisrKyBiL2RyaXZlcnMvZWRhYy9pNTEwMF9lZGFjLmMNCkBA IC04NDYsMTQgKzg0NiwxMyBAQCBzdGF0aWMgdm9pZCBpNTEwMF9pbml0X2ludGVybGVhdmluZyhz dHJ1Y3QgcGNpX2RldiAqcGRldiwNCiANCiBzdGF0aWMgdm9pZCBpNTEwMF9pbml0X2Nzcm93cyhz dHJ1Y3QgbWVtX2N0bF9pbmZvICptY2kpDQogew0KLQlpbnQgaTsNCiAJc3RydWN0IGk1MTAwX3By aXYgKnByaXYgPSBtY2ktPnB2dF9pbmZvOw0KKwlzdHJ1Y3QgZGltbV9pbmZvICpkaW1tOw0KIA0K LQlmb3IgKGkgPSAwOyBpIDwgbWNpLT50b3RfZGltbXM7IGkrKykgew0KLQkJc3RydWN0IGRpbW1f aW5mbyAqZGltbTsNCi0JCWNvbnN0IHVuc2lnbmVkIGxvbmcgbnBhZ2VzID0gaTUxMDBfbnBhZ2Vz KG1jaSwgaSk7DQotCQljb25zdCB1bnNpZ25lZCBjaGFuID0gaTUxMDBfY3Nyb3dfdG9fY2hhbiht Y2ksIGkpOw0KLQkJY29uc3QgdW5zaWduZWQgcmFuayA9IGk1MTAwX2Nzcm93X3RvX3JhbmsobWNp LCBpKTsNCisJbWNpX2Zvcl9lYWNoX2RpbW0obWNpLCBkaW1tKSB7DQorCQljb25zdCB1bnNpZ25l ZCBsb25nIG5wYWdlcyA9IGk1MTAwX25wYWdlcyhtY2ksIGRpbW0tPmlkeCk7DQorCQljb25zdCB1 bnNpZ25lZCBjaGFuID0gaTUxMDBfY3Nyb3dfdG9fY2hhbihtY2ksIGRpbW0tPmlkeCk7DQorCQlj b25zdCB1bnNpZ25lZCByYW5rID0gaTUxMDBfY3Nyb3dfdG9fcmFuayhtY2ksIGRpbW0tPmlkeCk7 DQogDQogCQlpZiAoIW5wYWdlcykNCiAJCQljb250aW51ZTsNCmRpZmYgLS1naXQgYS9pbmNsdWRl L2xpbnV4L2VkYWMuaCBiL2luY2x1ZGUvbGludXgvZWRhYy5oDQppbmRleCAyZWU5Yjg1OThhZTAu LjIwYTA0ZjQ4NjE2YyAxMDA2NDQNCi0tLSBhL2luY2x1ZGUvbGludXgvZWRhYy5oDQorKysgYi9p bmNsdWRlL2xpbnV4L2VkYWMuaA0KQEAgLTU5OSw2ICs1OTksMTMgQEAgc3RydWN0IG1lbV9jdGxf aW5mbyB7DQogCXUxNiBmYWtlX2luamVjdF9jb3VudDsNCiB9Ow0KIA0KKyNkZWZpbmUgbWNpX2Zv cl9lYWNoX2RpbW0obWNpLCBkaW1tKQkJCVwNCisJZm9yICgoZGltbSkgPSAobWNpKS0+ZGltbXNb MF07CQkJXA0KKwkgICAgIChkaW1tKTsJCQkJCVwNCisJICAgICAoZGltbSkgPSAoZGltbSktPmlk eCA8IChtY2kpLT50b3RfZGltbXMJXA0KKwkJICAgICA/IChtY2kpLT5kaW1tc1soZGltbSktPmlk eCArIDFdCVwNCisJCSAgICAgOiBOVUxMKQ0KKw0KIC8qKg0KICAqIGVkYWNfZ2V0X2RpbW1fYnlf aW5kZXggLSBHZXQgRElNTSBpbmZvIGZyb20gYSBtZW1vcnkgY29udHJvbGxlcg0KICAqICAgICAg ICAgICAgICAgICAgICAgICAgICBnaXZlbiBieSBhbiBpbmRleA0KLS0gDQoyLjIwLjENCg0K