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=-13.4 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, NICE_REPLY_A,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=unavailable 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 DDE41C433E2 for ; Tue, 1 Sep 2020 06:32:49 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [203.11.71.2]) (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 442272087D for ; Tue, 1 Sep 2020 06:32:49 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="G2S9KXOm" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 442272087D Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.ibm.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Received: from bilbo.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 4Bgcgy3ZtDzDqLw for ; Tue, 1 Sep 2020 16:32:46 +1000 (AEST) Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=linux.ibm.com (client-ip=148.163.158.5; helo=mx0b-001b2d01.pphosted.com; envelope-from=aneesh.kumar@linux.ibm.com; receiver=) Authentication-Results: lists.ozlabs.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: lists.ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=ibm.com header.i=@ibm.com header.a=rsa-sha256 header.s=pp1 header.b=G2S9KXOm; dkim-atps=neutral Received: from mx0b-001b2d01.pphosted.com (mx0b-001b2d01.pphosted.com [148.163.158.5]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 4Bgcf56fRDzDqB2 for ; Tue, 1 Sep 2020 16:31:09 +1000 (AEST) Received: from pps.filterd (m0098421.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 08162ABa163046; Tue, 1 Sep 2020 02:30:56 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=subject : to : cc : references : from : message-id : date : mime-version : in-reply-to : content-type : content-transfer-encoding; s=pp1; bh=qSG7OYr31DzJAEZ0fjdEECUakRB9NxXXj+LZHFdQ45U=; b=G2S9KXOmuASmgnS7SCAc4rD9zSUGRWLEW/+w1/rFX8WMZjBzUBFIJlw+NpsVKeId2tgb m4Ow5wsCp7yajbJK0Ro/GM8BW6p1SqthSGGBxWVeAoyS7m3NI78z5BRSYxblvgcNuvyg ppJk2uBnCtBZecKVgNtzSszo36Jd3BsnJS0dkVVhyJdPz84Wlwo5zUE1NKfiDOsG6G8M sRpO2pr9R26xqh7Phj7Qs/xLyBX0JQanJqmEc9yzIIhoWeVl3U3H1HA4nm4sf0iaVwlI 4p383yuRjnGQAmyUk0NmNkHehglxzVqv/xdlgs+R2+mRipdfJam4Odc474a9Uj8pylMU vg== Received: from ppma06ams.nl.ibm.com (66.31.33a9.ip4.static.sl-reverse.com [169.51.49.102]) by mx0a-001b2d01.pphosted.com with ESMTP id 339g0mhpxd-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 01 Sep 2020 02:30:55 -0400 Received: from pps.filterd (ppma06ams.nl.ibm.com [127.0.0.1]) by ppma06ams.nl.ibm.com (8.16.0.42/8.16.0.42) with SMTP id 0816RJ3M007725; Tue, 1 Sep 2020 06:30:54 GMT Received: from b06cxnps4075.portsmouth.uk.ibm.com (d06relay12.portsmouth.uk.ibm.com [9.149.109.197]) by ppma06ams.nl.ibm.com with ESMTP id 337e9gu38h-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 01 Sep 2020 06:30:53 +0000 Received: from d06av26.portsmouth.uk.ibm.com (d06av26.portsmouth.uk.ibm.com [9.149.105.62]) by b06cxnps4075.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 0816UplK20644234 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 1 Sep 2020 06:30:51 GMT Received: from d06av26.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B631BAE045; Tue, 1 Sep 2020 06:30:51 +0000 (GMT) Received: from d06av26.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 34070AE056; Tue, 1 Sep 2020 06:30:48 +0000 (GMT) Received: from [9.85.87.76] (unknown [9.85.87.76]) by d06av26.portsmouth.uk.ibm.com (Postfix) with ESMTP; Tue, 1 Sep 2020 06:30:47 +0000 (GMT) Subject: Re: [PATCH v3 12/13] mm/debug_vm_pgtable/hugetlb: Disable hugetlb test on ppc64 To: Anshuman Khandual , linux-mm@kvack.org, akpm@linux-foundation.org References: <20200827080438.315345-1-aneesh.kumar@linux.ibm.com> <20200827080438.315345-13-aneesh.kumar@linux.ibm.com> <6191e77f-c3b7-21ea-6dbd-eecc09735923@arm.com> From: "Aneesh Kumar K.V" Message-ID: <68f90b44-b830-58be-3c21-424fee05da37@linux.ibm.com> Date: Tue, 1 Sep 2020 12:00:47 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0 MIME-Version: 1.0 In-Reply-To: <6191e77f-c3b7-21ea-6dbd-eecc09735923@arm.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-TM-AS-GCONF: 00 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.687 definitions=2020-09-01_04:2020-09-01, 2020-09-01 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 lowpriorityscore=0 adultscore=0 clxscore=1015 mlxscore=0 spamscore=0 mlxlogscore=895 bulkscore=0 impostorscore=0 phishscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009010049 X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-arch@vger.kernel.org, linux-s390@vger.kernel.org, Christophe Leroy , x86@kernel.org, Mike Rapoport , Qian Cai , Gerald Schaefer , Vineet Gupta , linux-snps-arc@lists.infradead.org, linuxppc-dev@lists.ozlabs.org, linux-arm-kernel@lists.infradead.org Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" On 9/1/20 9:33 AM, Anshuman Khandual wrote: > > > On 08/27/2020 01:34 PM, Aneesh Kumar K.V wrote: >> The seems to be missing quite a lot of details w.r.t allocating >> the correct pgtable_t page (huge_pte_alloc()), holding the right >> lock (huge_pte_lock()) etc. The vma used is also not a hugetlb VMA. >> >> ppc64 do have runtime checks within CONFIG_DEBUG_VM for most of these. >> Hence disable the test on ppc64. > > Would really like this to get resolved in an uniform and better way > instead, i.e a modified hugetlb_advanced_tests() which works on all > platforms including ppc64. > > In absence of a modified version, I do realize the situation here, > where DEBUG_VM_PGTABLE test either runs on ppc64 or just completely > remove hugetlb_advanced_tests() from other platforms as well. > >> >> Signed-off-by: Aneesh Kumar K.V >> --- >> mm/debug_vm_pgtable.c | 4 ++++ >> 1 file changed, 4 insertions(+) >> >> diff --git a/mm/debug_vm_pgtable.c b/mm/debug_vm_pgtable.c >> index a188b6e4e37e..21329c7d672f 100644 >> --- a/mm/debug_vm_pgtable.c >> +++ b/mm/debug_vm_pgtable.c >> @@ -813,6 +813,7 @@ static void __init hugetlb_basic_tests(unsigned long pfn, pgprot_t prot) >> #endif /* CONFIG_ARCH_WANT_GENERAL_HUGETLB */ >> } >> >> +#ifndef CONFIG_PPC_BOOK3S_64 >> static void __init hugetlb_advanced_tests(struct mm_struct *mm, >> struct vm_area_struct *vma, >> pte_t *ptep, unsigned long pfn, >> @@ -855,6 +856,7 @@ static void __init hugetlb_advanced_tests(struct mm_struct *mm, >> pte = huge_ptep_get(ptep); >> WARN_ON(!(huge_pte_write(pte) && huge_pte_dirty(pte))); >> } >> +#endif > > In the worst case if we could not get a new hugetlb_advanced_tests() test > that works on all platforms, this might be the last fallback option. In > which case, it will require a proper comment section with a "FIXME: ", > explaining the current situation (and that #ifdef is temporary in nature) > and a hugetlb_advanced_tests() stub when CONFIG_PPC_BOOK3S_64 is enabled. > >> #else /* !CONFIG_HUGETLB_PAGE */ >> static void __init hugetlb_basic_tests(unsigned long pfn, pgprot_t prot) { } >> static void __init hugetlb_advanced_tests(struct mm_struct *mm, >> @@ -1065,7 +1067,9 @@ static int __init debug_vm_pgtable(void) >> pud_populate_tests(mm, pudp, saved_pmdp); >> spin_unlock(ptl); >> >> +#ifndef CONFIG_PPC_BOOK3S_64 >> hugetlb_advanced_tests(mm, vma, ptep, pte_aligned, vaddr, prot); >> +#endif > I actually wanted to add #ifdef BROKEN. That test is completely broken. Infact I would suggest to remove that test completely. > #ifdef will not be required here as there would be a stub definition > for hugetlb_advanced_tests() when CONFIG_PPC_BOOK3S_64 is enabled. > >> >> spin_lock(&mm->page_table_lock); >> p4d_clear_tests(mm, p4dp); >> > > But again, we should really try and avoid taking this path. > To be frank i am kind of frustrated with how this patch series is being looked at. We pushed a completely broken test to upstream and right now we have a code in upstream that crash when booted on ppc64. My attempt has been to make progress here and you definitely seems to be not in agreement to that. At this point I am tempted to suggest we remove the DEBUG_VM_PGTABLE support on ppc64 because AFAIU it doesn't add any value. -aneesh