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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id F3A4BC4332F for ; Wed, 1 Nov 2023 00:14:01 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4C9068D002A; Tue, 31 Oct 2023 20:14:01 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 479778D0003; Tue, 31 Oct 2023 20:14:01 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3683C8D002A; Tue, 31 Oct 2023 20:14:01 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 25EAF8D0003 for ; Tue, 31 Oct 2023 20:14:01 -0400 (EDT) Received: from smtpin29.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id EA980A0321 for ; Wed, 1 Nov 2023 00:14:00 +0000 (UTC) X-FDA: 81407462640.29.D35ECFA Received: from gentwo.org (gentwo.org [62.72.0.81]) by imf01.hostedemail.com (Postfix) with ESMTP id 4705740016 for ; Wed, 1 Nov 2023 00:13:59 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=none; spf=pass (imf01.hostedemail.com: domain of cl@gentwo.org designates 62.72.0.81 as permitted sender) smtp.mailfrom=cl@gentwo.org; dmarc=pass (policy=reject) header.from=gentwo.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1698797639; 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-type:content-transfer-encoding:in-reply-to: references; bh=R9k78baKr+/6s7dfSjAB/rx59gOpRrk9wxbh41WYRJQ=; b=6LDIKFnGSTGkMAwdCYEdhY3hGcm/WAopcE+8ZGww/GHyAUCpRTL5Wa/sJjkyXR+yqfnDxF SkahiXBQhsBwv0AIZtPR8TI8I7Xocz+8dDhWKJ3fojUSEwlue9fAxTm7b5fR7I/xjMEBAS ykifE8rUlNkGXum4Q6WsgmHKLSrQPeY= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1698797639; a=rsa-sha256; cv=none; b=IlVwteAN0Rdr63ySVdlT5oCEsAoQvE1KBSO1scxUQASP63aZkIshJ3Lk7ea8r9cI51M7f2 9S4A8l2ftqBiu9Ujem0ERNMoPwZYnp3MYkbnLxvCUzUInSEgvYIFABAOd7oTLM3isPUrk2 l+sm307zGyKfoC2lvxR0sOCFkH1pLzw= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=none; spf=pass (imf01.hostedemail.com: domain of cl@gentwo.org designates 62.72.0.81 as permitted sender) smtp.mailfrom=cl@gentwo.org; dmarc=pass (policy=reject) header.from=gentwo.org Received: by gentwo.org (Postfix, from userid 1003) id C2C3048F2E; Tue, 31 Oct 2023 17:13:57 -0700 (PDT) Received: from localhost (localhost [127.0.0.1]) by gentwo.org (Postfix) with ESMTP id C19D248EED; Tue, 31 Oct 2023 17:13:57 -0700 (PDT) Date: Tue, 31 Oct 2023 17:13:57 -0700 (PDT) From: "Christoph Lameter (Ampere)" To: Matthew Wilcox cc: linux-mm@kvack.org Subject: folio_alloc_buffers() doing allocations > order 1 with GFP_NOFAIL Message-ID: <6b42243e-f197-600a-5d22-56bd728a5ad8@gentwo.org> MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset=US-ASCII X-Rspamd-Queue-Id: 4705740016 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: bxtishokexmt8zge88pjstuz5jqqh8m9 X-HE-Tag: 1698797639-82092 X-HE-Meta: U2FsdGVkX1/cvwzMhNkCoE/BJ+Oe+4H0qNJaN5IUF4kPVmIrONeCedkXVDBaFlieiOvkm7OHV8YELNhQrkjf53j7evYx0cSNCbGDC4d8I2HmTICs5M19uK2UwQXyHEq9wz8wKMM0y6/CIQMxDuVGYgnKxLU+/NxgkXB0T73drw2SqlxZKbuZfig8ACKzvQ7MKr2q4SoI9IU0sc6QpIjXzNYb4jZYB5NpgcYeEj4s5ErwwZzcr36Hptwo1dS5bH7UicjRjfz2A7xZms8+0gIQ1uTZCC8uShZyiclVx+1ZKjAutGaU4xFdYW8yAbjYV2mZ0BftQybtJrIqh/vOgLI5iFf2ROdK/lK+K3oWL8nCFB+B1hZTy4qSxRnuyU+IJNZ39MkO4rWfKJ4s7dG9NPzkLRMv6QRPxyoR7iCFFQY1TLK1YMI6zig81fkq8nLVTbLJC9olO1Rtl06VKzsZGoyta0/hmplqTyCQe10FIZRSa7Ue4ylrlbmpnoxFnS5rtj3FAApFbvWw6hi5KO723djXDClN67TsY1uYdk4nRkODm1akHXHVdxc3FXvPWcqVyMsoIhgbA6vQcmpJFtybWFHEBzqH9ryvLgwxYqVZKYHLWYBwv5mDZkBRp5u70fXktMpyb5ZofZ0Yz5ll1rZip8xH6dAEKMMLIT1i3n61Fi7hmmIKZO1gAwtLRXhR/fvgwrVh/irA9O9bOoQjwOB33YEmoLizZWSG2RczdEtqlAcqME6ZMFfRJa0ohihV2A9N74zOe73pWCL/iq9yNO9TygOvk5k7TyZH6L1jPTzZFcasnjq5+IOHjlFOuAyZz8tXR6Ha/BAuWD5q1HN3JrvmXB5t4JeeWHzFD8zfsfjMDkafizm1QECDsib41n2seVYJP6QQRReFo3qsJCM+XceNJqbD95eVKDar0//ebL/Y9McQiFHf8Awaew2+eHuQ0Kj0SctcxQ6PSJ0kzlz8XjcRB9n BfYrST5E 1ZIioX7QVpzxRa0KMxVD3aD+4HmLuqh8KODe9tIdlHdhsavNn0Bc6A4MTU7JuklXUGe1ZU1ezTAn2Bj+a+NWNrAge2rnSgQ/tOVaBznMULDsDSRE= 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: Hi Matthew, There is a strange warning on bootup related to folios. Seen it a couple of times before. Why does this occur? Activating swap 20.765039] ------------[ cut here ]------------ [ 20.772475] WARNING: CPU: 35 PID: 1152 at mm/page_alloc.c:2774 get_page_from_freelist+0x214/0x17f8 [ 20.784194] Modules linked in: [ 20.784197] CPU: 35 PID: 1152 Comm: swapon Not tainted 6.6.0-base #109 [ 20.784202] Hardware name: WIWYNN Mt.Jade Server System B81.03001.0014/Mt.Jade Motherboard, BIOS 2.10.20230517 (SCP: 2.10.20230517) 2023/05/17 [ 20.808072] pstate: 20400009 (nzCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) [ 20.808075] pc : get_page_from_freelist+0x214/0x17f8 [ 20.808080] lr : get_page_from_freelist+0xaa8/0x17f8 [ 20.808084] sp : ffff800094623510 [ 20.808085] x29: ffff800094623510 x28: 0000000000000000 x27: ffff083f7fffe700 [ 20.808089] x26: 0000000000000000 x25: 0000000000000004 x24: ffff083f7fffe700 [ 20.808093] x23: ffff083f7fffe700 x22: 0000000000012dd8 x21: ffff8000828cf000 [ 20.808096] x20: 0000000000000002 x19: 0000000000000801 x18: 0000000000000000 [ 20.808100] x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000 [ 20.808102] x14: 0000000000000000 x13: ffff07ff917f0c7b x12: 0000000000000005 [ 20.808105] x11: 0000000000000000 x10: ffff083f7fffe8f0 x9 : 0000000000000000 [ 20.808108] x8 : ffff083f7fffe8e0 x7 : ffff083f7fffe8d0 x6 : ffff083f7fffe700 [ 20.878104] x5 : ffff083f7fffe910 x4 : fffffc1fff3e1708 x3 : ffff083f7fffe900 [ 20.878107] x2 : ffff083f7fffe7d0 x1 : ffff800094623710 x0 : 0000000000008000 [ 20.878110] Call trace: [ 20.878111] get_page_from_freelist+0x214/0x17f8 [ 20.878116] __alloc_pages+0x17c/0xe08 [ 20.878120] __kmalloc_large_node+0xa0/0x170 [ 20.878123] __kmalloc_node+0x120/0x1d0 [ 20.878125] memcg_alloc_slab_cgroups+0x48/0xc0 [ 20.878128] memcg_slab_post_alloc_hook+0xa8/0x1c8 [ 20.878132] kmem_cache_alloc+0x18c/0x338 [ 20.878135] alloc_buffer_head+0x28/0xa0 [ 20.878138] folio_alloc_buffers+0xe8/0x1c0 [ 20.878141] folio_create_empty_buffers+0x2c/0x1e8 [ 20.878143] folio_create_buffers+0x58/0x80 [ 20.878145] block_read_full_folio+0x80/0x450 [ 20.878148] blkdev_read_folio+0x24/0x38 [ 20.956921] filemap_read_folio+0x60/0x138 [ 20.956925] do_read_cache_folio+0x180/0x298 [ 20.965270] read_cache_page+0x24/0x90 [ 20.965273] __arm64_sys_swapon+0x2e0/0x1208 [ 20.965277] invoke_syscall+0x78/0x108 [ 20.965282] el0_svc_common.constprop.0+0x48/0xf0 [ 20.981702] do_el0_svc+0x24/0x38 [ 20.993773] el0t_64_sync_handler+0x100/0x130 [ 20.993776] el0t_64_sync+0x190/0x198 [ 20.993779] ---[ end trace 0000000000000000 ]--- [ 20.999972] Adding 999420k swap on /dev/mapper/eng07sys--r113--vg-swap_1. Priority:-2 extents:1 across:999420k SS This is due to folio_alloc_buffers() setting GFP_NOFAIL: struct buffer_head *folio_alloc_buffers(struct folio *folio, unsigned long size, bool retry) { struct buffer_head *bh, *head; gfp_t gfp = GFP_NOFS | __GFP_ACCOUNT; long offset; struct mem_cgroup *memcg, *old_memcg; if (retry) gfp |= __GFP_NOFAIL; Then rmqueue() checks for order > 1 and GFP_NOFAIL static inline struct page *rmqueue(struct zone *preferred_zone, struct zone *zone, unsigned int order, gfp_t gfp_flags, unsigned int alloc_flags, int migratetype) { struct page *page; /* * We most definitely don't want callers attempting to * allocate greater than order-1 page units with __GFP_NOFAIL. */ WARN_ON_ONCE((gfp_flags & __GFP_NOFAIL) && (order > 1));