All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Dave Airlie <airlied@gmail.com>,
	dri-devel@lists.freedesktop.org, linux-mm@kvack.org,
	Johannes Weiner <hannes@cmpxchg.org>,
	Christian Koenig <christian.koenig@amd.com>
Cc: oe-kbuild-all@lists.linux.dev, Dave Chinner <david@fromorbit.com>,
	Kairui Song <kasong@tencent.com>,
	Dave Airlie <airlied@redhat.com>
Subject: Re: [PATCH 13/17] ttm/pool: enable memcg tracking and shrinker.
Date: Mon, 30 Jun 2025 19:59:49 +0800	[thread overview]
Message-ID: <202506301921.i2QYb2bo-lkp@intel.com> (raw)
In-Reply-To: <20250630045005.1337339-14-airlied@gmail.com>

Hi Dave,

kernel test robot noticed the following build errors:

[auto build test ERROR on drm/drm-next]
[cannot apply to akpm-mm/mm-everything linus/master v6.16-rc4 next-20250630]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Dave-Airlie/drm-ttm-use-gpu-mm-stats-to-track-gpu-memory-allocations-v2/20250630-134938
base:   git://anongit.freedesktop.org/drm/drm drm-next
patch link:    https://lore.kernel.org/r/20250630045005.1337339-14-airlied%40gmail.com
patch subject: [PATCH 13/17] ttm/pool: enable memcg tracking and shrinker.
config: riscv-randconfig-001-20250630 (https://download.01.org/0day-ci/archive/20250630/202506301921.i2QYb2bo-lkp@intel.com/config)
compiler: riscv64-linux-gcc (GCC) 8.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250630/202506301921.i2QYb2bo-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202506301921.i2QYb2bo-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/gpu/drm/ttm/ttm_pool.c: In function 'ttm_pool_restore_commit':
>> drivers/gpu/drm/ttm/ttm_pool.c:675:5: error: 'struct page' has no member named 'memcg_data'
       p->memcg_data = 0;
        ^~
   drivers/gpu/drm/ttm/ttm_pool.c: In function 'ttm_pool_backup':
   drivers/gpu/drm/ttm/ttm_pool.c:1142:9: error: 'struct page' has no member named 'memcg_data'
        page->memcg_data = 0;
            ^~


vim +675 drivers/gpu/drm/ttm/ttm_pool.c

   627	
   628	/*
   629	 * When restoring, restore backed-up content to the newly allocated page and
   630	 * if successful, populate the page-table and dma-address arrays.
   631	 */
   632	static int ttm_pool_restore_commit(struct ttm_pool_tt_restore *restore,
   633					   struct file *backup,
   634					   const struct ttm_operation_ctx *ctx,
   635					   struct ttm_pool_alloc_state *alloc)
   636	
   637	{
   638		pgoff_t i, nr = 1UL << restore->order;
   639		struct page **first_page = alloc->pages;
   640		struct page *p;
   641		int ret = 0;
   642	
   643		for (i = restore->restored_pages; i < nr; ++i) {
   644			p = first_page[i];
   645			if (ttm_backup_page_ptr_is_handle(p)) {
   646				unsigned long handle = ttm_backup_page_ptr_to_handle(p);
   647	
   648				if (IS_ENABLED(CONFIG_FAULT_INJECTION) && ctx->interruptible &&
   649				    should_fail(&backup_fault_inject, 1)) {
   650					ret = -EINTR;
   651					break;
   652				}
   653	
   654				if (handle == 0) {
   655					restore->restored_pages++;
   656					continue;
   657				}
   658	
   659				ret = ttm_backup_copy_page(backup, restore->alloced_page + i,
   660							   handle, ctx->interruptible);
   661				if (ret)
   662					break;
   663	
   664				ttm_backup_drop(backup, handle);
   665			} else if (p) {
   666				/*
   667				 * We could probably avoid splitting the old page
   668				 * using clever logic, but ATM we don't care, as
   669				 * we prioritize releasing memory ASAP. Note that
   670				 * here, the old retained page is always write-back
   671				 * cached.
   672				 */
   673				ttm_pool_split_for_swap(restore->pool, p);
   674				copy_highpage(restore->alloced_page + i, p);
 > 675				p->memcg_data = 0;
   676				__free_pages(p, 0);
   677			}
   678	
   679			restore->restored_pages++;
   680			first_page[i] = ttm_backup_handle_to_page_ptr(0);
   681		}
   682	
   683		if (ret) {
   684			if (!restore->restored_pages) {
   685				dma_addr_t *dma_addr = alloc->dma_addr ? &restore->first_dma : NULL;
   686	
   687				ttm_pool_unmap_and_free(restore->pool, restore->alloced_page,
   688							dma_addr, restore->page_caching);
   689				restore->restored_pages = nr;
   690			}
   691			return ret;
   692		}
   693	
   694		ttm_pool_allocated_page_commit(restore->alloced_page, restore->first_dma,
   695					       alloc, nr);
   696		if (restore->page_caching == alloc->tt_caching || PageHighMem(restore->alloced_page))
   697			alloc->caching_divide = alloc->pages;
   698		restore->snapshot_alloc = *alloc;
   699		restore->alloced_pages += nr;
   700	
   701		return 0;
   702	}
   703	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

  parent reply	other threads:[~2025-06-30 12:00 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-06-30  4:49 drm/ttm/memcg/lru: enable memcg tracking for ttm and amdgpu driver Dave Airlie
2025-06-30  4:49 ` [PATCH 01/17] mm: add gpu active/reclaim per-node stat counters (v2) Dave Airlie
2025-06-30  4:49 ` [PATCH 02/17] drm/ttm: use gpu mm stats to track gpu memory allocations. (v2) Dave Airlie
2025-06-30 10:04   ` Christian König
2025-07-01  1:41     ` David Airlie
2025-07-02 16:08   ` Shakeel Butt
2025-06-30  4:49 ` [PATCH 03/17] mm/list_lru: export list_lru_add Dave Airlie
2025-06-30  4:49 ` [PATCH 04/17] ttm/pool: port to list_lru. (v2) Dave Airlie
2025-06-30 10:37   ` kernel test robot
2025-06-30  4:49 ` [PATCH 05/17] ttm/pool: drop numa specific pools Dave Airlie
2025-06-30 10:12   ` Christian König
2025-06-30  4:49 ` [PATCH 06/17] ttm/pool: make pool shrinker NUMA aware Dave Airlie
2025-06-30 10:15   ` Christian König
2025-06-30 21:30     ` David Airlie
2025-06-30  4:49 ` [PATCH 07/17] ttm/pool: track allocated_pages per numa node Dave Airlie
2025-06-30  4:49 ` [PATCH 08/17] memcg: add support for GPU page counters Dave Airlie
2025-07-02 16:06   ` Shakeel Butt
2025-07-03  5:43     ` David Airlie
2025-06-30  4:49 ` [PATCH 09/17] memcg: export memcg_list_lru_alloc Dave Airlie
2025-06-30  4:49 ` [PATCH 10/17] ttm: add a memcg accounting flag to the alloc/populate APIs Dave Airlie
2025-06-30  9:56   ` kernel test robot
2025-06-30 10:20   ` Christian König
2025-07-01  1:46     ` David Airlie
2025-06-30  4:49 ` [PATCH 11/17] ttm/pool: initialise the shrinker earlier Dave Airlie
2025-06-30  4:49 ` [PATCH 12/17] ttm: add objcg pointer to bo and tt Dave Airlie
2025-06-30 10:24   ` Christian König
2025-06-30 21:33     ` David Airlie
2025-07-01  7:22       ` Christian König
2025-07-01  8:06         ` David Airlie
2025-07-01  8:15           ` Christian König
2025-07-01 22:11             ` David Airlie
2025-07-02  7:27               ` Christian König
2025-07-02  7:57                 ` David Airlie
2025-07-02  8:24                   ` Christian König
2025-07-03  5:53                     ` David Airlie
2025-06-30  4:49 ` [PATCH 13/17] ttm/pool: enable memcg tracking and shrinker Dave Airlie
2025-06-30 10:23   ` Christian König
2025-06-30 21:23     ` David Airlie
2025-06-30 11:59   ` kernel test robot [this message]
2025-07-02 16:41   ` Shakeel Butt
2025-06-30  4:49 ` [PATCH 14/17] ttm: hook up memcg placement flags Dave Airlie
2025-06-30  4:49 ` [PATCH 15/17] memcontrol: allow objcg api when memcg is config off Dave Airlie
2025-06-30  4:49 ` [PATCH 16/17] memcontrol: export current_obj_cgroup Dave Airlie
2025-06-30  4:49 ` [PATCH 17/17] amdgpu: add support for memory cgroups Dave Airlie
2025-07-02 16:02   ` Shakeel Butt
2025-07-03  2:53     ` David Airlie
2025-07-03 17:58       ` Shakeel Butt
2025-07-03 18:15         ` Christian König
2025-07-03 20:06           ` Shakeel Butt
2025-07-03 21:22             ` David Airlie
2025-07-04  9:39               ` Christian König
2025-07-01 23:26 ` drm/ttm/memcg/lru: enable memcg tracking for ttm and amdgpu driver Balbir Singh

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202506301921.i2QYb2bo-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=airlied@gmail.com \
    --cc=airlied@redhat.com \
    --cc=christian.koenig@amd.com \
    --cc=david@fromorbit.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=hannes@cmpxchg.org \
    --cc=kasong@tencent.com \
    --cc=linux-mm@kvack.org \
    --cc=oe-kbuild-all@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.