Re: Re:Re: [PATCH v2] Bluetooth: HIDP: add missing length check for incoming frames

kernel test robot <[email protected]>
Newsgroups org.kernel.vger.linux-bluetooth,dev.linux.lists.oe-kbuild-all,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
Hi jiale,

kernel test robot noticed the following build warnings:

[auto build test WARNING on kees/for-next/pstore]
[also build test WARNING on kees/for-next/kspp]
[cannot apply to bluetooth-next/master bluetooth/master linus/master v7.2-rc7 next-20260812]
[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/jiale-yao/Re-Re-PATCH-v2-Bluetooth-HIDP-add-missing-length-check-for-incoming-frames/20260814-100503
base:   https://git.kernel.org/pub/scm/linux/kernel/git/kees/linux.git for-next/pstore
patch link:    https://lore.kernel.org/r/220b6be5.d3f.19f78e165aa.Coremail.19888972804%40163.com
patch subject: Re:Re: [PATCH v2] Bluetooth: HIDP: add missing length check for incoming frames
config: powerpc-allmodconfig (https://download.01.org/0day-ci/archive/20260814/[email protected]/config)
compiler: powerpc64-linux-gcc (GCC) 16.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260814/[email protected]/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 <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/

All warnings (new ones prefixed by >>):

   In file included from include/asm-generic/bug.h:31,
                    from arch/powerpc/include/asm/bug.h:116,
                    from include/linux/bug.h:5,
                    from include/linux/thread_info.h:13,
                    from include/asm-generic/preempt.h:5,
                    from arch/powerpc/include/asm/preempt.h:5,
                    from include/linux/preempt.h:79,
                    from include/linux/spinlock.h:56,
                    from include/linux/kref.h:16,
                    from net/bluetooth/hidp/core.c:24:
   net/bluetooth/hidp/core.c: In function 'hidp_recv_intr_frame':
>> net/bluetooth/hidp/core.c:612:24: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'unsigned char *' [-Wformat=]
     612 |                 BT_DBG("Unsupported protocol header 0x%02x", hdr);
         |                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/printk.h:401:21: note: in definition of macro 'pr_fmt'
     401 | #define pr_fmt(fmt) fmt
         |                     ^~~
   include/linux/dynamic_debug.h:259:9: note: in expansion of macro '__dynamic_func_call_cls'
     259 |         __dynamic_func_call_cls(__UNIQUE_ID(ddebug), cls, fmt, func, ##__VA_ARGS__)
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/dynamic_debug.h:261:9: note: in expansion of macro '_dynamic_func_call_cls'
     261 |         _dynamic_func_call_cls(_DPRINTK_CLASS_DFLT, fmt, func, ##__VA_ARGS__)
         |         ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/dynamic_debug.h:280:9: note: in expansion of macro '_dynamic_func_call'
     280 |         _dynamic_func_call(fmt, __dynamic_pr_debug,             \
         |         ^~~~~~~~~~~~~~~~~~
   include/linux/printk.h:635:9: note: in expansion of macro 'dynamic_pr_debug'
     635 |         dynamic_pr_debug(fmt, ##__VA_ARGS__)
         |         ^~~~~~~~~~~~~~~~
   include/net/bluetooth/bluetooth.h:287:33: note: in expansion of macro 'pr_debug'
     287 | #define BT_DBG(fmt, ...)        pr_debug(fmt "\n", ##__VA_ARGS__)
         |                                 ^~~~~~~~
   net/bluetooth/hidp/core.c:612:17: note: in expansion of macro 'BT_DBG'
     612 |                 BT_DBG("Unsupported protocol header 0x%02x", hdr);
         |                 ^~~~~~
   net/bluetooth/hidp/core.c:612:58: note: format string is defined here
     612 |                 BT_DBG("Unsupported protocol header 0x%02x", hdr);
         |                                                       ~~~^
         |                                                          |
         |                                                          unsigned int
         |                                                       %02hhn


vim +612 net/bluetooth/hidp/core.c

^1da177e4c3f415 Linus Torvalds   2005-04-16  588  
91f5cca3d1b4341 Andrew Morton    2008-02-05  589  static void hidp_recv_intr_frame(struct hidp_session *session,
91f5cca3d1b4341 Andrew Morton    2008-02-05  590  				struct sk_buff *skb)
^1da177e4c3f415 Linus Torvalds   2005-04-16  591  {
afd2c613d3369fb jiale yao        2026-07-19  592  	unsigned char *hdr;
^1da177e4c3f415 Linus Torvalds   2005-04-16  593  
093dabb4f1aff98 Kai Ye           2021-06-03  594  	BT_DBG("session %p skb %p len %u", session, skb, skb->len);
^1da177e4c3f415 Linus Torvalds   2005-04-16  595  
afd2c613d3369fb jiale yao        2026-07-19  596  	hdr = skb_pull_data(skb, 1);
afd2c613d3369fb jiale yao        2026-07-19  597  	if (!hdr)
afd2c613d3369fb jiale yao        2026-07-19  598  		return;
^1da177e4c3f415 Linus Torvalds   2005-04-16  599  
afd2c613d3369fb jiale yao        2026-07-19  600  	if (*hdr == (HIDP_TRANS_DATA | HIDP_DATA_RTYPE_INPUT)) {
^1da177e4c3f415 Linus Torvalds   2005-04-16  601  		hidp_set_timer(session);
e1aaadd4d8162a2 Marcel Holtmann  2007-02-17  602  
^1da177e4c3f415 Linus Torvalds   2005-04-16  603  		if (session->input)
^1da177e4c3f415 Linus Torvalds   2005-04-16  604  			hidp_input_report(session, skb);
e1aaadd4d8162a2 Marcel Holtmann  2007-02-17  605  
e1aaadd4d8162a2 Marcel Holtmann  2007-02-17  606  		if (session->hid) {
a4b1b5877b514b2 David Rheinsberg 2013-12-19  607  			hidp_process_report(session, HID_INPUT_REPORT,
a4b1b5877b514b2 David Rheinsberg 2013-12-19  608  					    skb->data, skb->len, 1);
e1aaadd4d8162a2 Marcel Holtmann  2007-02-17  609  			BT_DBG("report len %d", skb->len);
e1aaadd4d8162a2 Marcel Holtmann  2007-02-17  610  		}
^1da177e4c3f415 Linus Torvalds   2005-04-16  611  	} else {
^1da177e4c3f415 Linus Torvalds   2005-04-16 @612  		BT_DBG("Unsupported protocol header 0x%02x", hdr);
^1da177e4c3f415 Linus Torvalds   2005-04-16  613  	}
^1da177e4c3f415 Linus Torvalds   2005-04-16  614  
^1da177e4c3f415 Linus Torvalds   2005-04-16  615  	kfree_skb(skb);
^1da177e4c3f415 Linus Torvalds   2005-04-16  616  }
^1da177e4c3f415 Linus Torvalds   2005-04-16  617  

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.