From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753999AbcKHRTg (ORCPT ); Tue, 8 Nov 2016 12:19:36 -0500 Received: from mail-db5eur01on0050.outbound.protection.outlook.com ([104.47.2.50]:55744 "EHLO EUR01-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752395AbcKHRTe (ORCPT ); Tue, 8 Nov 2016 12:19:34 -0500 Authentication-Results: spf=pass (sender IP is 217.140.96.140) smtp.mailfrom=arm.com; vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=bestguesspass action=none header.from=arm.com; X-IncomingTopHeaderMarker: OriginalChecksum:;UpperCasedChecksum:;SizeAsReceived:783;Count:11 From: Huang Shijie To: CC: , , , , , , , , Huang Shijie Subject: [PATCH v2 0/2] arm64: fix the bugs found in the hugetlb test Date: Tue, 8 Nov 2016 13:44:37 +0800 Message-ID: <1478583879-14654-1-git-send-email-shijie.huang@arm.com> X-Mailer: git-send-email 2.5.5 MIME-Version: 1.0 Content-Type: text/plain X-IncomingHeaderCount: 11 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:217.140.96.140;IPV:CAL;SCL:-1;CTRY:GB;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(7916002)(2980300002)(438002)(189002)(199003)(6636002)(5660300001)(246002)(26826002)(47776003)(86362001)(4326007)(87936001)(36756003)(33646002)(50226002)(77096005)(356003)(50986999)(2351001)(189998001)(5003940100001)(626004)(2906002)(229853001)(586003)(8676002)(106466001)(305945005)(110136003)(6666003)(8936002)(48376002)(92566002)(7846002)(104016004)(50466002);DIR:OUT;SFP:1101;SCL:1;SRVR:HE1PR08MB1226;H:nebula.arm.com;FPR:;SPF:Pass;PTR:fw-tnat.cambridge.arm.com;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;AM1FFO11FD012;1:C1JHlRhI35oo7XhPi7PiZtE3i+xjYpLg6S11Ip1h800QE9Mj0RR35ogNOV/xa2f3g++qlNmZ/R2JIMl/bOW6k4m3JoNT4fi8EJcWKamRoy3rmbSa4bdjj8gX7YmLCPHqF3eNSjIYGeNzfZuVhRoXS66j+i/NMqn9StPrwfS90Rm5o2+FODA3hn9Rs5TR5UxDM/d+5b8PCXaE6Q0OnBvyDpPrldUO0BWQZcCF0bL8I23mBaDcOtIKGY472m+63pKIpe2arlUntTfPl4hrPL+UmioyrExmvYoQNVjksyhHmHO9B7PUu2THeRs+3XwkwPDLDcXdUhVRXsp3ekDThZWZSs1vu8UuzJqjKDgFv77M08lvfIJYnF/g8cFBRaW0RcOc52p83DnR2iTMR6s+NzKXMADIpClvwmFVO6+yqP5jOWCeydw+/NaPvB5+hHCDQjLitn/s4eo5gdk6SShNjDW6/aEO57WQWwa/azie3tRd2DUdxUJVjCN4gCMxVHy8WHxxP44Q5r6a+phJuFyB5aN7ohlb2s0Rol0Z9NBTlapoSJrdTBUFzdC3qAHNGnA3vpGisf1kfBjE/P2fHDvq5ySHiesbksVXRRgpGmhzz8Rf3gZoOqsjZCTJr+UHlVBMHiJt X-MS-Office365-Filtering-Correlation-Id: 52f039f6-3c51-4442-7770-08d4079a974c X-Microsoft-Exchange-Diagnostics: 1;HE1PR08MB1226;2:dlMB1ZnftUqz2hMszOp2F9Ofy5QYN3+pTBaz1Ogj9+DkfvMSofScrgNQXdjc+q4utuXrJtzoO5dECw+YsuSx+3uFZxufLDLz978Dhh+pR/2YRI3OsfxuooaipALAquq5+YTAdHppjDcWhucaNcDQnIhUOIS+sNy0uXjsQMIcdx/Vp21/qRnuHfQvhQfAw3WojNHSzcmA/xiYZ/cw1ilETQ==;3:67BGPagCQYwQdjSP3qOVFc/JeCuip/s2UwUdLKlo8NnZwctk3bpvJpDi4EahpPLSW/Hc93d4II45BrD1w1TcRX75t9uzAsA15Gf9JAhM9MywG5m/nPU10TfvWHgoMuDjAnz8Ls806o/iysTbN3351Yliu6mH52W7HgCO/ZkbC40kZ9FvukjQboZ9ECTf2rsWaIkx4iVpDsWjqc1kpVaNCdduPG3XTskF6PRQPIV82KjsQVHSW9Cqj7HtdoLWtgyo0QOX/k4bEP0qfdI59/noBtjO/Kn0R5yz0LVSYrP8aPc= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(8251501002);SRVR:HE1PR08MB1226; X-Microsoft-Exchange-Diagnostics: 1;HE1PR08MB1226;25:156YHKfEiGgzlgVasyCvZQA8PNhZhEN3ZOXDtj4WF3a8Ft52vsfURfYSQqggrTrjJvnG8V1lVGEDr8XPOZ9m5XavNSOZZGNHnwiQv02+uxW0MzDPZhqXiv6dAkH0FPcByStL2L9hF/SUhH6/kBbuhNU7KOrAJUkUTJdgeXn7YNd35j84a5/he9UCyN9gBaanT8zco4yqOf/+yuglOrliilni0jC/J79I8SCpZk16YdkmM+/LT1+iKhbSg0+UxSC6xQH29uEK0MYyz4eAUz3vVFKYSQIUiHsAfqNASXV5PwDCR5vxelX2yXcW8UGRVg381f8HyutU02XHfcrw+Z5FXU8O6oIQ/gvlyoGa42+THHsLrNRGMlvt1t9qOhaw0JSTqXyh8F78wsPDk3Jnfxd4+uRuF8RQRFwjpSySJBlJq4r5O7ovWGERjaFeKGv556GH;31:1qjAGjmC0BAq3cN+U6L2aF6hlmMqsEU6Tz+n5WDJCYjZYMKK+34JxlEDaQz6wVEMZosKHdDOwyeFgVGh3KsqzHKEKW97Oq+tv2p7F5D0NVva4UXZDyUgWDyyRMrNBMUifryQvtRbAIEJlBRhdbIsJjxiyUWOIwcQZHbPal/vksa3HZD635hJIoyTEDdLi9wQstuW9C8QOT5YmVz05Yy5KUl2rKllmxeYKvjz8MTRde1KKgxbY6gvNjKZJQSutd9mZ9RZPTnvIcDOmFeIDuWxJg== NoDisclaimer: True X-Microsoft-Exchange-Diagnostics: 1;HE1PR08MB1226;20:yh1p0RlneZ31EKsMQ4B+dR78ysVOMPijgtAViMObU0lY0TqW0tsAHNur6fi/PugpgUMaTf49PRPPVLRXLZP18GhdHikku5IgF/uPAQjQXi7yU7sXG4mvFpQticqnHTHhJSD1aqDOKtQYIqj74wiDyuwKOGwczpXPtXa8OUI7Pos5TMAzJ6VcFgJdDLqkTH2kNUGlvJmPe13j1j+fQpze1MU86sDbm+trxJcLoGO7YrpNuBIOy+tiX8ebgXYLZ42r;4:es8S5jFd/vz5DtFX5eklAEh0b0OjhWX42vm7QiaoyjG3b6ub8G1dRhDIJ+QA5G3upNwOWv0uVTzPSkQ4UVdf7so6GaVJ/4decJb4DV0UnBmAiI0AMQuP/MAHCONj8OupoUeDil0kkr/o7rEnmJAg10NEcLqNaG7C+TnUHzvXlnPi1BcRWcGsBI1M9vBezOkxx8fQ0lEAy3QUFOqiY/1tJt3jF+Et04WNNe/3UxhcZr7IgXDiJQftf4oMVsYPNhWXBIBUx4UeDGDibWOsRsn4Jnqsi6fTsQVTASgvXUaqrCNq9KC+8/3uQ0a21RK1CwAZTlkcIJn+k7HUty84avbC7oVq0FLBc8QPopA2O6kM/x9NBbX2qVlSbDAWRbC0gTIV0FK1RA1NfelfyBZKf4AwhlxeUDigZsrFNqa7/nQyhO+iKbGkhQlILA7cpxgqCMJ5gR5O3VAvVEN7zezrVC/r3rVDQlvRJ0JcqjYogxnuScZVndcqSDlCLrGBLKehwI0y X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040176)(601004)(2401047)(8121501046)(13023025)(5005006)(13024025)(13020025)(13013025)(10201501046)(3002001)(6055026);SRVR:HE1PR08MB1226;BCL:0;PCL:0;RULEID:;SRVR:HE1PR08MB1226; X-Forefront-PRVS: 01208B1E18 X-Microsoft-Exchange-Diagnostics: 1;HE1PR08MB1226;23:O25mdC9uTIBaNeRPO0Agxbt3l8qpzTyRK8jlvNYubMVJ4CxduRaL4PdJer7DAT9nATKrNHeB8l780pEpymq10llos5H6HGrU3c58EFDwjHe63aPWqfHPZJFEI5JYG1WZgmGMLL2+RnyUQtZwn9ofluxQ8066dBhoSLFO0PlFISeQgzk1Jk9brhIXcmUMiYWOUnRm01S9X1l0e5QLDS8hVyhLB9khZjoV4hyOXsuiHhrFvH5gy4UjqFFfG8zz4S3GVQ5R5/TKPHUNCL5/DQsrVKvP9cXQ21N/2WfoMkTWd5pDAOtpIBSfAiaCclPqNh7qRpIEA6dWzk8oHBKckO6ETbpdIxJIQa5+05M35CYGm9e4OP1Eidvv6xESK6z0O+N1JD8u2SNcMvYvOwtongwSOyAWelROOf5qHZx/O5dH8zdIstyxxvQ4z2LGtYFe6xRDFK5dicVXVBEqgbmhgqqXnu/ApHv5zcvOrt48o+K4dbHkA+XqpNyAnHLs6dB3ERfEF06Clck2tYCmEgGCmvH2/JdBU12uj2QPJAGzRhfTWn6hCjQ4GHqMA2D3aN7MsfcXOr7AFASsdqTBNztjzZuFF27nkH5UrNnidpQrS+CfqavmF1uJROBqRmUnGlMOweX6+WMS9BlAOXcfeXWZGb3fcQHJ1G+06a/0x4c4OXyRSoIPrzup6O6clwftKsini3GeUAkNckdMmpvXb8u5bOwkO1ZrkyDOf/r+L2YAu3VXJF58ygpbdfd0eQVUQBSizsj/WgX3ZyWDPQwqg78M+9u+Qq1bZZiHHbXSyntf+99FgLTqQPZdptKvNY8YSWt6/IjfI/NitUbz1gjCCPt++MhKk+mmkc6kQD3v7WloLkPBOg5cS/Zxjb2AKen6ZWyZy2sufs2v4qkZv2UiON4x6zdqdjlepgRTIOyxfXcHX3heObrQHcwKtoe02Kq7swvXlurt X-Microsoft-Exchange-Diagnostics: 1;HE1PR08MB1226;6:LiYXN6JU5ksR6r3U3ChoeDKoKsIQAVs88OkaxcBscWYQHaChFWCwsIm91gYDKPL2WhsV56aUV0/Bc96rlyon/rE53kv6i+bR998fuAQKiiyblVaqx6dGIBrsGHWZZDMAdngzcyehT8vJp2ipN8rFOffkL66X4begzkpVoX1PlA/kHkcHDYT5+CbkojC5n/4PZ09mANKzdWr+IMV6JYPkJT7PoH2xdoLINy1JJ6oiuEvxT2BgUghKNN96s9WEAQ4kop0EQqGS98Hcxq2azTeNEiFiZrZijkbq1ZBPqxBXVzqsxMAb5Bk30qDdcMJxB12CxTk3IM8wzabVNRUGOzYDNlky/JiFa26mqZGJRWbfq9U=;5:qLpaQBy1ShBwRKmweO1FODwQaxettvP84d21LooLjbk4w6UvsE1cGhcdDbEYTCaJrc0c6iiJj1DUcArD6RwGUZ9dHQR6O3EMwB+eSWPjcKrqDwOO05H3K/C2ga638WV2/leqTMyU8AzTJ+Ou90dyJw==;24:/vBM5P8YmYzppBW/b0ynax5GlilJ9Z3KH2a63kLNiCpThgElCtGhedPAu5F/c5E+m4kayt+QI6yisChDU7ZINg7QgoWifNKleRCbTC/y9TU= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;HE1PR08MB1226;7:7dQhaxisA+4/8d3EndIdBn1F/TTeuKgTWJQfTFUVWDBoVvQ+hBNISQCGn2g7kO0PQhSq3bZn7tQdFk4rmcNew2kmWy+xTROVd+YVOG3LPxYZxU+YDHEqq++W4mMmDK/H0Oz23NTcLpUqv/67ryWM0mFfTCDTjQ3KJ7NQ6+W7be3lX+J+dHWf4Bm7AMbpU6mtkDX1qILRQHx8Piaka2tZG66VkMFxnuGswllvFHlHHxE1fA+COox3XUtBs+n4vE0Wm90NefJyeSFTUt90ovQ5YESiDKmGeAD/ey87vv+NwSF/jtQK7BtyqOtXBdV6MZw8RGLwjfymMTAO6Lwruq15+OmBvzlqNwf46DbcKbWnufk= X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Nov 2016 05:46:30.8471 (UTC) X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[217.140.96.140];Helo=[nebula.arm.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR08MB1226 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org (1) Backgroud For the arm64, the hugetlb page size can be 32M (PMD + Contiguous bit). In the 4K page environment, the max page order is 10 (max_order - 1), so 32M page is the gigantic page. The arm64 MMU supports a Contiguous bit which is a hint that the PTE is one of a set of contiguous entries which can be cached in a single TLB entry. Please refer to the arm64v8 mannul : DDI0487A_f_armv8_arm.pdf (in page D4-1811) (2) The bugs After I tested the libhugetlbfs, I found several bugs in arm64 code. This patch set has all the bug fixes for the arm64. (3) The test result in the Softiron and Juno-r1 boards: This detail test result shows below (both the "make func" & "make stress"): 4KB granule: 1.1) PTE + Contiguous bit : 4K x 16 = 64K (per huge page size) Test result : PASS 1.2) PMD : 2M x 1 = 2M (per huge page size) Test result : PASS 1.3) PMD + Contiguous bit : 2M x 16 = 32M (per huge page size) Test result : PASS 64KB granule: 3.1) PTE + Contiguous bit : 64K x 32 = 2M (per huge page size) Test result : PASS 3.2) PMD + Contiguous bit : 512M x 32 = 16G (per huge page size) Test result : no hardware to support this test v1 -- > v2: 1.) remove the redundant checks for PGD/PUD Huang Shijie (2): arm64: hugetlb: remove the wrong pmd check in find_num_contig() arm64: hugetlb: fix the wrong address for several functions arch/arm64/mm/hugetlbpage.c | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) -- 2.5.5