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 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 6B945C38A2D for ; Wed, 26 Oct 2022 07:01:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:From:References:Cc:To:Subject: MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=NrgwTZm57q/6J6jW7gAgoAHdmsrGFcYR46kwTgcb4Hc=; b=T6EZ20fsz1kKx5 HbaqVSla/VrwXLULO497/qwocMFkyvxDExqnamTDDw/Be3csFovcJZtBbDLJkB8wL5gCfT67hT1cR Qt9bHRwgV65495RE1mYXup3YfyigIeC9mE4s+o6v7n95gFfjRDsuJXhiTJ7HXfzr4kMsg7OJXhaMv Tt2eJdwHqy4mV0evPUwgKhC7Jtj3CUTa9xBWBfbLKRSXq5xtXLRqtJlw4QaIoh+GwlkWg7v0i12V0 7seCyvzP0TyXzIVniMg+L5Emq1f4qExxkMpPG1/18DGWpQUXtxfsZI8kQE/qDhLy9vIlC02fQ9qxZ ooaknToVazWuFUGlBvmQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1onaPl-008LWJ-ER; Wed, 26 Oct 2022 07:01:25 +0000 Received: from mx0a-001b2d01.pphosted.com ([148.163.156.1]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1onaPg-008LV8-LI for kexec@lists.infradead.org; Wed, 26 Oct 2022 07:01:23 +0000 Received: from pps.filterd (m0098409.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 29Q69KsS017875; Wed, 26 Oct 2022 07:00:16 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=message-id : date : mime-version : subject : to : cc : references : from : in-reply-to : content-type : content-transfer-encoding; s=pp1; bh=i74J7YxKNCGZnJ4ntBW29KJiOsTw3NkvkI4MTBMck88=; b=jnLt7cRKjf7YhEcP0y2j1WGV8fjq7obXmW8Kwo/W7irerY3KCiEE780PX0oywARh1spD UPv7ZfwL/aWH4KOvKdyOfr0LqZ7Df7HVPc6WKDXEd1h8mSlX1hi4Cfv4TIfi0vppJ9pW XwfHiNtp/rcZBvo0ot+WEDCba3pn1cjFcQZuN3sx/jEO2YoJ9Wij04Y5eR/GiAvpawLK RacCt1V8CowjyK0BJQHlQSGJasWe6f0q6NVQI9fvMUCloC2CNZHl3JVLuNu++51xfC+j XntdczZs2hFniZwWEV5bysrDjpqPWtAxjBuSJOo3/sIyeiAmgwNlcR7ijXQSCDHk1rjY 9A== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3kedmq2jbc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 26 Oct 2022 07:00:15 +0000 Received: from m0098409.ppops.net (m0098409.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 29Q6uuDr018320; Wed, 26 Oct 2022 07:00:15 GMT Received: from ppma06fra.de.ibm.com (48.49.7a9f.ip4.static.sl-reverse.com [159.122.73.72]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3kedmq2j9a-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 26 Oct 2022 07:00:15 +0000 Received: from pps.filterd (ppma06fra.de.ibm.com [127.0.0.1]) by ppma06fra.de.ibm.com (8.16.1.2/8.16.1.2) with SMTP id 29Q6p3CW023281; Wed, 26 Oct 2022 07:00:12 GMT Received: from b06avi18878370.portsmouth.uk.ibm.com (b06avi18878370.portsmouth.uk.ibm.com [9.149.26.194]) by ppma06fra.de.ibm.com with ESMTP id 3kc7sj512w-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 26 Oct 2022 07:00:12 +0000 Received: from d06av22.portsmouth.uk.ibm.com (d06av22.portsmouth.uk.ibm.com [9.149.105.58]) by b06avi18878370.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 29Q70iCt51970370 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 26 Oct 2022 07:00:44 GMT Received: from d06av22.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A2C834C04E; Wed, 26 Oct 2022 07:00:09 +0000 (GMT) Received: from d06av22.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 30B654C046; Wed, 26 Oct 2022 07:00:03 +0000 (GMT) Received: from [9.43.71.140] (unknown [9.43.71.140]) by d06av22.portsmouth.uk.ibm.com (Postfix) with ESMTP; Wed, 26 Oct 2022 07:00:02 +0000 (GMT) Message-ID: <04b0ebb7-2131-97f0-a49f-af16c5378831@linux.ibm.com> Date: Wed, 26 Oct 2022 12:30:02 +0530 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.1 Subject: Re: [PATCH v12 3/7] crash: add generic infrastructure for crash hotplug support To: Baoquan He , Eric DeVolder Cc: linux-kernel@vger.kernel.org, x86@kernel.org, kexec@lists.infradead.org, ebiederm@xmission.com, dyoung@redhat.com, vgoyal@redhat.com, tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, hpa@zytor.com, nramas@linux.microsoft.com, thomas.lendacky@amd.com, robh@kernel.org, efault@gmx.de, rppt@kernel.org, david@redhat.com, konrad.wilk@oracle.com, boris.ostrovsky@oracle.com References: <20220909210509.6286-1-eric.devolder@oracle.com> <20220909210509.6286-4-eric.devolder@oracle.com> <8cc31b22-a061-d07c-77dc-c555b8b35af3@linux.ibm.com> <97f2daae-f34a-86bb-6d28-8aa8314321bc@oracle.com> Content-Language: en-US From: Sourabh Jain In-Reply-To: X-TM-AS-GCONF: 00 X-Proofpoint-GUID: y_DdF7yAzuDyQRTIg2efVFrexyXEX96L X-Proofpoint-ORIG-GUID: ffAIrTWg8AXqgaDGIz-os4EWOLZ0W6s4 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.895,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2022-10-26_02,2022-10-25_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 clxscore=1015 impostorscore=0 mlxlogscore=999 suspectscore=0 phishscore=0 adultscore=0 priorityscore=1501 spamscore=0 mlxscore=0 lowpriorityscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2209130000 definitions=main-2210260036 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20221026_000120_722205_E7A2A760 X-CRM114-Status: GOOD ( 36.13 ) X-BeenThere: kexec@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "kexec" Errors-To: kexec-bounces+kexec=archiver.kernel.org@lists.infradead.org SGVsbG8gQmFvcXVhbiwKCk9uIDI0LzEwLzIyIDE0OjQwLCBCYW9xdWFuIEhlIHdyb3RlOgo+IEhp IEVyaWMsIFNvdXJhYmgsCj4KPiBPbiAxMC8wNy8yMiBhdCAwMjoxNHBtLCBFcmljIERlVm9sZGVy IHdyb3RlOgo+Pgo+PiBPbiAxMC8zLzIyIDEyOjUxLCBTb3VyYWJoIEphaW4gd3JvdGU6Cj4+PiBI ZWxsbyBFcmljLAo+Pj4KPj4+IE9uIDEwLzA5LzIyIDAyOjM1LCBFcmljIERlVm9sZGVyIHdyb3Rl Ogo+IC4uLi4uLgo+Pj4+ICtzdGF0aWMgdm9pZCBoYW5kbGVfaG90cGx1Z19ldmVudCh1bnNpZ25l ZCBpbnQgaHBfYWN0aW9uLCB1bnNpZ25lZCBpbnQgY3B1KQo+Pj4+ICt7Cj4+Pj4gK8KgwqDCoCAv KiBPYnRhaW4gbG9jayB3aGlsZSBjaGFuZ2luZyBjcmFzaCBpbmZvcm1hdGlvbiAqLwo+Pj4+ICvC oMKgwqAgbXV0ZXhfbG9jaygma2V4ZWNfbXV0ZXgpOwo+Pj4+ICsKPj4+PiArwqDCoMKgIC8qIENo ZWNrIGtkdW1wIGlzIGxvYWRlZCAqLwo+Pj4+ICvCoMKgwqAgaWYgKGtleGVjX2NyYXNoX2ltYWdl KSB7Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgIHN0cnVjdCBraW1hZ2UgKmltYWdlID0ga2V4ZWNfY3Jh c2hfaW1hZ2U7Cj4+Pj4gKwo+Pj4+ICvCoMKgwqDCoMKgwqDCoCBpZiAoaHBfYWN0aW9uID09IEtF WEVDX0NSQVNIX0hQX0FERF9DUFUgfHwKPj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBocF9h Y3Rpb24gPT0gS0VYRUNfQ1JBU0hfSFBfUkVNT1ZFX0NQVSkKPj4+PiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBwcl9kZWJ1ZygiY3Jhc2ggaHA6IGhwX2FjdGlvbiAldSwgY3B1ICV1XG4iLCBocF9h Y3Rpb24sIGNwdSk7Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGVsc2UKPj4+PiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCBwcl9kZWJ1ZygiY3Jhc2ggaHA6IGhwX2FjdGlvbiAldVxuIiwgaHBfYWN0aW9u KTsKPj4+PiArCj4+Pj4gK8KgwqDCoMKgwqDCoMKgIC8qCj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqAg KiBXaGVuIHRoZSBzdHJ1Y3Qga2ltYWdlIGlzIGFsbG9jYXRlZCwgaXQgaXMgd2lwZWQgdG8gemVy bywgc28KPj4+PiArwqDCoMKgwqDCoMKgwqDCoCAqIHRoZSBlbGZjb3JlaGRyX2luZGV4X3ZhbGlk IGRlZmF1bHRzIHRvIGZhbHNlLiBGaW5kIHRoZQo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgICogc2Vn bWVudCBjb250YWluaW5nIHRoZSBlbGZjb3JlaGRyLCBpZiBub3QgYWxyZWFkeSBmb3VuZC4KPj4+ PiArwqDCoMKgwqDCoMKgwqDCoCAqIFRoaXMgd29ya3MgZm9yIGJvdGggdGhlIGtleGVjX2xvYWQg YW5kIGtleGVjX2ZpbGVfbG9hZCBwYXRocy4KPj4+PiArwqDCoMKgwqDCoMKgwqDCoCAqLwo+Pj4+ ICvCoMKgwqDCoMKgwqDCoCBpZiAoIWltYWdlLT5lbGZjb3JlaGRyX2luZGV4X3ZhbGlkKSB7Cj4+ Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdW5zaWduZWQgY2hhciAqcHRyOwo+Pj4+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIHVuc2lnbmVkIGxvbmcgbWVtLCBtZW1zejsKPj4+PiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCB1bnNpZ25lZCBpbnQgbjsKPj4+PiArCj4+Pj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqAgZm9yIChuID0gMDsgbiA8IGltYWdlLT5ucl9zZWdtZW50czsgbisrKSB7Cj4+ Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBtZW0gPSBpbWFnZS0+c2VnbWVudFtu XS5tZW07Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBtZW1zeiA9IGltYWdl LT5zZWdtZW50W25dLm1lbXN6Owo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg cHRyID0gYXJjaF9tYXBfY3Jhc2hfcGFnZXMobWVtLCBtZW1zeik7Cj4+Pj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAocHRyKSB7Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIC8qIFRoZSBzZWdtZW50IGNvbnRhaW5pbmcgZWxmY29yZWhkciAq Lwo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBpZiAobWVtY21w KHB0ciwgRUxGTUFHLCBTRUxGTUFHKSA9PSAwKSB7Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaW1hZ2UtPmVsZmNvcmVoZHJfaW5kZXggPSAoaW50 KW47Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg aW1hZ2UtPmVsZmNvcmVoZHJfaW5kZXhfdmFsaWQgPSB0cnVlOwo+Pj4+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCB9Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBhcmNoX3VubWFw X2NyYXNoX3BhZ2VzKCh2b2lkICoqKSZwdHIpOwo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg IH0KPj4+PiArwqDCoMKgwqDCoMKgwqAgfQo+Pj4+ICsKPj4+PiArwqDCoMKgwqDCoMKgwqAgaWYg KCFpbWFnZS0+ZWxmY29yZWhkcl9pbmRleF92YWxpZCkgewo+Pj4+ICvCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIHByX2VycigiY3Jhc2ggaHA6IHVuYWJsZSB0byBsb2NhdGUgZWxmY29yZWhkciBzZWdt ZW50Iik7Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZ290byBvdXQ7Cj4+Pj4gK8KgwqDC oMKgwqDCoMKgIH0KPj4+PiArCj4+Pj4gK8KgwqDCoMKgwqDCoMKgIC8qIE5lZWRlZCBpbiBvcmRl ciBmb3IgdGhlIHNlZ21lbnRzIHRvIGJlIHVwZGF0ZWQgKi8KPj4+PiArwqDCoMKgwqDCoMKgwqAg YXJjaF9rZXhlY191bnByb3RlY3RfY3Jhc2hrcmVzKCk7Cj4+Pj4gKwo+Pj4+ICvCoMKgwqDCoMKg wqDCoCAvKiBGbGFnIHRvIGRpZmZlcmVudGlhdGUgYmV0d2VlbiBub3JtYWwgbG9hZCBhbmQgaG90 cGx1ZyAqLwo+Pj4+ICvCoMKgwqDCoMKgwqDCoCBpbWFnZS0+aG90cGx1Z19ldmVudCA9IHRydWU7 Cj4+Pj4gKwo+Pj4+ICvCoMKgwqDCoMKgwqDCoCAvKiBOb3cgaW52b2tlIGFyY2gtc3BlY2lmaWMg dXBkYXRlIGhhbmRsZXIgKi8KPj4+PiArwqDCoMKgwqDCoMKgwqAgYXJjaF9jcmFzaF9oYW5kbGVf aG90cGx1Z19ldmVudChpbWFnZSwgaHBfYWN0aW9uKTsKPj4+PiArCj4+Pj4gK8KgwqDCoMKgwqDC oMKgIC8qIE5vIGxvbmdlciBoYW5kbGluZyBhIGhvdHBsdWcgZXZlbnQgKi8KPj4+PiArwqDCoMKg wqDCoMKgwqAgaW1hZ2UtPmhvdHBsdWdfZXZlbnQgPSBmYWxzZTsKPj4+PiArCj4+Pj4gK8KgwqDC oMKgwqDCoMKgIC8qIENoYW5nZSBiYWNrIHRvIHJlYWQtb25seSAqLwo+Pj4+ICvCoMKgwqDCoMKg wqDCoCBhcmNoX2tleGVjX3Byb3RlY3RfY3Jhc2hrcmVzKCk7Cj4+Pj4gK8KgwqDCoCB9Cj4+Pj4g Kwo+Pj4+ICtvdXQ6Cj4+Pj4gK8KgwqDCoCAvKiBSZWxlYXNlIGxvY2sgbm93IHRoYXQgdXBkYXRl IGNvbXBsZXRlICovCj4+Pj4gK8KgwqDCoCBtdXRleF91bmxvY2soJmtleGVjX211dGV4KTsKPj4+ PiArfQo+Pj4+ICsKPj4+PiArc3RhdGljIGludCBjcmFzaF9tZW1ocF9ub3RpZmllcihzdHJ1Y3Qg bm90aWZpZXJfYmxvY2sgKm5iLCB1bnNpZ25lZCBsb25nIHZhbCwgdm9pZCAqdikKPj4+PiArewo+ Pj4+ICvCoMKgwqAgc3dpdGNoICh2YWwpIHsKPj4+PiArwqDCoMKgIGNhc2UgTUVNX09OTElORToK Pj4+PiArwqDCoMKgwqDCoMKgwqAgaGFuZGxlX2hvdHBsdWdfZXZlbnQoS0VYRUNfQ1JBU0hfSFBf QUREX01FTU9SWSwgMCk7Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGJyZWFrOwo+Pj4+ICsKPj4+PiAr wqDCoMKgIGNhc2UgTUVNX09GRkxJTkU6Cj4+Pj4gK8KgwqDCoMKgwqDCoMKgIGhhbmRsZV9ob3Rw bHVnX2V2ZW50KEtFWEVDX0NSQVNIX0hQX1JFTU9WRV9NRU1PUlksIDApOwo+Pj4+ICvCoMKgwqDC oMKgwqDCoCBicmVhazsKPj4+PiArwqDCoMKgIH0KPj4+PiArwqDCoMKgIHJldHVybiBOT1RJRllf T0s7Cj4+PiBDYW4gd2UgcGFzcyB2IChtZW1vcnlfbm90aWZ5KSBhcmd1bWVudCB0byBhcmNoX2Ny YXNoX2hhbmRsZV9ob3RwbHVnX2V2ZW50IGZ1bmN0aW9uCj4+PiB2aWEgaGFuZGxlX2hvdHBsdWdf ZXZlbnQ/Cj4+Pgo+Pj4gQmVjYXVzZSB0aGUgd2F5IG1lbW9yeSBob3RwbHVnIGlzIGhhbmRsZWQg b24gUG93ZXJQQywgaXQgaXMgaGFyZCB0byB1cGRhdGUgdGhlIGVsZmNvcmVoZHIKPj4+IHdpdGhv dXQgbWVtb3J5X25vdGlmeSBhcmdzLgo+Pj4KPj4+IE9uIFBvd2VQQyBtZW1ibG9jayBkYXRhIHN0 cnVjdHVyZSBpcyB1c2VkIHRvIHByZXBhcmUgZWxmY29yZWhkciBmb3Iga2R1bXAuIFNpbmNlIHRo ZSBub3RpZmllcgo+Pj4gdXNlZCBmb3IgbWVtb3J5IGhvdHBsdWcgY3Jhc2ggaGFuZGxlciBnZXQg aW5pdGlhdGVkIGJlZm9yZSB0aGUgbWVtYmxvY2sgZGF0YSBzdHJ1Y3R1cmUgdXBkYXRlCj4+PiBo YXBwZW5zIChhcyBkZXBpY3RlZCBiZWxvdyksIHRoZSBuZXdseSBwcmVwYXJlZCBlbGZjb3JlaGRy IHN0aWxsIGhvbGRzIHRoZSBvbGQgbWVtb3J5IHJlZ2lvbnMuCj4+PiBTbyBpZiB0aGUgc3lzdGVt IGNyYXNoIHdpdGggb2Jzb2xldGUgZWxmY29yZWhkciwgbWFrZWR1bXBmaWxlIGZhaWxlZCB0byBj b2xsZWN0IHZtY29yZS4KPj4+Cj4+PiBTZXF1ZW5jZSBvZiBhY3Rpb25zIGRvbmUgb24gUG93ZXJQ QyB0byBzZXJ2ZXIgdGhlIG1lbW9yeSBob3RwbHVnOgo+Pj4KPj4+ICAgwqBJbml0aWF0ZSBtZW1v cnkgaG90IHJlbW92ZQo+Pj4gICDCoMKgwqDCoMKgwqDCoMKgwqAgfAo+Pj4gICDCoMKgwqDCoMKg wqDCoMKgwqAgdgo+Pj4gICDCoG9mZmxpbmUgcGFnZXMKPj4+ICAgwqDCoMKgwqDCoMKgwqDCoMKg IHwKPj4+ICAgwqDCoMKgwqDCoMKgwqDCoMKgIHYKPj4+ICAgwqBpbml0aWF0ZSBtZW1vcnkgbm90 aWZ5IGNhbGwgY2hhaW4KPj4+ICAgwqBmb3IgTUVNX09GRkxJTkUgZXZlbnQuCj4+PiAgIMKgKHNh bWUgaXMgdXNlZCBmb3IgY3Jhc2ggdXBkYXRlKQo+Pj4gICDCoMKgwqDCoMKgwqDCoMKgwqAgfAo+ Pj4gICDCoMKgwqDCoMKgwqDCoMKgwqAgdgo+Pj4gICDCoHByZXBhcmUgbmV3IGVsZmNvcmVoZHIg Zm9yIGtkdW1wIHVzaW5nCj4+PiAgIMKgbWVtYmxvY2sgZGF0YSBzdHJ1Y3R1cmUKPj4+ICAgwqDC oMKgwqDCoMKgwqDCoMKgIHwKPj4+ICAgwqDCoMKgwqDCoMKgwqDCoMKgIHYKPj4+ICAgwqB1cGRh dGUgbWVtYmxvY2sgZGF0YSBzdHJ1Y3R1cmUKPj4+Cj4+PiBIb3cgcGFzc2luZyBtZW1vcnlfbm90 aWZ5IHRvIGFyY2ggY3Jhc2ggaG90cGx1ZyBoYW5kbGVyIHdpbGwgaGVscD8KPj4+Cj4+PiBtZW1v cnlfbm90aWZ5IGhvbGRzIHRoZSBzdGFydCBQRk4gYW5kIHBhZ2UgY291bnQsIHdpdGggdGhhdCB3 ZSBjYW4gZ2V0Cj4+PiB0aGUgYmFzZSBhZGRyZXNzIGFuZCBzaXplIG9mIGhvdCB1bnBsdWdnZWQg bWVtb3J5IGFuZCBjYW4gdXNlIHRoZSBzYW1lCj4+PiB0byBhdm9pZCBob3QgdW5wbHVnZ2VkIG1l bWVvcnkgcmVnaW9uIHRvIGdldCBhZGRlZCBpbiB0aGUgZWxmY29yZWhkci4uCj4+Pgo+Pj4gVGhh bmtzLAo+Pj4gU291cmFiaCBKYWluCj4+Pgo+PiBTb3VyYWJoLCBsZXQncyBzZWUgd2hhdCBCYW9x dWFuIHRoaW5rcy4KPj4KPj4gQmFvcXVhbiwgYXJlIHlvdSBPSyB3aXRoIHRoaXMgcmVxdWVzdD8g SSBvbmNlIGhhZCB0aGVzZSBwYXJhbWV0ZXJzIHRvIHRoZQo+PiBjcmFzaCBob3RwbHVnIGhhbmRs ZXIgYW5kIHNpbmNlIHRoZXkgd2VyZSB1bnVzZWQgYXQgdGhlIHRpbWUsIHlvdSBhc2tlZAo+PiB0 aGF0IEkgcmVtb3ZlIHRoZW0sIHdoaWNoIEkgZGlkLgo+IFNvcnJ5IHRvIG1pc3MgdGhpcyBtYWls LiBJIHRob3VnaHQgYm90aCBvZiB5b3Ugd2VyZSB0YWxraW5nIGFib3V0Cj4gc29tdGhpbmcsIGFu ZCBkaWRuJ3Qgbm90aWNlIHRoaXMgcXVlc3Rpb24gdG8gbWUuCj4KPiBJIHRoaW5rIHRoZXJlIGFy ZSB0d28gd2F5cyB0byBzb2x2ZSB0aGUgaXNzdWUgU291cmFiaCByYWlzZWQ6Cj4gMSkgbWFrZSBo YW5kbGVfaG90cGx1Z19ldmVudCgpIGdldCBhbmQgcGFzcyBkb3duIHRoZSBtZW1vcnlfbm90aWZ5 IGFzCj4gU291cmFiaCBzYWlkLCBvciB0aGUgaHBfYWN0aW9uLCBtZW1fc3RhcnR8c2l6ZSBhcyBF cmljIHN1Z2dlc3RlZC4gSQo+IGhhdmUgdG8gYWRtaXQgSSBoYXZlbid0IGNhcmVmdWxseSBjaGVj a2VkIHdoaWNoIG9uZSBpcyBiZXR0ZXIuCj4KPiAyKSBsZXQgdGhlIGN1cnJlbnQgY29kZSBhcyBp cyBzaW5jZSBpdCdzIGFpbWluZyBhdCB4ODYgb25seS4gTGF0ZXIKPiBTb3VyYWJoIGNhbiBtb2Rp ZnkgY29kZSBhY2NvcmRpbmcgdG8gaGlzIG5lZWQgb24gcHBjLiBUaGlzIGNhbiBnaXZlCj4gc2F0 aXNmeWluZyB3aHkgb24gY29kZSBjaGFuZ2UgZWFjaCB0aW1lLgo+Cj4gSSBwZXJzb25hbGx5IGxp a2UgdGhlIDJuZCB3YXksIHdoaWxlIGFsc28gbGlrZSBzZWVpbmcgMXN0IG9uZSBpZiB0aGUKPiBj b2RlIGNoYW5nZSBhbmQgbG9nIGlzIGNvbnZpbmNpbmcgdG8gYW55IHJldmlld2VyLgoKT2sgbGV0 J3MgZ28gd2l0aCBzZWNvbmQgYXBwcm9hY2guIEkgd2lsbCBpbnRyb2R1Y2UgYSBwYXRjaCBpbiBQ b3dlclBDIApzZXJpZXMgdG8gdXBkYXRlIHRoZQpoYW5kbGVfaG90cGx1Z19ldmVudCBmdW5jdGlv biBzaWduYXR1cmUgYW5kIGp1c3RpZnkgdGhlIGNoYW5nZS4KClRoYW5rcywKU291cmFiaCBKYWlu CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18Ka2V4ZWMg bWFpbGluZyBsaXN0CmtleGVjQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJh ZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9rZXhlYwo= 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 Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 29BD3C433FE for ; Wed, 26 Oct 2022 07:01:34 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233056AbiJZHBb (ORCPT ); Wed, 26 Oct 2022 03:01:31 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:32806 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229497AbiJZHB0 (ORCPT ); Wed, 26 Oct 2022 03:01:26 -0400 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 55A2232B9C for ; Wed, 26 Oct 2022 00:01:25 -0700 (PDT) Received: from pps.filterd (m0098409.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 29Q69KsS017875; Wed, 26 Oct 2022 07:00:16 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=message-id : date : mime-version : subject : to : cc : references : from : in-reply-to : content-type : content-transfer-encoding; s=pp1; bh=i74J7YxKNCGZnJ4ntBW29KJiOsTw3NkvkI4MTBMck88=; b=jnLt7cRKjf7YhEcP0y2j1WGV8fjq7obXmW8Kwo/W7irerY3KCiEE780PX0oywARh1spD UPv7ZfwL/aWH4KOvKdyOfr0LqZ7Df7HVPc6WKDXEd1h8mSlX1hi4Cfv4TIfi0vppJ9pW XwfHiNtp/rcZBvo0ot+WEDCba3pn1cjFcQZuN3sx/jEO2YoJ9Wij04Y5eR/GiAvpawLK RacCt1V8CowjyK0BJQHlQSGJasWe6f0q6NVQI9fvMUCloC2CNZHl3JVLuNu++51xfC+j XntdczZs2hFniZwWEV5bysrDjpqPWtAxjBuSJOo3/sIyeiAmgwNlcR7ijXQSCDHk1rjY 9A== Received: from pps.reinject (localhost [127.0.0.1]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3kedmq2jbc-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 26 Oct 2022 07:00:15 +0000 Received: from m0098409.ppops.net (m0098409.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 29Q6uuDr018320; Wed, 26 Oct 2022 07:00:15 GMT Received: from ppma06fra.de.ibm.com (48.49.7a9f.ip4.static.sl-reverse.com [159.122.73.72]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3kedmq2j9a-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 26 Oct 2022 07:00:15 +0000 Received: from pps.filterd (ppma06fra.de.ibm.com [127.0.0.1]) by ppma06fra.de.ibm.com (8.16.1.2/8.16.1.2) with SMTP id 29Q6p3CW023281; Wed, 26 Oct 2022 07:00:12 GMT Received: from b06avi18878370.portsmouth.uk.ibm.com (b06avi18878370.portsmouth.uk.ibm.com [9.149.26.194]) by ppma06fra.de.ibm.com with ESMTP id 3kc7sj512w-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 26 Oct 2022 07:00:12 +0000 Received: from d06av22.portsmouth.uk.ibm.com (d06av22.portsmouth.uk.ibm.com [9.149.105.58]) by b06avi18878370.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 29Q70iCt51970370 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 26 Oct 2022 07:00:44 GMT Received: from d06av22.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A2C834C04E; Wed, 26 Oct 2022 07:00:09 +0000 (GMT) Received: from d06av22.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 30B654C046; Wed, 26 Oct 2022 07:00:03 +0000 (GMT) Received: from [9.43.71.140] (unknown [9.43.71.140]) by d06av22.portsmouth.uk.ibm.com (Postfix) with ESMTP; Wed, 26 Oct 2022 07:00:02 +0000 (GMT) Message-ID: <04b0ebb7-2131-97f0-a49f-af16c5378831@linux.ibm.com> Date: Wed, 26 Oct 2022 12:30:02 +0530 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.2.1 Subject: Re: [PATCH v12 3/7] crash: add generic infrastructure for crash hotplug support To: Baoquan He , Eric DeVolder Cc: linux-kernel@vger.kernel.org, x86@kernel.org, kexec@lists.infradead.org, ebiederm@xmission.com, dyoung@redhat.com, vgoyal@redhat.com, tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, dave.hansen@linux.intel.com, hpa@zytor.com, nramas@linux.microsoft.com, thomas.lendacky@amd.com, robh@kernel.org, efault@gmx.de, rppt@kernel.org, david@redhat.com, konrad.wilk@oracle.com, boris.ostrovsky@oracle.com References: <20220909210509.6286-1-eric.devolder@oracle.com> <20220909210509.6286-4-eric.devolder@oracle.com> <8cc31b22-a061-d07c-77dc-c555b8b35af3@linux.ibm.com> <97f2daae-f34a-86bb-6d28-8aa8314321bc@oracle.com> Content-Language: en-US From: Sourabh Jain In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-TM-AS-GCONF: 00 X-Proofpoint-GUID: y_DdF7yAzuDyQRTIg2efVFrexyXEX96L X-Proofpoint-ORIG-GUID: ffAIrTWg8AXqgaDGIz-os4EWOLZ0W6s4 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.895,Hydra:6.0.545,FMLib:17.11.122.1 definitions=2022-10-26_02,2022-10-25_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 clxscore=1015 impostorscore=0 mlxlogscore=999 suspectscore=0 phishscore=0 adultscore=0 priorityscore=1501 spamscore=0 mlxscore=0 lowpriorityscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2209130000 definitions=main-2210260036 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello Baoquan, On 24/10/22 14:40, Baoquan He wrote: > Hi Eric, Sourabh, > > On 10/07/22 at 02:14pm, Eric DeVolder wrote: >> >> On 10/3/22 12:51, Sourabh Jain wrote: >>> Hello Eric, >>> >>> On 10/09/22 02:35, Eric DeVolder wrote: > ...... >>>> +static void handle_hotplug_event(unsigned int hp_action, unsigned int cpu) >>>> +{ >>>> +    /* Obtain lock while changing crash information */ >>>> +    mutex_lock(&kexec_mutex); >>>> + >>>> +    /* Check kdump is loaded */ >>>> +    if (kexec_crash_image) { >>>> +        struct kimage *image = kexec_crash_image; >>>> + >>>> +        if (hp_action == KEXEC_CRASH_HP_ADD_CPU || >>>> +            hp_action == KEXEC_CRASH_HP_REMOVE_CPU) >>>> +            pr_debug("crash hp: hp_action %u, cpu %u\n", hp_action, cpu); >>>> +        else >>>> +            pr_debug("crash hp: hp_action %u\n", hp_action); >>>> + >>>> +        /* >>>> +         * When the struct kimage is allocated, it is wiped to zero, so >>>> +         * the elfcorehdr_index_valid defaults to false. Find the >>>> +         * segment containing the elfcorehdr, if not already found. >>>> +         * This works for both the kexec_load and kexec_file_load paths. >>>> +         */ >>>> +        if (!image->elfcorehdr_index_valid) { >>>> +            unsigned char *ptr; >>>> +            unsigned long mem, memsz; >>>> +            unsigned int n; >>>> + >>>> +            for (n = 0; n < image->nr_segments; n++) { >>>> +                mem = image->segment[n].mem; >>>> +                memsz = image->segment[n].memsz; >>>> +                ptr = arch_map_crash_pages(mem, memsz); >>>> +                if (ptr) { >>>> +                    /* The segment containing elfcorehdr */ >>>> +                    if (memcmp(ptr, ELFMAG, SELFMAG) == 0) { >>>> +                        image->elfcorehdr_index = (int)n; >>>> +                        image->elfcorehdr_index_valid = true; >>>> +                    } >>>> +                } >>>> +                arch_unmap_crash_pages((void **)&ptr); >>>> +            } >>>> +        } >>>> + >>>> +        if (!image->elfcorehdr_index_valid) { >>>> +            pr_err("crash hp: unable to locate elfcorehdr segment"); >>>> +            goto out; >>>> +        } >>>> + >>>> +        /* Needed in order for the segments to be updated */ >>>> +        arch_kexec_unprotect_crashkres(); >>>> + >>>> +        /* Flag to differentiate between normal load and hotplug */ >>>> +        image->hotplug_event = true; >>>> + >>>> +        /* Now invoke arch-specific update handler */ >>>> +        arch_crash_handle_hotplug_event(image, hp_action); >>>> + >>>> +        /* No longer handling a hotplug event */ >>>> +        image->hotplug_event = false; >>>> + >>>> +        /* Change back to read-only */ >>>> +        arch_kexec_protect_crashkres(); >>>> +    } >>>> + >>>> +out: >>>> +    /* Release lock now that update complete */ >>>> +    mutex_unlock(&kexec_mutex); >>>> +} >>>> + >>>> +static int crash_memhp_notifier(struct notifier_block *nb, unsigned long val, void *v) >>>> +{ >>>> +    switch (val) { >>>> +    case MEM_ONLINE: >>>> +        handle_hotplug_event(KEXEC_CRASH_HP_ADD_MEMORY, 0); >>>> +        break; >>>> + >>>> +    case MEM_OFFLINE: >>>> +        handle_hotplug_event(KEXEC_CRASH_HP_REMOVE_MEMORY, 0); >>>> +        break; >>>> +    } >>>> +    return NOTIFY_OK; >>> Can we pass v (memory_notify) argument to arch_crash_handle_hotplug_event function >>> via handle_hotplug_event? >>> >>> Because the way memory hotplug is handled on PowerPC, it is hard to update the elfcorehdr >>> without memory_notify args. >>> >>> On PowePC memblock data structure is used to prepare elfcorehdr for kdump. Since the notifier >>> used for memory hotplug crash handler get initiated before the memblock data structure update >>> happens (as depicted below), the newly prepared elfcorehdr still holds the old memory regions. >>> So if the system crash with obsolete elfcorehdr, makedumpfile failed to collect vmcore. >>> >>> Sequence of actions done on PowerPC to server the memory hotplug: >>> >>>  Initiate memory hot remove >>>           | >>>           v >>>  offline pages >>>           | >>>           v >>>  initiate memory notify call chain >>>  for MEM_OFFLINE event. >>>  (same is used for crash update) >>>           | >>>           v >>>  prepare new elfcorehdr for kdump using >>>  memblock data structure >>>           | >>>           v >>>  update memblock data structure >>> >>> How passing memory_notify to arch crash hotplug handler will help? >>> >>> memory_notify holds the start PFN and page count, with that we can get >>> the base address and size of hot unplugged memory and can use the same >>> to avoid hot unplugged memeory region to get added in the elfcorehdr.. >>> >>> Thanks, >>> Sourabh Jain >>> >> Sourabh, let's see what Baoquan thinks. >> >> Baoquan, are you OK with this request? I once had these parameters to the >> crash hotplug handler and since they were unused at the time, you asked >> that I remove them, which I did. > Sorry to miss this mail. I thought both of you were talking about > somthing, and didn't notice this question to me. > > I think there are two ways to solve the issue Sourabh raised: > 1) make handle_hotplug_event() get and pass down the memory_notify as > Sourabh said, or the hp_action, mem_start|size as Eric suggested. I > have to admit I haven't carefully checked which one is better. > > 2) let the current code as is since it's aiming at x86 only. Later > Sourabh can modify code according to his need on ppc. This can give > satisfying why on code change each time. > > I personally like the 2nd way, while also like seeing 1st one if the > code change and log is convincing to any reviewer. Ok let's go with second approach. I will introduce a patch in PowerPC series to update the handle_hotplug_event function signature and justify the change. Thanks, Sourabh Jain