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 475BBD43367 for ; Thu, 7 Nov 2024 14:23:45 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id AC3E76B0083; Thu, 7 Nov 2024 09:23:44 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id A71EC6B0085; Thu, 7 Nov 2024 09:23:44 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9396B6B008A; Thu, 7 Nov 2024 09:23:44 -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 74F436B0083 for ; Thu, 7 Nov 2024 09:23:44 -0500 (EST) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 96E9640775 for ; Thu, 7 Nov 2024 14:23:43 +0000 (UTC) X-FDA: 82759516476.30.1D1887B Received: from mail-qv1-f52.google.com (mail-qv1-f52.google.com [209.85.219.52]) by imf16.hostedemail.com (Postfix) with ESMTP id 1298418001D for ; Thu, 7 Nov 2024 14:23:05 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=cmpxchg-org.20230601.gappssmtp.com header.s=20230601 header.b=bzmblvxq; spf=pass (imf16.hostedemail.com: domain of hannes@cmpxchg.org designates 209.85.219.52 as permitted sender) smtp.mailfrom=hannes@cmpxchg.org; dmarc=pass (policy=none) header.from=cmpxchg.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1730989336; 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:in-reply-to:references:references:dkim-signature; bh=5Y8bIIYpNFjI/KTA7i4uS/nCeffwjvh7yAuAPrrYwVs=; b=ZEDZ6hUuflC0rsIv5U7vZLrqUMO5nK/JvOG203N/C2fTis4wO0p5VwsQZM1Z6Qd0Aj4fQv 8R1zS6KrmvNlxCJ3t2cha8HxnZ1PZt8S/fP8B1ZIvBh5OZNwqF6bMwVC4Y8UK8IQ6M8fGH 2MLh/fr99xjaX3LtsQY5CA7Y1To2XIE= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1730989336; a=rsa-sha256; cv=none; b=10uKrEPxnDjEY1V5QbK/WQnQ7XKscgpycAnol8ew7oXu0imhoSf3Nti+U39k8XUO1SjyAt HY9KYzrO5viu/YF3ET/pW94F9/nIvCptZffn/qT75qSR09kk7PFWoiYTLIRCNPvhZ6a03p mA1JzJPrcLcQLE69GrgbMZjbbWNG4G4= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=cmpxchg-org.20230601.gappssmtp.com header.s=20230601 header.b=bzmblvxq; spf=pass (imf16.hostedemail.com: domain of hannes@cmpxchg.org designates 209.85.219.52 as permitted sender) smtp.mailfrom=hannes@cmpxchg.org; dmarc=pass (policy=none) header.from=cmpxchg.org Received: by mail-qv1-f52.google.com with SMTP id 6a1803df08f44-6cbe53a68b5so6135556d6.1 for ; Thu, 07 Nov 2024 06:23:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cmpxchg-org.20230601.gappssmtp.com; s=20230601; t=1730989420; x=1731594220; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=5Y8bIIYpNFjI/KTA7i4uS/nCeffwjvh7yAuAPrrYwVs=; b=bzmblvxquQEOqfCSB3gFzAGxdjTexjVR/2URCsHPPEGe3AVlSM+Tq4JV/yWECg+j1g 8JDB16dgT8UPduj8H7vZzrH8Y1bzzivcxAdsC4Bj9UBNrIwTpHxFV41CRpimXmbDngdX jCrPLiPtWmPdZTFs//QgDFEPMULS+5eJciW6urwDRWaTTPn/ZXpuKAJmCFBnD7Hqt1oW W+7WRGbgc1YeirSQldEgXhnOTzzmu5AD86+voRMe1V8dlZY70pVu6nAs658AWAPcBcYE X9LWpO9IlY8UqkGsaq/VpEPW6fWBa4DkpPnWVfXr5xjDha4fWk5MoTJA3grYB+7alLtL HSFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1730989420; x=1731594220; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=5Y8bIIYpNFjI/KTA7i4uS/nCeffwjvh7yAuAPrrYwVs=; b=die5GJwqmQJ0oVAIgY5s1AZX6rxA5MxafYH8eiJaX10sYrkws1fJYg5RpyieUEn70O 3G4s4n5C+BzOCeDg7u+2KWp2uMKbyi9ZJ7oVG1uRD58jIvoXBzrm0dLOdAjl2wYXE0JB e0GjjnXPbsvErnCdPGw25tWPajIogPVBdD/HvNqxBXa+tlctdIyCzSNcxQKGDt53x3bz N3G8hpPRJxN+20nfEHLJfSHjYdYJd9A/OE1m3xiCSc/cvXW3t7txiiD/9X/L175OZdBX N5GJds+kB0IgMPHrEbCHenTry3ZIV6RCC7Oe0ft5cAl7CdwuCg5T0xRkDgu+Of4C5X2Q ZlVg== X-Forwarded-Encrypted: i=1; AJvYcCVJcu2JdXNyrfKBHw3ifTCVgnKvlQLjKzq0AI0RB36+oEABqAtlsIw9EcJD1dkH76Wz+1rqNxP4uw==@kvack.org X-Gm-Message-State: AOJu0YyOpyCH0YK0g7s5553pipYvK8YWQ2WlFJRl9nYO9W3ZPQq8wNp3 mviGuX4hpFRBAwXSDBSPJz89K557x0MTsoLsdYLsCNptZw6bBvOcsAlGjnf0TtE= X-Google-Smtp-Source: AGHT+IHB9FN+0AccVytMwlmLbuOHJscvcbqFSfLY7CfaYuMIuY7L99f9F7tCKuggPZta0SDkkCr1YQ== X-Received: by 2002:a05:6214:1316:b0:6cb:f195:22c7 with SMTP id 6a1803df08f44-6d39d028537mr1233866d6.38.1730989420389; Thu, 07 Nov 2024 06:23:40 -0800 (PST) Received: from localhost ([2603:7000:c01:2716:da5e:d3ff:fee7:26e7]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-6d39643b98dsm7883546d6.82.2024.11.07.06.23.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Nov 2024 06:23:39 -0800 (PST) Date: Thu, 7 Nov 2024 09:23:35 -0500 From: Johannes Weiner To: syzbot Cc: akpm@linux-foundation.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, syzkaller-bugs@googlegroups.com, Kairui Song Subject: Re: [syzbot] [mm?] general protection fault in swap_reclaim_full_clusters Message-ID: <20241107142335.GB1172372@cmpxchg.org> References: <672ac50b.050a0220.2edce.1517.GAE@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <672ac50b.050a0220.2edce.1517.GAE@google.com> X-Rspamd-Server: rspam10 X-Stat-Signature: mr9c6ih4phg1fse6baifur7qt7xhpuhk X-Rspamd-Queue-Id: 1298418001D X-Rspam-User: X-HE-Tag: 1730989385-278908 X-HE-Meta: U2FsdGVkX18GD9rlUbf3H+ODDZDXPq7WAUdgUcfDFA8O28y62ollw1pB2ytdyfwXiwhfMe87cbVO3xr+H40TqPgHNTj/d9obB0G0ZmPFwSR/NxLaWNm8If+48wTZ3zlQWSYU8ZJzCl0UoahevykgTi5l9OB/cxrQNH3Fi9mMss/T7xPPNqyx8SRGxGRoeMUc5uzmMgPrR/7S09IHtvYxDPtXvZc4gPWk73uIQHrOV1ZG+/9VXD0Y2WN5j58WiNBOb0GymsehTil4a1OzNUhib79+SawC0wqGOkiptumjso3/WUqM9C5uc0IjnCh7rxnjkzmeaGZGoqi9ZriJ7hlLzQbseIHzaUSmjJs9hFBTECFyvhmeLmEZHHUdArx1o7yp1ARMQOo2rQUzSe6PnIMGQorghjJ5ENWA7ffFs4lUT2n3pu5ULQ6Un98ZdadNWwXgSiqP1hBuWEwGDxu836hx5l6HzcGRayOnVBgfYiVlVNw7G3vRGVwVpzfccNTE0jDIHOnL/0IZQGlsM+QzCsa9LD6+bvKjT8Ppgu7zZdD4QTGjVLhUHR1ULko4qu22KuLTWvGRbyNlwVPB+Nn6oK922Uzu96u1xWivM4+/AxkJ22vZstIbo4pUk61ssYMLPYnz1PcfuaVVDQzuBMMH+qW2lONX4zL+qggSTn+BT7wVntGsMitQbXw9JIv+pcZTLRSYQxuoT5J4tnH5XnhT3t3aERx9lGXJTUXMGMKqzF6IpYMt0EzQWatO7dskhrwNdiyqvOzqHK0TwJNTdLMCEc3I2IthKVF7CrrPUwUFO0/4WTRaTUhvtGjvokNnnFK1avh3XJcLJe2/AxWwbe64KuGpjF9iFGgYdSIy4VghAwSlKPC8HTFXHBRI/8q6US1U8d+CTs7LLZl7xyIRgrx0eQNj3M7N747ruidoFDYiUo1zkIwZpLm0/z9CsKNM306ggo1pzS0EfLjH++l2O0QNbgt WO6jlors ngrgmqV+0NfTnUUbcaupXmU3vLD7TkI8lntb5EXHP7xjrP8FB5dubXNBnd6ZNni5IQODBngCXIZu+nCZRQaSTqJcbfYC3UrZ0k6N9TORnH43q+gRdn9SDIBrGi4CaQRBwN/khfgdnOLPJG3qmBqN3EYu6MS7Tff2AEEC4IhGtd7XY2/rZclRtG16YfqbZEvb49AqXxTya8DawYw1FdmFZZS+TyaiPfDUWZa9LTWU+lQzK5MculPftDVWha3R7X3gucKE9uhZIw+Y9KFxxQ/QQN9DSe0Qjuofji75mqqMfwhvQ+97nHMExJs6blzKPf8G/KbOVBmu/XfH/JJRKuj4VsZv9GRgMNbjQs5FR8kx5Zw9T3/FFlb3yr1KBRwpdYOCdSRoyLiFXczTJXbFNevgNurkmXsehV+mgVU3PeXMZkxjr6yi4VgLl4pfrZEzx8zcUwQUpcjBfQXzNvT4k9a3cGuzREjGKiq+b0jHafZq96LpLmQ9fwdlHC9MA6CvrAyyuPpy4g+77ownw5n27SuAi8ArxbLqy+hW4GkY7F1Eh7qD0v6VwKqUUmXkZfrt4Jez15h7GGdrPwgQDqKaggJyb5oldVubhW9Ip4RBhJs30EtR4JjgP3ItauKWwqHccp+YdztcVh0X4iefnaclTsoKccmfqZ6pj14rsd/D+2x5BYASACFYADAAtH+15yRTvz54LR9LQOxoeFD5vLu1C5udw6z99TWindw8H+xeaSLSxioP7gCxQYYl3AjDL6f7u7IDUoSIwsaki/RvANRKngheajDrCcab6LEsitXm6NRLgC7t/qV9HTjzWzXbAtlDNuV6mxaNLESzxzQ618xX7KEU0ucwBVi9rw/fToia+fCT3S0ORtu6/tuZGbgjD+mRVbj/o2cM5t7iPpP4/kCJChMzXbd7Xlr13xRxRByUK/nGniYKVg3iB+cDM7px7Z/zQBIW1ak/qEdZPKeIfGp4dPWdcoUTJ0Sn7 sE2Q9Uxz /bEGHsgoHBt62ORuY9DRG6huxXCO+OCCXuoGsve6SmmCVPHHOAjG5+RUG8a+FwuyX2E49+HlHBkhf4bxT/yC/GIZ5scFDn1rzdmP1IYP0WJGNB92mMTsTpjL80FHQJp75CgRo6SFAJjyQRT8Glztsr5ppno1xNwDiCW8PIwzUFttHQc4ALBkeXBTq4CjodJXzLRKV+NeYQ7V2StLKj3MkuL8yZXze+jZN+8s3FS23TnpkpsQEGcVeHpVk9Nwg8MD 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: On Tue, Nov 05, 2024 at 05:23:23PM -0800, syzbot wrote: > Hello, > > syzbot found the following issue on: > > HEAD commit: 59b723cd2adb Linux 6.12-rc6 > git tree: upstream > console output: https://syzkaller.appspot.com/x/log.txt?x=1076c740580000 > kernel config: https://syzkaller.appspot.com/x/.config?x=b77c8a55ccf1d9e2 > dashboard link: https://syzkaller.appspot.com/bug?extid=078be8bfa863cb9e0c6b > compiler: gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40 > syz repro: https://syzkaller.appspot.com/x/repro.syz?x=167aa1f7980000 > C reproducer: https://syzkaller.appspot.com/x/repro.c?x=110d86a7980000 > > Downloadable assets: > disk image: https://storage.googleapis.com/syzbot-assets/699c7100a12a/disk-59b723cd.raw.xz > vmlinux: https://storage.googleapis.com/syzbot-assets/74524a66d4bc/vmlinux-59b723cd.xz > kernel image: https://storage.googleapis.com/syzbot-assets/e81ed2bba0ef/bzImage-59b723cd.xz > > IMPORTANT: if you fix the issue, please add the following tag to the commit: > Reported-by: syzbot+078be8bfa863cb9e0c6b@syzkaller.appspotmail.com > > Oops: general protection fault, probably for non-canonical address 0xdffffc0000000001: 0000 [#1] PREEMPT SMP KASAN PTI > KASAN: null-ptr-deref in range [0x0000000000000008-0x000000000000000f] > CPU: 1 UID: 0 PID: 51 Comm: kworker/1:1 Not tainted 6.12.0-rc6-syzkaller #0 > Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024 > Workqueue: events swap_reclaim_work > RIP: 0010:__list_del_entry_valid_or_report+0x20/0x1c0 lib/list_debug.c:49 > Code: 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 48 89 fe 48 83 c7 08 48 83 ec 18 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <80> 3c 02 00 0f 85 19 01 00 00 48 89 f2 48 8b 4e 08 48 b8 00 00 00 > RSP: 0018:ffffc90000bb7c30 EFLAGS: 00010202 > RAX: dffffc0000000000 RBX: 0000000000000000 RCX: ffff88807b9ae078 > RDX: 0000000000000001 RSI: 0000000000000000 RDI: 0000000000000008 > RBP: 0000000000000001 R08: 0000000000000001 R09: 0000000000000000 > R10: 0000000000000001 R11: 000000000000004f R12: dffffc0000000000 > R13: ffffffffffffffb8 R14: ffff88807b9ae000 R15: ffffc90003af1000 > FS: 0000000000000000(0000) GS:ffff8880b8700000(0000) knlGS:0000000000000000 > CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 > CR2: 00007fffaca68fb8 CR3: 00000000791c8000 CR4: 00000000003526f0 > DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 > DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 > Call Trace: > > __list_del_entry_valid include/linux/list.h:124 [inline] > __list_del_entry include/linux/list.h:215 [inline] > list_move_tail include/linux/list.h:310 [inline] > swap_reclaim_full_clusters+0x109/0x460 mm/swapfile.c:748 > swap_reclaim_work+0x2e/0x40 mm/swapfile.c:779 > process_one_work+0x958/0x1b30 kernel/workqueue.c:3229 > process_scheduled_works kernel/workqueue.c:3310 [inline] > worker_thread+0x6c8/0xf00 kernel/workqueue.c:3391 > kthread+0x2c1/0x3a0 kernel/kthread.c:389 > ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147 > ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244 > > Modules linked in: > ---[ end trace 0000000000000000 ]--- > RIP: 0010:__list_del_entry_valid_or_report+0x20/0x1c0 lib/list_debug.c:49 > Code: 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 48 89 fe 48 83 c7 08 48 83 ec 18 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <80> 3c 02 00 0f 85 19 01 00 00 48 89 f2 48 8b 4e 08 48 b8 00 00 00 > RSP: 0018:ffffc90000bb7c30 EFLAGS: 00010202 > RAX: dffffc0000000000 RBX: 0000000000000000 RCX: ffff88807b9ae078 > RDX: 0000000000000001 RSI: 0000000000000000 RDI: 0000000000000008 > RBP: 0000000000000001 R08: 0000000000000001 R09: 0000000000000000 > R10: 0000000000000001 R11: 000000000000004f R12: dffffc0000000000 > R13: ffffffffffffffb8 R14: ffff88807b9ae000 R15: ffffc90003af1000 > FS: 0000000000000000(0000) GS:ffff8880b8700000(0000) knlGS:0000000000000000 > CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 > CR2: 00007fffaca68fb8 CR3: 00000000791c8000 CR4: 00000000003526f0 > DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 > DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 > ---------------- > Code disassembly (best guess): > 0: 90 nop > 1: 90 nop > 2: 90 nop > 3: 90 nop > 4: 90 nop > 5: 90 nop > 6: 90 nop > 7: 90 nop > 8: 90 nop > 9: 90 nop > a: f3 0f 1e fa endbr64 > e: 48 89 fe mov %rdi,%rsi > 11: 48 83 c7 08 add $0x8,%rdi > 15: 48 83 ec 18 sub $0x18,%rsp > 19: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax > 20: fc ff df > 23: 48 89 fa mov %rdi,%rdx > 26: 48 c1 ea 03 shr $0x3,%rdx > * 2a: 80 3c 02 00 cmpb $0x0,(%rdx,%rax,1) <-- trapping instruction > 2e: 0f 85 19 01 00 00 jne 0x14d > 34: 48 89 f2 mov %rsi,%rdx > 37: 48 8b 4e 08 mov 0x8(%rsi),%rcx > 3b: 48 rex.W > 3c: b8 .byte 0xb8 > 3d: 00 00 add %al,(%rax) > > This should fix it: --- >From cf580e76e9fc23eab347e232b32d8bc9378a3f4e Mon Sep 17 00:00:00 2001 From: Johannes Weiner Date: Thu, 7 Nov 2024 09:08:36 -0500 Subject: [PATCH] mm: swapfile: fix cluster reclaim work crash on rotational devices syzbot and Daan report a NULL pointer crash in the new full swap cluster reclaim work: > Oops: general protection fault, probably for non-canonical address 0xdffffc0000000001: 0000 [#1] PREEMPT SMP KASAN PTI > KASAN: null-ptr-deref in range [0x0000000000000008-0x000000000000000f] > CPU: 1 UID: 0 PID: 51 Comm: kworker/1:1 Not tainted 6.12.0-rc6-syzkaller #0 > Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024 > Workqueue: events swap_reclaim_work > RIP: 0010:__list_del_entry_valid_or_report+0x20/0x1c0 lib/list_debug.c:49 > Code: 90 90 90 90 90 90 90 90 90 90 f3 0f 1e fa 48 89 fe 48 83 c7 08 48 83 ec 18 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <80> 3c 02 00 0f 85 19 01 00 00 48 89 f2 48 8b 4e 08 48 b8 00 00 00 > RSP: 0018:ffffc90000bb7c30 EFLAGS: 00010202 > RAX: dffffc0000000000 RBX: 0000000000000000 RCX: ffff88807b9ae078 > RDX: 0000000000000001 RSI: 0000000000000000 RDI: 0000000000000008 > RBP: 0000000000000001 R08: 0000000000000001 R09: 0000000000000000 > R10: 0000000000000001 R11: 000000000000004f R12: dffffc0000000000 > R13: ffffffffffffffb8 R14: ffff88807b9ae000 R15: ffffc90003af1000 > FS: 0000000000000000(0000) GS:ffff8880b8700000(0000) knlGS:0000000000000000 > CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 > CR2: 00007fffaca68fb8 CR3: 00000000791c8000 CR4: 00000000003526f0 > DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 > DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 > Call Trace: > > __list_del_entry_valid include/linux/list.h:124 [inline] > __list_del_entry include/linux/list.h:215 [inline] > list_move_tail include/linux/list.h:310 [inline] > swap_reclaim_full_clusters+0x109/0x460 mm/swapfile.c:748 > swap_reclaim_work+0x2e/0x40 mm/swapfile.c:779 The syzbot console output indicates a virtual environment where swapfile is on a rotational device. In this case, clusters aren't actually used, and si->full_clusters is not initialized. Daan's report is from qemu, so likely rotational too. Make sure to only schedule the cluster reclaim work when clusters are actually in use. Link: https://lore.kernel.org/lkml/672ac50b.050a0220.2edce.1517.GAE@google.com/ Link: https://github.com/systemd/systemd/issues/35044 Fixes: 5168a68eb78f ("mm, swap: avoid over reclaim of full clusters") Reported-by: syzbot+078be8bfa863cb9e0c6b@syzkaller.appspotmail.com Reported-by: Daan De Meyer Signed-off-by: Johannes Weiner --- mm/swapfile.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/swapfile.c b/mm/swapfile.c index 46bd4b1a3c07..9c85bd46ab7f 100644 --- a/mm/swapfile.c +++ b/mm/swapfile.c @@ -929,7 +929,7 @@ static void swap_range_alloc(struct swap_info_struct *si, unsigned long offset, si->highest_bit = 0; del_from_avail_list(si); - if (vm_swap_full()) + if (si->cluster_info && vm_swap_full()) schedule_work(&si->reclaim_work); } } -- 2.47.0