lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <202511172149.q8geOAvk-lkp@intel.com>
Date: Mon, 17 Nov 2025 22:07:30 +0800
From: kernel test robot <lkp@...el.com>
To: Ye Bin <yebin@...weicloud.com>, viro@...iv.linux.org.uk,
	brauner@...nel.org, jack@...e.cz, linux-fsdevel@...r.kernel.org
Cc: llvm@...ts.linux.dev, oe-kbuild-all@...ts.linux.dev,
	linux-kernel@...r.kernel.org, yebin10@...wei.com
Subject: Re: [PATCH v2 2/3] sysctl: add support for drop_caches for
 individual filesystem

Hi Ye,

kernel test robot noticed the following build errors:

[auto build test ERROR on viro-vfs/for-next]
[also build test ERROR on linus/master brauner-vfs/vfs.all v6.18-rc6 next-20251117]
[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/Ye-Bin/vfs-introduce-reclaim_icache_sb-and-reclaim_dcache_sb-helper/20251117-193502
base:   https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git for-next
patch link:    https://lore.kernel.org/r/20251117112735.4170831-3-yebin%40huaweicloud.com
patch subject: [PATCH v2 2/3] sysctl: add support for drop_caches for individual filesystem
config: x86_64-allnoconfig (https://download.01.org/0day-ci/archive/20251117/202511172149.q8geOAvk-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251117/202511172149.q8geOAvk-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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202511172149.q8geOAvk-lkp@intel.com/

All errors (new ones prefixed by >>):

>> fs/drop_caches.c:108:8: error: call to undeclared function 'task_stack_page'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     108 |                                                  current_pt_regs(),
         |                                                  ^
   include/linux/ptrace.h:389:27: note: expanded from macro 'current_pt_regs'
     389 | #define current_pt_regs() task_pt_regs(current)
         |                           ^
   arch/x86/include/asm/processor.h:650:39: note: expanded from macro 'task_pt_regs'
     650 |         unsigned long __ptr = (unsigned long)task_stack_page(task);     \
         |                                              ^
   fs/drop_caches.c:119:37: error: call to undeclared function 'task_stack_page'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
     119 |                 syscall_set_return_value(current, current_pt_regs(), 0,
         |                                                   ^
   include/linux/ptrace.h:389:27: note: expanded from macro 'current_pt_regs'
     389 | #define current_pt_regs() task_pt_regs(current)
         |                           ^
   arch/x86/include/asm/processor.h:650:39: note: expanded from macro 'task_pt_regs'
     650 |         unsigned long __ptr = (unsigned long)task_stack_page(task);     \
         |                                              ^
   2 errors generated.


vim +/task_stack_page +108 fs/drop_caches.c

    91	
    92	static void drop_fs_caches(struct callback_head *twork)
    93	{
    94		int ret;
    95		struct super_block *sb;
    96		static bool suppress;
    97		struct drop_fs_caches_work *work = container_of(twork,
    98				struct drop_fs_caches_work, task_work);
    99		unsigned int ctl = work->ctl;
   100		dev_t dev = work->dev;
   101	
   102		if (work->path) {
   103			struct path path;
   104	
   105			ret = kern_path(work->path, LOOKUP_FOLLOW, &path);
   106			if (ret) {
   107				syscall_set_return_value(current,
 > 108							 current_pt_regs(),
   109							 0, ret);
   110				goto out;
   111			}
   112			dev = path.dentry->d_sb->s_dev;
   113			/* Make this file's dentry and inode recyclable */
   114			path_put(&path);
   115		}
   116	
   117		sb = user_get_super(dev, false);
   118		if (!sb) {
   119			syscall_set_return_value(current, current_pt_regs(), 0,
   120						 -EINVAL);
   121			goto out;
   122		}
   123	
   124		if (ctl & BIT(0)) {
   125			lru_add_drain_all();
   126			drop_pagecache_sb(sb, NULL);
   127			count_vm_event(DROP_PAGECACHE);
   128		}
   129	
   130		if (ctl & BIT(1)) {
   131			reclaim_dcache_sb(sb);
   132			reclaim_icache_sb(sb);
   133			count_vm_event(DROP_SLAB);
   134		}
   135	
   136		if (!READ_ONCE(suppress)) {
   137			pr_info("%s (%d): %s: %d %u:%u\n", current->comm,
   138				task_pid_nr(current), __func__, ctl,
   139				MAJOR(sb->s_dev), MINOR(sb->s_dev));
   140	
   141			if (ctl & BIT(2))
   142				WRITE_ONCE(suppress, true);
   143		}
   144	
   145		drop_super(sb);
   146	out:
   147		kfree(work->path);
   148		kfree(work);
   149	}
   150	

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ