Received: by 2002:a25:f815:0:0:0:0:0 with SMTP id u21csp2540033ybd; Mon, 24 Jun 2019 08:10:03 -0700 (PDT) X-Google-Smtp-Source: APXvYqwhrjZaQ9AxglETIquq8NDr6FP/aYyW0gumIEWXxlrEagBUZDu2VloBrBjvOYeTEO2Z0P94 X-Received: by 2002:a63:fd0d:: with SMTP id d13mr34378647pgh.423.1561389003229; Mon, 24 Jun 2019 08:10:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1561389003; cv=none; d=google.com; s=arc-20160816; b=YgTytxoqr4YDJGL04N3gEJdlams2Vre36DkbLXEgzh2QWheIl8zGU5VbgyujbV9mKD s9PQpzev3vcxSrjGuMFHiNmCJyOdRHZ+KEB/4TfAF5wtBPEWFGUmYGhZMdONSQ2ECwTi n7IFRPKfeAFeWDRayyUcjQ0DrEtsF3VO+Ih9zyLrE/spAb/Os3m0/IDN+RkqAP83d6B/ B1TOwU5ha9IaoDGntGiSPOOPbDRxuJIxH/YvHscz9V+QraNDy0ht/G9Hyx5MmfE/BZbw 0LsCSVwNQ9Kpvuc+SIVsCO8XM3htRcKEsRob+qznWldy+NdIwgeRzGPsZ4RswsDNZU+m /k1w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:content-transfer-encoding :content-language:accept-language:in-reply-to:references:message-id :date:thread-index:thread-topic:subject:cc:to:from:dkim-signature :dkim-signature; bh=4OEMZvb8Lzhd7nbkHxlbYtcKV2x+fbwoOs0MM31fHPM=; b=A+/2cWg3w7YM0loMAFkLHhmucX1Y7aerZE8IrZc6c8MFfFHMi6yUd5Igrp9XQYJyZv 1hZgr1LooD+eXJh1lwiq/dURkfM3hCJrqpZgXTmjAilK6bmmQZipvr0uy2IyhmFckWJ6 Gu/nuy5TVe71LsHV/Qkx88k3+LVcbjqHWoJYTqFL+4NESEQKeBIBC9rxHgbKZjECqnJa tOodxzk++FXqSY/HHNl6n/nWs+n0446kgpXyTMeR+bixur904Kj8sQi/E6yvEHmKaimk ESewHeyjR6B5zgmzdIUg3ysCeZRl7CVvZpPBZg1gVEAMFeG55z+r/HcOJoSwKEysS2Zq iYrQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@marvell.com header.s=pfpt0818 header.b=SzXJc5Iy; dkim=pass header.i=@marvell.onmicrosoft.com header.s=selector2-marvell-onmicrosoft-com header.b=GXGAiGzu; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=marvell.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x18si11168988pjq.71.2019.06.24.08.09.47; Mon, 24 Jun 2019 08:10:03 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@marvell.com header.s=pfpt0818 header.b=SzXJc5Iy; dkim=pass header.i=@marvell.onmicrosoft.com header.s=selector2-marvell-onmicrosoft-com header.b=GXGAiGzu; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=marvell.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730600AbfFXPJa (ORCPT + 99 others); Mon, 24 Jun 2019 11:09:30 -0400 Received: from mx0b-0016f401.pphosted.com ([67.231.156.173]:32756 "EHLO mx0b-0016f401.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729903AbfFXPJV (ORCPT ); Mon, 24 Jun 2019 11:09:21 -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 x5OF8Eah025899; Mon, 24 Jun 2019 08:09:14 -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=4OEMZvb8Lzhd7nbkHxlbYtcKV2x+fbwoOs0MM31fHPM=; b=SzXJc5Iynt07gSc9jCjzie6sgET9jj6EVDnkqV5mU3vWOWK4oYXA6XLrSWJAXm4hWjBw p689tgpNKMFHNt+i/I0/WDukvES5YsICu/lOOQziirhuoFR55LZCujnKz0dEwi9dnrRp j5rEGio1vbXSsvZtAIij9cSUis+nfWpfphOvdXqb8ScAgwSEoApllE63g5dnYw867ofu vQsYt4RlpYp+Sp2+Eh9auLH7dGq+hCIjy+3L8k0dyO4fiGB9/e7bbt9ZX7jgE0c6YeSX vfXpkiYDOrnuHT9P1z94TChv1TVnhxYo0NDwJneWPdEHAfVfZa1ubRPLKEn7789KbCj6 8w== Received: from sc-exch03.marvell.com ([199.233.58.183]) by mx0b-0016f401.pphosted.com with ESMTP id 2t9kujf7s1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 24 Jun 2019 08:09:14 -0700 Received: from SC-EXCH04.marvell.com (10.93.176.84) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Mon, 24 Jun 2019 08:09:12 -0700 Received: from NAM03-BY2-obe.outbound.protection.outlook.com (104.47.42.53) by SC-EXCH04.marvell.com (10.93.176.84) with Microsoft SMTP Server (TLS) id 15.0.1367.3 via Frontend Transport; Mon, 24 Jun 2019 08:09:12 -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=4OEMZvb8Lzhd7nbkHxlbYtcKV2x+fbwoOs0MM31fHPM=; b=GXGAiGzux6bHrVkHdLxCIhdJyxYx660FfI/skiFAJulxadE32GL7pq3+NiyaVcIMmTVN2/0aErFZE92AAeJTdWSJvH19iaWaniIc54HLZa7sJtmliR/t6w+FLsM7kS9SF0z7r8ApqDkq6SnZeyinVq3P+PqnoD6lZON8fMbEJHo= 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:11 +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:11 +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 08/24] EDAC: Introduce mci_for_each_dimm() iterator Thread-Topic: [PATCH v2 08/24] EDAC: Introduce mci_for_each_dimm() iterator Thread-Index: AQHVKp7HblTk+aCg90ebZ91+8B0kzw== Date: Mon, 24 Jun 2019 15:09:11 +0000 Message-ID: <20190624150758.6695-9-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: 6def1f41-8444-4e5d-141c-08d6f8b5e98c 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:148; 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)(8676002)(25786009)(5660300002)(8936002)(305945005)(7736002)(4326008)(1076003)(186003)(6116002)(14454004)(476003)(486006)(2616005)(11346002)(256004)(14444005)(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: /I/q1yPT92DWSX6kTI8GN+lZkxGmIAcurMoZh9rszKiY1puH+FLCw9ymDEq2uCUBEFS6YcjUHwDwp/376OKA5zznMZxVo3mNNBjLsXJcs3MoQR/IsbaJMyXDFKhaI0a/3JpRIesnRZHXf/RdnU1DjUBUiPvWdMPrTD5SoC9gqg7mMy9X0Vext2b7BrLSeRDzOQ1/EDCVeMmjno70JR6J4eVmSeppn2F0j309Cv4a89hGByQdalbXYFH4USazIPpQzYGUMAQ95kxlqFpPxxVuyjOlGu2T7/KAFz53DJdlL/yfTeNfNan46PNu5hFX0v/DknL/JjAltoc+Hz1IhajkeUNNxE8E2G3swmrNasqA7pCB+R6ePAU3S9M6QFJpUH/OGpx4sKvXx6lohdMKZWMNhKn31qhJmM+Ue4CdYQQbSU4= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 6def1f41-8444-4e5d-141c-08d6f8b5e98c X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Jun 2019 15:09:11.6011 (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 TWFrZSBjb2RlIG1vcmUgcmVhZGFibGUgYnkgaW50cm9kdWNpbmcgYSBtY2lfZm9yX2VhY2hfZGlt bSgpIGl0ZXJhdG9yLg0KTm93LCB3ZSBqdXN0IGdldCBhIHBvaW50ZXIgdG8gYSBzdHJ1Y3QgZGlt bV9pbmZvLiBEaXJlY3QgYXJyYXkgYWNjZXNzDQp1c2luZyBhbiBpbmRleCBpcyBubyBsb25nZXIg bmVlZGVkIHRvIGl0ZXJhdGUuDQoNClNpZ25lZC1vZmYtYnk6IFJvYmVydCBSaWNodGVyIDxycmlj aHRlckBtYXJ2ZWxsLmNvbT4NCi0tLQ0KIGRyaXZlcnMvZWRhYy9lZGFjX21jLmMgICAgICAgfCAx OCArKysrKysrKysrLS0tLS0tLS0NCiBkcml2ZXJzL2VkYWMvZWRhY19tY19zeXNmcy5jIHwgMzQg KysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIGRyaXZlcnMvZWRhYy9naGVzX2Vk YWMuYyAgICAgfCAgOCArKysrLS0tLQ0KIGRyaXZlcnMvZWRhYy9pNTEwMF9lZGFjLmMgICAgfCAx MSArKysrKy0tLS0tLQ0KIGluY2x1ZGUvbGludXgvZWRhYy5oICAgICAgICAgfCAgNyArKysrKysr DQogNSBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCAzNyBkZWxldGlvbnMoLSkNCg0K ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZWRhYy9lZGFjX21jLmMgYi9kcml2ZXJzL2VkYWMvZWRhY19t Yy5jDQppbmRleCBjNDRiYzgzZTg1MDIuLjI3Mjc3Y2E0NmFiMyAxMDA2NDQNCi0tLSBhL2RyaXZl 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 CX0NCiAjZW5kaWYNCiAJbXV0ZXhfbG9jaygmbWVtX2N0bHNfbXV0ZXgpOw0KQEAgLTExMDQsNiAr MTEwNyw3IEBAIHZvaWQgZWRhY19tY19oYW5kbGVfZXJyb3IoY29uc3QgZW51bSBod19ldmVudF9t Y19lcnJfdHlwZSB0eXBlLA0KIAkJCSAgY29uc3QgY2hhciAqbXNnLA0KIAkJCSAgY29uc3QgY2hh ciAqb3RoZXJfZGV0YWlsKQ0KIHsNCisJc3RydWN0IGRpbW1faW5mbyAqZGltbTsNCiAJY2hhciAq cDsNCiAJaW50IHJvdyA9IC0xLCBjaGFuID0gLTE7DQogCWludCBwb3NbRURBQ19NQVhfTEFZRVJT XSA9IHsgdG9wX2xheWVyLCBtaWRfbGF5ZXIsIGxvd19sYXllciB9Ow0KQEAgLTExNjMsOSArMTE2 Nyw3IEBAIHZvaWQgZWRhY19tY19oYW5kbGVfZXJyb3IoY29uc3QgZW51bSBod19ldmVudF9tY19l cnJfdHlwZSB0eXBlLA0KIAlwID0gZS0+bGFiZWw7DQogCSpwID0gJ1wwJzsNCiANCi0JZm9yIChp ID0gMDsgaSA8IG1jaS0+dG90X2RpbW1zOyBpKyspIHsNCi0JCXN0cnVjdCBkaW1tX2luZm8gKmRp bW0gPSBtY2ktPmRpbW1zW2ldOw0KLQ0KKwltY2lfZm9yX2VhY2hfZGltbShtY2ksIGRpbW0pIHsN CiAJCWlmICh0b3BfbGF5ZXIgPj0gMCAmJiB0b3BfbGF5ZXIgIT0gZGltbS0+bG9jYXRpb25bMF0p DQogCQkJY29udGludWU7DQogCQlpZiAobWlkX2xheWVyID49IDAgJiYgbWlkX2xheWVyICE9IGRp bW0tPmxvY2F0aW9uWzFdKQ0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvZWRhYy9lZGFjX21jX3N5c2Zz LmMgYi9kcml2ZXJzL2VkYWMvZWRhY19tY19zeXNmcy5jDQppbmRleCBhNjllOTkyMDZhNmYuLjRk MTVjODhhNTJjZCAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvZWRhYy9lZGFjX21jX3N5c2ZzLmMNCisr KyBiL2RyaXZlcnMvZWRhYy9lZGFjX21jX3N5c2ZzLmMNCkBAIC02MjMsOCArNjIzLDcgQEAgc3Rh dGljIGNvbnN0IHN0cnVjdCBkZXZpY2VfdHlwZSBkaW1tX2F0dHJfdHlwZSA9IHsNCiANCiAvKiBD cmVhdGUgYSBESU1NIG9iamVjdCB1bmRlciBzcGVjaWZlZCBtZW1vcnkgY29udHJvbGxlciBkZXZp Y2UgKi8NCiBzdGF0aWMgaW50IGVkYWNfY3JlYXRlX2RpbW1fb2JqZWN0KHN0cnVjdCBtZW1fY3Rs X2luZm8gKm1jaSwNCi0JCQkJICAgc3RydWN0IGRpbW1faW5mbyAqZGltbSwNCi0JCQkJICAgaW50 IGluZGV4KQ0KKwkJCQkgICBzdHJ1Y3QgZGltbV9pbmZvICpkaW1tKQ0KIHsNCiAJaW50IGVycjsN CiAJZGltbS0+bWNpID0gbWNpOw0KQEAgLTYzNCw5ICs2MzMsOSBAQCBzdGF0aWMgaW50IGVkYWNf Y3JlYXRlX2RpbW1fb2JqZWN0KHN0cnVjdCBtZW1fY3RsX2luZm8gKm1jaSwNCiANCiAJZGltbS0+ ZGV2LnBhcmVudCA9ICZtY2ktPmRldjsNCiAJaWYgKG1jaS0+Y3NiYXNlZCkNCi0JCWRldl9zZXRf bmFtZSgmZGltbS0+ZGV2LCAicmFuayVkIiwgaW5kZXgpOw0KKwkJZGV2X3NldF9uYW1lKCZkaW1t LT5kZXYsICJyYW5rJWQiLCBkaW1tLT5pZHgpOw0KIAllbHNlDQotCQlkZXZfc2V0X25hbWUoJmRp bW0tPmRldiwgImRpbW0lZCIsIGluZGV4KTsNCisJCWRldl9zZXRfbmFtZSgmZGltbS0+ZGV2LCAi ZGltbSVkIiwgZGltbS0+aWR4KTsNCiAJZGV2X3NldF9kcnZkYXRhKCZkaW1tLT5kZXYsIGRpbW0p Ow0KIAlwbV9ydW50aW1lX2ZvcmJpZCgmbWNpLT5kZXYpOw0KIA0KQEAgLTkxMCw3ICs5MDksOCBA QCBzdGF0aWMgY29uc3Qgc3RydWN0IGRldmljZV90eXBlIG1jaV9hdHRyX3R5cGUgPSB7DQogaW50 IGVkYWNfY3JlYXRlX3N5c2ZzX21jaV9kZXZpY2Uoc3RydWN0IG1lbV9jdGxfaW5mbyAqbWNpLA0K IAkJCQkgY29uc3Qgc3RydWN0IGF0dHJpYnV0ZV9ncm91cCAqKmdyb3VwcykNCiB7DQotCWludCBp LCBlcnI7DQorCXN0cnVjdCBkaW1tX2luZm8gKmRpbW07DQorCWludCBlcnI7DQogDQogCS8qIGdl dCB0aGUgL3N5cy9kZXZpY2VzL3N5c3RlbS9lZGFjIHN1YnN5cyByZWZlcmVuY2UgKi8NCiAJbWNp LT5kZXYudHlwZSA9ICZtY2lfYXR0cl90eXBlOw0KQEAgLTkzMywxNCArOTMzLDEzIEBAIGludCBl ZGFjX2NyZWF0ZV9zeXNmc19tY2lfZGV2aWNlKHN0cnVjdCBtZW1fY3RsX2luZm8gKm1jaSwNCiAJ LyoNCiAJICogQ3JlYXRlIHRoZSBkaW1tL3JhbmsgZGV2aWNlcw0KIAkgKi8NCi0JZm9yIChpID0g MDsgaSA8IG1jaS0+dG90X2RpbW1zOyBpKyspIHsNCi0JCXN0cnVjdCBkaW1tX2luZm8gKmRpbW0g PSBtY2ktPmRpbW1zW2ldOw0KKwltY2lfZm9yX2VhY2hfZGltbShtY2ksIGRpbW0pIHsNCiAJCS8q IE9ubHkgZXhwb3NlIHBvcHVsYXRlZCBESU1NcyAqLw0KIAkJaWYgKCFkaW1tLT5ucl9wYWdlcykN CiAJCQljb250aW51ZTsNCiANCiAjaWZkZWYgQ09ORklHX0VEQUNfREVCVUcNCi0JCWVkYWNfZGJn KDEsICJjcmVhdGluZyBkaW1tJWQsIGxvY2F0ZWQgYXQgIiwgaSk7DQorCQllZGFjX2RiZygxLCAi Y3JlYXRpbmcgZGltbSVkLCBsb2NhdGVkIGF0ICIsIGRpbW0tPmlkeCk7DQogCQlpZiAoZWRhY19k ZWJ1Z19sZXZlbCA+PSAxKSB7DQogCQkJaW50IGxheTsNCiAJCQlmb3IgKGxheSA9IDA7IGxheSA8 IG1jaS0+bl9sYXllcnM7IGxheSsrKQ0KQEAgLTk1MCw5ICs5NDksMTAgQEAgaW50IGVkYWNfY3Jl YXRlX3N5c2ZzX21jaV9kZXZpY2Uoc3RydWN0IG1lbV9jdGxfaW5mbyAqbWNpLA0KIAkJCXByaW50 ayhLRVJOX0NPTlQgIlxuIik7DQogCQl9DQogI2VuZGlmDQotCQllcnIgPSBlZGFjX2NyZWF0ZV9k aW1tX29iamVjdChtY2ksIGRpbW0sIGkpOw0KKwkJZXJyID0gZWRhY19jcmVhdGVfZGltbV9vYmpl Y3QobWNpLCBkaW1tKTsNCiAJCWlmIChlcnIpIHsNCi0JCQllZGFjX2RiZygxLCAiZmFpbHVyZTog Y3JlYXRlIGRpbW0gJWQgb2JqXG4iLCBpKTsNCisJCQllZGFjX2RiZygxLCAiZmFpbHVyZTogY3Jl YXRlIGRpbW0gJWQgb2JqXG4iLA0KKwkJCQlkaW1tLT5pZHgpOw0KIAkJCWdvdG8gZmFpbF91bnJl Z2lzdGVyX2RpbW07DQogCQl9DQogCX0NCkBAIC05NjcsMTIgKzk2Nyw5IEBAIGludCBlZGFjX2Ny ZWF0ZV9zeXNmc19tY2lfZGV2aWNlKHN0cnVjdCBtZW1fY3RsX2luZm8gKm1jaSwNCiAJcmV0dXJu IDA7DQogDQogZmFpbF91bnJlZ2lzdGVyX2RpbW06DQotCWZvciAoaS0tOyBpID49IDA7IGktLSkg ew0KLQkJc3RydWN0IGRpbW1faW5mbyAqZGltbSA9IG1jaS0+ZGltbXNbaV07DQotCQlpZiAoIWRp bW0tPm5yX3BhZ2VzKQ0KLQkJCWNvbnRpbnVlOw0KLQ0KLQkJZGV2aWNlX3VucmVnaXN0ZXIoJmRp bW0tPmRldik7DQorCW1jaV9mb3JfZWFjaF9kaW1tKG1jaSwgZGltbSkgew0KKwkJaWYgKGRldmlj ZV9pc19yZWdpc3RlcmVkKCZkaW1tLT5kZXYpKQ0KKwkJCWRldmljZV91bnJlZ2lzdGVyKCZkaW1t LT5kZXYpOw0KIAl9DQogCWRldmljZV91bnJlZ2lzdGVyKCZtY2ktPmRldik7DQogDQpAQCAtOTg0 LDcgKzk4MSw3IEBAIGludCBlZGFjX2NyZWF0ZV9zeXNmc19tY2lfZGV2aWNlKHN0cnVjdCBtZW1f Y3RsX2luZm8gKm1jaSwNCiAgKi8NCiB2b2lkIGVkYWNfcmVtb3ZlX3N5c2ZzX21jaV9kZXZpY2Uo c3RydWN0IG1lbV9jdGxfaW5mbyAqbWNpKQ0KIHsNCi0JaW50IGk7DQorCXN0cnVjdCBkaW1tX2lu Zm8gKmRpbW07DQogDQogCWVkYWNfZGJnKDAsICJcbiIpOw0KIA0KQEAgLTk5NSw4ICs5OTIsNyBA QCB2b2lkIGVkYWNfcmVtb3ZlX3N5c2ZzX21jaV9kZXZpY2Uoc3RydWN0IG1lbV9jdGxfaW5mbyAq bWNpKQ0KIAllZGFjX2RlbGV0ZV9jc3Jvd19vYmplY3RzKG1jaSk7DQogI2VuZGlmDQogDQotCWZv ciAoaSA9IDA7IGkgPCBtY2ktPnRvdF9kaW1tczsgaSsrKSB7DQotCQlzdHJ1Y3QgZGltbV9pbmZv ICpkaW1tID0gbWNpLT5kaW1tc1tpXTsNCisJbWNpX2Zvcl9lYWNoX2RpbW0obWNpLCBkaW1tKSB7 DQogCQlpZiAoZGltbS0+bnJfcGFnZXMgPT0gMCkNCiAJCQljb250aW51ZTsNCiAJCWVkYWNfZGJn KDAsICJyZW1vdmluZyBkZXZpY2UgJXNcbiIsIGRldl9uYW1lKCZkaW1tLT5kZXYpKTsNCmRpZmYg LS1naXQgYS9kcml2ZXJzL2VkYWMvZ2hlc19lZGFjLmMgYi9kcml2ZXJzL2VkYWMvZ2hlc19lZGFj LmMNCmluZGV4IDgwNTBmOTU3N2ZlNi4uNzJlNzVlYTU1MjZjIDEwMDY0NA0KLS0tIGEvZHJpdmVy cy9lZGFjL2doZXNfZWRhYy5jDQorKysgYi9kcml2ZXJzL2VkYWMvZ2hlc19lZGFjLmMNCkBAIC04 MSwxMSArODEsMTEgQEAgc3RhdGljIHZvaWQgZ2hlc19lZGFjX2NvdW50X2RpbW1zKGNvbnN0IHN0 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