From patchwork Wed Feb 12 14:16:48 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Huacai Chen X-Patchwork-Id: 13971476 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 072ACC02198 for ; Wed, 12 Feb 2025 14:17:02 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 42F896B0082; Wed, 12 Feb 2025 09:17:02 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 3DF9E6B0083; Wed, 12 Feb 2025 09:17:02 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2A7676B0085; Wed, 12 Feb 2025 09:17:02 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 066A66B0082 for ; Wed, 12 Feb 2025 09:17:02 -0500 (EST) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id A872A1C989E for ; Wed, 12 Feb 2025 14:17:01 +0000 (UTC) X-FDA: 83111494242.08.27ADD39 Received: from mail.loongson.cn (mail.loongson.cn [114.242.206.163]) by imf13.hostedemail.com (Postfix) with ESMTP id 2B20F2000B for ; Wed, 12 Feb 2025 14:16:57 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=none; spf=pass (imf13.hostedemail.com: domain of chenhuacai@loongson.cn designates 114.242.206.163 as permitted sender) smtp.mailfrom=chenhuacai@loongson.cn; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1739369819; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:references; bh=hFrrkZqqvB7g9lsqlDGCV5zkhO1hIlMrscKDkRjTWGc=; b=mSAfWM94jXw35yHTegrEkDcKofTSGhN4uSSDP5j6Tb2RlJ61JkU14lqzDXtukOMW/yBoDo 42no7960oxY0U9v4DZjGwQhfPHYTcp3mfk/UrqCnXHmBdlzRmmn/CI18Wnk32W5trLi8W9 jeIwBAmJdbQqtVERLg7uy4OUiTpcMMc= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=none; spf=pass (imf13.hostedemail.com: domain of chenhuacai@loongson.cn designates 114.242.206.163 as permitted sender) smtp.mailfrom=chenhuacai@loongson.cn; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1739369819; a=rsa-sha256; cv=none; b=HlivLdaZHeDJRumrMppaWanXinhjl3MmRT+B19KePYt43hEioiKBtaWexd+nA0YKpQRzpD G390J5Ejswzn+rAzEvoe+R6R6QHTX8JvBcuJzF4haV9hFj9fF1GUPwHuKY4jpFU3wyb7+0 ZNaZZFvWspEGos9H0VmyCe4kFYfGvDs= Received: from loongson.cn (unknown [223.64.68.156]) by gateway (Coremail) with SMTP id _____8CxdXBWraxnMy1zAA--.3925S3; Wed, 12 Feb 2025 22:16:54 +0800 (CST) Received: from localhost.localdomain (unknown [223.64.68.156]) by front1 (Coremail) with SMTP id qMiowMAxHsdTraxnd_ANAA--.3470S2; Wed, 12 Feb 2025 22:16:54 +0800 (CST) From: Huacai Chen To: Huacai Chen , Andrew Morton Cc: linux-mm@kvack.org, "Rafael J . Wysocki" , Pavel Machek , linux-pm@vger.kernel.org, GONG Ruiqi , Xiu Jianfeng , Huacai Chen , stable@vger.kernel.org, Yuli Wang Subject: [PATCH] mm/slab: Initialise random_kmalloc_seed after initcalls Date: Wed, 12 Feb 2025 22:16:48 +0800 Message-ID: <20250212141648.599661-1-chenhuacai@loongson.cn> X-Mailer: git-send-email 2.47.1 MIME-Version: 1.0 X-CM-TRANSID: qMiowMAxHsdTraxnd_ANAA--.3470S2 X-CM-SenderInfo: hfkh0x5xdftxo6or00hjvr0hdfq/ X-Coremail-Antispam: 1Uk129KBj93XoW7ZrykCrW5JFy5Cw1DKr43XFc_yoW8AFyUpr Z2gF1jqrykAr4Uur47C3y8urn5ZaykGFW7CwsIkwnrZw1UAw10gFWkXFsF9rn3XFW5JayS vFyvkFn0ya45ZwcCm3ZEXasCq-sJn29KB7ZKAUJUUUU5529EdanIXcx71UUUUU7KY7ZEXa sCq-sGcSsGvfJ3Ic02F40EFcxC0VAKzVAqx4xG6I80ebIjqfuFe4nvWSU5nxnvy29KBjDU 0xBIdaVrnRJUUUyEb4IE77IF4wAFF20E14v26r1j6r4UM7CY07I20VC2zVCF04k26cxKx2 IYs7xG6rWj6s0DM7CIcVAFz4kK6r1Y6r17M28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48v e4kI8wA2z4x0Y4vE2Ix0cI8IcVAFwI0_JFI_Gr1l84ACjcxK6xIIjxv20xvEc7CjxVAFwI 0_Jr0_Gr1l84ACjcxK6I8E87Iv67AKxVW0oVCq3wA2z4x0Y4vEx4A2jsIEc7CjxVAFwI0_ GcCE3s1le2I262IYc4CY6c8Ij28IcVAaY2xG8wAqjxCEc2xF0cIa020Ex4CE44I27wAqx4 xG64xvF2IEw4CE5I8CrVC2j2WlYx0E2Ix0cI8IcVAFwI0_Jrv_JF1lYx0Ex4A2jsIE14v2 6r1j6r4UMcvjeVCFs4IE7xkEbVWUJVW8JwACjcxG0xvY0x0EwIxGrwCF04k20xvY0x0EwI xGrwCFx2IqxVCFs4IE7xkEbVWUJVW8JwC20s026c02F40E14v26r1j6r18MI8I3I0E7480 Y4vE14v26r106r1rMI8E67AF67kF1VAFwI0_Jw0_GFylIxkGc2Ij64vIr41lIxAIcVC0I7 IYx2IY67AKxVWUJVWUCwCI42IY6xIIjxv20xvEc7CjxVAFwI0_Jr0_Gr1lIxAIcVCF04k2 6cxKx2IYs7xG6r1j6r1xMIIF0xvEx4A2jsIE14v26r1j6r4UMIIF0xvEx4A2jsIEc7CjxV AFwI0_Jr0_GrUvcSsGvfC2KfnxnUUI43ZEXa7IU8zwZ7UUUUU== X-Rspam-User: X-Rspamd-Queue-Id: 2B20F2000B X-Stat-Signature: me8513j3c8gbc5xrefoqqbnjs1tduou4 X-Rspamd-Server: rspam03 X-HE-Tag: 1739369817-55398 X-HE-Meta: U2FsdGVkX19Y5CZdgw/4haJ9CzzB0BJrjbuNFYKxfG+si0hbvwOQHokJcTY9sQUKvbi5bZk7ZreFlnWmwmGNb04IcsMU1EzRDXpv2eYwTJJ2n9nPvZq9oVyMjCq98O0hy53w+ctzC6Joll4jRw1NhqDWprqsZijOKhYKG70gbe73AvYiiYX0MCLDdKMnkcQslD01IiObPrQ+6x6BZ1WTCZXTAfse0KadaMDSDipE6WiEGqkidjV3qmj+uhEHqourQvBqIciouEtxKUzADcAZCFmZjBWen9MIVQN52lNBBYUUKdArbs71YmmVlAFdWepYgW52AMF/aAr/O+OfLFVnMS6813mWsmMS9nJHiBaPju+7EC6XGElD5vpKTGpw93klv876NjvuUSn44s3oLMIxRH8s3+Wnxd/A+8O1R5DaN6//hFPhPx9j0aF9JFY+VBuwh8yBpTZNyz1RlvkzFq8zFkLufHbcxOb38xmwJvlMKVr3azhqdJ9YabJ97xFkWxjcUc8xHfX22mw/5+zG9qBXYchXSD08Vuf3Tu43VasN4H9rpH8nAk04qOlxHGWw/ihgxW38glhTKS5ZCJaWegCsYO7dMFOLi5EXnB3D1O5l//SGg74ihJlKW3KsWigk2JM2eHa2aaskvztkds8mNX4nwOkIVwC5sZYkhGSKpTty6PzZusDE7z3M+chqEJVpPTWtMhcv3LsiuDO6YjvhvtoPCLKXCwClmNM6aHkqFQ0ZDahoUDAjx/wjKycg9Qtz2NoH0xDXBaghDN74qNv73HL8GF7/xWIjdK87SFmNU8+T+Z56AVzTOMJ/ocBDcHJ55cZ22rfLCbabTvenFi5b89gRMjsOp6t0WEDSe63B/k9F2LiucHCP6ySBmTeqPrAOCtGtjzsFp7KEZ80g9wlLpIskLqzl/UEsxuAZtFiUz4kDOHaZx3Kx+p+XNJN8HNJ8GYStbknV/pzf1yvEVwDnq4M 0PZTWe5N H1EzJjOdH6Ce0Kn0nwBrpzbZx0ugnUlWEEUJsb8oZv449cO77SJqznjrlej61uQwknJt5Ge1Zy14GnvaYVIbYeOxmaHulZNXkPoGMp8MJ09E+mJvvWwRfHxq11qfiS+a11eTkPsF5MC9C3FT7vNa42fz3nQ9sNPPxsodkS5StVmU6tPo= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Hibernation assumes the memory layout after resume be the same as that before sleep, but CONFIG_RANDOM_KMALLOC_CACHES breaks this assumption. At least on LoongArch and ARM64 we observed failures of resuming from hibernation (on LoongArch non-boot CPUs fail to bringup, on ARM64 some devices are unusable). software_resume_initcall(), the function which resume the target kernel is a initcall function. So, move the random_kmalloc_seed initialisation after all initcalls. Cc: stable@vger.kernel.org Fixes: 3c6152940584290668 ("Randomized slab caches for kmalloc()") Reported-by: Yuli Wang Signed-off-by: Huacai Chen --- init/main.c | 3 +++ mm/slab_common.c | 3 --- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/init/main.c b/init/main.c index 2a1757826397..1362957bdbe4 100644 --- a/init/main.c +++ b/init/main.c @@ -1458,6 +1458,9 @@ static int __ref kernel_init(void *unused) /* need to finish all async __init code before freeing the memory */ async_synchronize_full(); +#ifdef CONFIG_RANDOM_KMALLOC_CACHES + random_kmalloc_seed = get_random_u64(); +#endif system_state = SYSTEM_FREEING_INITMEM; kprobe_free_init_mem(); ftrace_free_init_mem(); diff --git a/mm/slab_common.c b/mm/slab_common.c index 4030907b6b7d..23e324aee218 100644 --- a/mm/slab_common.c +++ b/mm/slab_common.c @@ -971,9 +971,6 @@ void __init create_kmalloc_caches(void) for (i = KMALLOC_SHIFT_LOW; i <= KMALLOC_SHIFT_HIGH; i++) new_kmalloc_cache(i, type); } -#ifdef CONFIG_RANDOM_KMALLOC_CACHES - random_kmalloc_seed = get_random_u64(); -#endif /* Kmalloc array is now usable */ slab_state = UP;