Re: [PATCH v7 6/8] drm/panthor: Implement sample handling

From: kernel test robot

Date: Tue Oct 13 2026 - 00:53:08 EST


Hi Lukas,

kernel test robot noticed the following build errors:

[auto build test ERROR on 4b7a49d66c8398a7984dff4ac54d1acc6b3a58df]

url: https://github.com/intel-lab-lkp/linux/commits/Lukas-Zapolskas/drm-panthor-Add-performance-counter-uAPI/20261011-183648
base: 4b7a49d66c8398a7984dff4ac54d1acc6b3a58df
patch link: https://lore.kernel.org/r/20261011-panthor-performance-counters-v7-6-12c32495062f%40arm.com
patch subject: [PATCH v7 6/8] drm/panthor: Implement sample handling
config: arc-allyesconfig (https://download.01.org/0day-ci/archive/20261013/202610131207.5wGThJW9-lkp@xxxxxxxxx/config)
compiler: arc-linux-gcc (GCC) 16.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20261013/202610131207.5wGThJW9-lkp@xxxxxxxxx/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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202610131207.5wGThJW9-lkp@xxxxxxxxx/

All errors (new ones prefixed by >>):

drivers/gpu/drm/panthor/panthor_perf.c: In function 'session_accumulate_sample':
>> drivers/gpu/drm/panthor/panthor_perf.c:902:57: error: passing argument 2 of 'bitmap_from_arr64' from incompatible pointer type [-Wincompatible-pointer-types]
902 | bitmap_from_arr64(enabled_ctrs, em->mask[dst_blk->header.block_type],
| ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
| |
| long unsigned int *
In file included from include/linux/cpumask.h:11,
from include/linux/smp.h:13,
from include/linux/interrupt_rc.h:17,
from include/linux/spinlock.h:60,
from include/linux/swait.h:7,
from include/linux/completion.h:12,
from include/drm/drm_file.h:34,
from drivers/gpu/drm/panthor/panthor_perf.c:5:
include/linux/bitmap.h:322:58: note: expected 'const u64 *' {aka 'const long long unsigned int *'} but argument is of type 'long unsigned int *'
322 | void bitmap_from_arr64(unsigned long *bitmap, const u64 *buf, unsigned int nbits);
| ~~~~~~~~~~~^~~


vim +/bitmap_from_arr64 +902 drivers/gpu/drm/panthor/panthor_perf.c

875
876 /**
877 * session_accumulate_sample - Accumulate requested counters into an existing sample.
878 * @ptdev: Panthor device.
879 * @session: Perf session.
880 * @session_sample: Start of the destination sample, including its header.
881 * @perf_sample: Start of the intermediate sample, including its header.
882 *
883 * Firmware enable masks select groups of counters. Copy timestamps and accumulate
884 * only the counters requested by this session.
885 */
886 static void session_accumulate_sample(struct panthor_device *ptdev,
887 struct panthor_perf_session *session,
888 u8 *session_sample, u8 *perf_sample)
889 {
890 const struct drm_panthor_perf_info *const perf_info = &ptdev->perf_info;
891 struct panthor_perf_enable_masks *em = session->enabled_counters;
892 struct panthor_perf_sample_block_iter iter;
893 const u32 counters = perf_info->counters_per_block;
894
895 sample_block_iter_init(perf_info, perf_sample, session_sample, &iter);
896
897 while (sample_block_iter_next(&iter)) {
898 DECLARE_BITMAP(enabled_ctrs, PANTHOR_PERF_EM_BITS);
899 const struct panthor_perf_counter_block *src_blk = iter.src_blk;
900 struct panthor_perf_counter_block *dst_blk = iter.dst_blk;
901
> 902 bitmap_from_arr64(enabled_ctrs, em->mask[dst_blk->header.block_type],
903 PANTHOR_PERF_EM_BITS);
904 bitmap_clear(enabled_ctrs, 0, PANTHOR_HEADER_COUNTERS);
905
906 dst_blk->counters[PANTHOR_CTR_TIMESTAMP_HI] =
907 src_blk->counters[PANTHOR_CTR_TIMESTAMP_HI];
908 dst_blk->counters[PANTHOR_CTR_TIMESTAMP_LO] =
909 src_blk->counters[PANTHOR_CTR_TIMESTAMP_LO];
910
911 for (size_t ctr_idx = PANTHOR_HEADER_COUNTERS; ctr_idx < counters; ctr_idx++)
912 if (test_bit(ctr_idx, enabled_ctrs))
913 dst_blk->counters[ctr_idx] += src_blk->counters[ctr_idx];
914 }
915 }
916

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