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 0C74BC5B549 for ; Wed, 4 Jun 2025 12:52:01 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 9DC058D001A; Wed, 4 Jun 2025 08:52:00 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 98D448D0007; Wed, 4 Jun 2025 08:52:00 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 87C918D001A; Wed, 4 Jun 2025 08:52:00 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 62B9A8D0007 for ; Wed, 4 Jun 2025 08:52:00 -0400 (EDT) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 18453120BF1 for ; Wed, 4 Jun 2025 12:52:00 +0000 (UTC) X-FDA: 83517705600.07.616CDA5 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.15]) by imf25.hostedemail.com (Postfix) with ESMTP id 45E53A0005 for ; Wed, 4 Jun 2025 12:51:57 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=alPgeqFF; spf=none (imf25.hostedemail.com: domain of thomas.hellstrom@linux.intel.com has no SPF policy when checking 192.198.163.15) smtp.mailfrom=thomas.hellstrom@linux.intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749041518; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=RWuZU0hq8h+DQaV1t8L7Nv2TVCFQFW+SYB965fj3W+Q=; b=Eak0HFsarOBIg1Z8IOAlEpd3O6fgskPngTgII1/4OhxZgGEF6MyZfgGKdl+WPKIjYTn0bb n9B10WAJIDAKcRJ1FfDpDTL+QGG2y8mWTqXrPaHNjB2HCegqu4hr7Xyz9ZEYCVkBQUZd8P CGTrdLFuzUWFB2exasN+fADrixAaIzA= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=alPgeqFF; spf=none (imf25.hostedemail.com: domain of thomas.hellstrom@linux.intel.com has no SPF policy when checking 192.198.163.15) smtp.mailfrom=thomas.hellstrom@linux.intel.com; dmarc=pass (policy=none) header.from=intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1749041518; a=rsa-sha256; cv=none; b=saNaFBWbpwbCWl8DN8S2fmYBP3u8+1yEsZzc63txE4iiH8atNPsazlWS6wJaMBgvq/21K5 1rcaRCby5LggT5t/G5b4o/522edBZ2N0dvCdrINuvDzIjhdUJk5p5exsOjDDSzQF7mX9Gy 4g4C3Jk/c8mEngz0OtBUUhzgxHVIO+A= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1749041517; x=1780577517; h=message-id:subject:from:to:cc:date:in-reply-to: references:content-transfer-encoding:mime-version; bh=6DsbJp3huQy2CaTfbfR0iFAPFfUmFh8cI/ypYNf0QLM=; b=alPgeqFFPw5GMGICbtG7UNQGGItZs9B93b/21ibZAlna7cEiFcfVM4is 1cJopRvF736rYmmVknPWdOS74xdF10LfG97Arplnyri+GSIh7rl9z63+j RAFu0IvYUTPkVS4om5SsrMT3gKIjU0veLJh6QA0NsbsMGpbpPl+Br+jlI cU9IsLecRqWUl+b11p0tjNZhi0aa7li0c/W7gw0FgH6M1fsM9QT2CCUa0 862LGhAgEYwUnfVXVy1gDWnk6KsYQhCU7b/yqJCirEv+3JHGI1Reph7/8 OIpGGchxVrNBjIns6vEUzokt66M0YTMCs2CmkiEKdfzlhJPwwgeYPaFeC g==; X-CSE-ConnectionGUID: fzk2L74LSryoFJ2PC15M6A== X-CSE-MsgGUID: w92pq2VhT/SaiDgKG/XM7Q== X-IronPort-AV: E=McAfee;i="6800,10657,11454"; a="51265012" X-IronPort-AV: E=Sophos;i="6.16,209,1744095600"; d="scan'208";a="51265012" Received: from fmviesa007.fm.intel.com ([10.60.135.147]) by fmvoesa109.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jun 2025 05:51:56 -0700 X-CSE-ConnectionGUID: QffnyYzYSLeykVg1A7rVNQ== X-CSE-MsgGUID: SnEBvwtpQSq+xiFL8jzcsA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.16,209,1744095600"; d="scan'208";a="145140884" Received: from pgcooper-mobl3.ger.corp.intel.com (HELO [10.245.245.121]) ([10.245.245.121]) by fmviesa007-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Jun 2025 05:51:53 -0700 Message-ID: <6b3a37712330ec4b17968075f71296717db54046.camel@linux.intel.com> Subject: Re: [PATCH v2] drm/ttm: Fix compile error when CONFIG_SHMEM is not set From: Thomas =?ISO-8859-1?Q?Hellstr=F6m?= To: Steven Rostedt , LKML Cc: Linus Torvalds , Matthew Wilcox , linux-mm@kvack.org, Andrew Morton , Christian Koenig , Huang Rui , Matthew Auld , Matthew Brost , dri-devel@lists.freedesktop.org, Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter Date: Wed, 04 Jun 2025 14:51:49 +0200 In-Reply-To: <20250604085121.324be8c1@gandalf.local.home> References: <20250604085121.324be8c1@gandalf.local.home> Organization: Intel Sweden AB, Registration Number: 556189-6027 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.54.3 (3.54.3-1.fc41) MIME-Version: 1.0 X-Rspamd-Queue-Id: 45E53A0005 X-Stat-Signature: 1obirh8fypwirrswcepa3uf6xajm8og8 X-Rspam-User: X-Rspamd-Server: rspam07 X-HE-Tag: 1749041517-919544 X-HE-Meta: U2FsdGVkX19Dru7CdovD95rGRHzyF9TDzhrAh+wj/mO7ktX+GKzwiFeshdhS4N9VoNmQbQuOM3UoN4xk/ytNj7KO3IjbbVMf3q3tJdpzxycDJRb6btWoXJ9KAFgrkJoMp/MqqrK7VeH9DuxbUZl3WaPbUcRTczXyNMWxULoBXWkSZAzhcXe0V7uhDRVhOkAe/SY02ND6LpD2pEZgfilVmmt3VK0t4N4L620lbcSgOu3G+yqdKOxrtg3fB8bFxuzcOT34FyC0Ma0oU42XlAnriwl3yTpXF/X7XhgtWdw6TpzDzZJgP6W92Ca5UMQw09bD8R72iYHMkVeb/ogw0rXuOE2zaCue7571B7o/xYqgpk1KaDtqbS/M14aJYVQddrBolAZR32MXyqa6JSsZJgyl5zXM9gbDXmX9+Ldqq62HBR6ynlKmDehTct5nKiGTQwXU3TjIXADKZUCF50ZrM43/LklCjVXGnZde6I9xXKVuQDbLOmM0OUqpNciF4vpY+c146nk792iSqyUMdRqiYxLjk9zuQksCxXIgGaOnkHe1jFFfRHke9ektyNL4TIikFF1IkqNEYQKcQpH7NCWZm3JyAAiUvUBtyr8NNtMbw/8lpKTvKPEPxcrqNm2e9DwvxDU6DGzl3kax94I/6M1RWS/IR1Zjrkg+nhxFLZgmMfQFXhDSZwzsk5eot2ZZenCdjR6Kvc3wkCwNVuUbhQlt8yvIiVa0vz6Hn0E8pIyhmSrV62PHGtHpVpBihWqSLTQe6uuB7Vy57BrnQvJkvX4iiibr4EPB12SvjXMH7iApUvF8TbLXLTKT8nbaNuztE+rU6TjMRa5CETNnS1Ds52jqt08pOGEjnTSNXp4iCmblScnkVskU+8TSlYnSw+50p7V5PVJgs5kXt/cJ985hz+isufepDhfczHpPaq4H+jo7bdICWQiXGBXHBhLduwPe0faVQUez6n35sCAxWRggpiN5Zru uVrlWc+A hEsuM9+hBAbj7Ea/dVfV13aZkbai6jmS9eemJJkaWMJjUGQ4n82O0S40Mhbwmq1LRso+wNL9Vm9GmiI4QO/pfWbuqGRNfkaWB6V+8HFvwFR/5xXRtbzg5fx6UgBZEDuyL59t+GtP00nno8KeUds8kYJXw5mgGs+lCK7nARcRYJ7XZoYQ/+tEVMqaVI5n1VGwqjp37Vsr2i/T97XS62VOTKAksQGjvopW5vcr2kSg8dza8qykvSWqSSfmxw6DSPH0to1oIi4+9/lWw71HtVegZfuEQPKF60DxXguASAMBSyNjojv7S9kOIa58nVUekv0FBb74LCo1XlVRqQnjGFccjuFO/+wpMZuUbz2oxQxrdZkd7HgEtwKdluCEDlvJYKam7lLVqzgffS7WPsw2kj0yypWpsdJ5wtYp6tB5d 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 Wed, 2025-06-04 at 08:51 -0400, Steven Rostedt wrote: > From: Steven Rostedt >=20 > When CONFIG_SHMEM is not set, the following compiler error occurs: >=20 > ld: vmlinux.o: in function `ttm_backup_backup_page': > (.text+0x10363bc): undefined reference to `shmem_writeout' > make[3]: *** > [/work/build/trace/nobackup/linux.git/scripts/Makefile.vmlinux:91: > vmlinux.unstripped] Error 1 > make[2]: *** [/work/build/trace/nobackup/linux.git/Makefile:1241: > vmlinux] Error 2 > make[1]: *** [/work/build/trace/nobackup/linux.git/Makefile:248: > __sub-make] Error 2 > make[1]: Leaving directory '/work/build/nobackup/tracetest' > make: *** [Makefile:248: __sub-make] Error 2 >=20 > This is due to the replacement of writepage and calling > swap_writeout() > and shmem_writeout() directly. The issue is that when CONFIG_SHMEM is > not > defined, shmem_writeout() is also not defined. >=20 > The function ttm_backup_backup_page() called mapping->a_ops- > >writepage() > which was then changed to call shmem_writeout() directly. >=20 > Even before commit 84798514db50 ("mm: Remove swap_writepage() and > shmem_writepage()"), it didn't make sense to call anything other than > shmem_writeout() as the ttm_backup deals only with shmem folios. >=20 > Have DRM_TTM config option select SHMEM to guarantee that > shmem_writeout() > is available. >=20 > Link: > https://lore.kernel.org/all/20250602170500.48713a2b@gandalf.local.home/ >=20 > Suggested-by: Hugh Dickins > Fixes: 84798514db50 ("mm: Remove swap_writepage() and > shmem_writepage()") > Signed-off-by: Steven Rostedt (Google) > --- > Changes since v1: > https://lore.kernel.org/all/20250602170500.48713a2b@gandalf.local.home/ >=20 > - Instead of adding a shmem_writeout() stub, just make CONFIG_DRM_TTM > =C2=A0 select CONFIG_SHMEM (Hugh Dickins) >=20 > =C2=A0drivers/gpu/drm/Kconfig | 1 + > =C2=A01 file changed, 1 insertion(+) >=20 > diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig > index f094797f3b2b..ded28c71d89c 100644 > --- a/drivers/gpu/drm/Kconfig > +++ b/drivers/gpu/drm/Kconfig > @@ -188,6 +188,7 @@ source "drivers/gpu/drm/display/Kconfig" > =C2=A0config DRM_TTM > =C2=A0 tristate > =C2=A0 depends on DRM && MMU > + select SHMEM > =C2=A0 help > =C2=A0 =C2=A0 GPU memory management subsystem for devices with multiple > =C2=A0 =C2=A0 GPU memory types. Will be enabled automatically if a > device driver Reviewed-by: Thomas Hellstr=C3=B6m Thanks, Thomas