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>] [day] [month] [year] [list]
Message-ID: <202506280351.g258QPQS-lkp@intel.com>
Date: Sat, 28 Jun 2025 03:10:18 +0800
From: kernel test robot <lkp@...el.com>
To: Amery Hung <amery.hung@...edance.com>
Cc: oe-kbuild-all@...ts.linux.dev, linux-kernel@...r.kernel.org,
	Martin KaFai Lau <martin.lau@...nel.org>
Subject: net/sched/bpf_qdisc.c:224:18: sparse: sparse: symbol
 'bpf_qdisc_init_prologue' was not declared. Should it be static?

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   e540341508ce2f6e27810106253d5de194b66750
commit: 7a2dafda950b78611dc441c83d105dfdc7082681 bpf: net_sched: Add a qdisc watchdog timer
date:   2 months ago
config: powerpc64-randconfig-r113-20250627 (https://download.01.org/0day-ci/archive/20250628/202506280351.g258QPQS-lkp@intel.com/config)
compiler: powerpc64-linux-gcc (GCC) 13.3.0
reproduce: (https://download.01.org/0day-ci/archive/20250628/202506280351.g258QPQS-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/202506280351.g258QPQS-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
>> net/sched/bpf_qdisc.c:224:18: sparse: sparse: symbol 'bpf_qdisc_init_prologue' was not declared. Should it be static?
>> net/sched/bpf_qdisc.c:234:18: sparse: sparse: symbol 'bpf_qdisc_reset_destroy_epilogue' was not declared. Should it be static?

vim +/bpf_qdisc_init_prologue +224 net/sched/bpf_qdisc.c

   184	
   185	/* bpf_skb_get_hash - Get the flow hash of an skb.
   186	 * @skb: The skb to get the flow hash from.
   187	 */
 > 188	__bpf_kfunc u32 bpf_skb_get_hash(struct sk_buff *skb)
   189	{
   190		return skb_get_hash(skb);
   191	}
   192	
   193	/* bpf_kfree_skb - Release an skb's reference and drop it immediately.
   194	 * @skb: The skb whose reference to be released and dropped.
   195	 */
   196	__bpf_kfunc void bpf_kfree_skb(struct sk_buff *skb)
   197	{
   198		kfree_skb(skb);
   199	}
   200	
   201	/* bpf_qdisc_skb_drop - Drop an skb by adding it to a deferred free list.
   202	 * @skb: The skb whose reference to be released and dropped.
   203	 * @to_free_list: The list of skbs to be dropped.
   204	 */
   205	__bpf_kfunc void bpf_qdisc_skb_drop(struct sk_buff *skb,
   206					    struct bpf_sk_buff_ptr *to_free_list)
   207	{
   208		__qdisc_drop(skb, (struct sk_buff **)to_free_list);
   209	}
   210	
   211	/* bpf_qdisc_watchdog_schedule - Schedule a qdisc to a later time using a timer.
   212	 * @sch: The qdisc to be scheduled.
   213	 * @expire: The expiry time of the timer.
   214	 * @delta_ns: The slack range of the timer.
   215	 */
   216	__bpf_kfunc void bpf_qdisc_watchdog_schedule(struct Qdisc *sch, u64 expire, u64 delta_ns)
   217	{
   218		struct bpf_sched_data *q = qdisc_priv(sch);
   219	
   220		qdisc_watchdog_schedule_range_ns(&q->watchdog, expire, delta_ns);
   221	}
   222	
   223	/* bpf_qdisc_init_prologue - Hidden kfunc called in prologue of .init. */
 > 224	__bpf_kfunc void bpf_qdisc_init_prologue(struct Qdisc *sch)
   225	{
   226		struct bpf_sched_data *q = qdisc_priv(sch);
   227	
   228		qdisc_watchdog_init(&q->watchdog, sch);
   229	}
   230	
   231	/* bpf_qdisc_reset_destroy_epilogue - Hidden kfunc called in epilogue of .reset
   232	 * and .destroy
   233	 */
 > 234	__bpf_kfunc void bpf_qdisc_reset_destroy_epilogue(struct Qdisc *sch)
   235	{
   236		struct bpf_sched_data *q = qdisc_priv(sch);
   237	
   238		qdisc_watchdog_cancel(&q->watchdog);
   239	}
   240	

-- 
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