[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202204120622.OSuTgle5-lkp@intel.com>
Date: Tue, 12 Apr 2022 07:08:05 +0800
From: kernel test robot <lkp@...el.com>
To: 周琰杰 (Zhou Yanjie)
<zhouyanjie@...yeetech.com>, daniel.lezcano@...aro.org,
tglx@...utronix.de, robh+dt@...nel.org, krzk+dt@...nel.org
Cc: kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org,
devicetree@...r.kernel.org, dongsheng.qiu@...enic.com,
aric.pzqi@...enic.com, rick.tyliu@...enic.com,
sernia.zhou@...mail.com, zhenwenjin@...il.com, reimu@...omaker.com
Subject: Re: [PATCH v4 3/3] clocksource: Ingenic: Add SMP/SMT support for
sysost driver.
Hi "周琰杰,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on tip/timers/core]
[also build test WARNING on robh/for-next v5.18-rc2 next-20220411]
[cannot apply to daniel-lezcano/clockevents/next]
[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]
url: https://github.com/intel-lab-lkp/linux/commits/Zhou-Yanjie/Add-SMP-SMT-support-for-Ingenic-sysost-driver/20220411-223537
base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 8afbcaf8690dac19ebf570a4e4fef9c59c75bf8e
config: openrisc-randconfig-s032-20220411 (https://download.01.org/0day-ci/archive/20220412/202204120622.OSuTgle5-lkp@intel.com/config)
compiler: or1k-linux-gcc (GCC) 11.2.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.4-dirty
# https://github.com/intel-lab-lkp/linux/commit/facdbd1eb8f72863d589c575577f6130d8cf6ed1
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Zhou-Yanjie/Add-SMP-SMT-support-for-Ingenic-sysost-driver/20220411-223537
git checkout facdbd1eb8f72863d589c575577f6130d8cf6ed1
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=openrisc SHELL=/bin/bash drivers/clocksource/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/clocksource/ingenic-sysost.c:703:65: sparse: sparse: incorrect type in argument 5 (different address spaces) @@ expected void *dev @@ got struct ingenic_ost_timer [noderef] __percpu *timers @@
drivers/clocksource/ingenic-sysost.c:703:65: sparse: expected void *dev
drivers/clocksource/ingenic-sysost.c:703:65: sparse: got struct ingenic_ost_timer [noderef] __percpu *timers
vim +703 drivers/clocksource/ingenic-sysost.c
678
679 static int __init ingenic_ost_init(struct device_node *np)
680 {
681 struct ingenic_ost *ost;
682 unsigned long rate;
683 int ret;
684
685 ret = ingenic_ost_probe(np);
686 if (ret) {
687 pr_crit("%s: Failed to initialize OST clocks: %d\n", __func__, ret);
688 return ret;
689 }
690
691 of_node_clear_flag(np, OF_POPULATED);
692
693 ost = ingenic_ost;
694 if (IS_ERR(ost))
695 return PTR_ERR(ost);
696
697 if (ost->soc_info->has_event_timer) {
698 if (ost->soc_info->version >= ID_X2000)
699 ret = request_percpu_irq(ost->irq, ingenic_ost_cevt_cb,
700 "OST event timer", ost->timers);
701 else
702 ret = request_irq(ost->irq, ingenic_ost_cevt_cb, IRQF_TIMER,
> 703 "OST event timer", ost->timers);
704
705 if (ret) {
706 pr_crit("%s: Unable to request IRQ: %d\n", __func__, ret);
707 goto err_free_ingenic_ost;
708 }
709
710 /* Setup clock events on each CPU core */
711 ret = cpuhp_setup_state(CPUHP_AP_ONLINE_DYN, "Ingenic XBurst: online",
712 ingenic_ost_setup_cevt, NULL);
713 if (ret < 0) {
714 pr_crit("%s: Unable to init event timers: %d\n", __func__, ret);
715 goto err_free_ingenic_ost;
716 }
717 }
718
719 if (ost->soc_info->has_global_timer) {
720 ret = ingenic_ost_global_timer_init(np, ost);
721 if (ret) {
722 pr_crit("%s: Unable to init global timer: %d\n", __func__, ret);
723
724 if (!ost->soc_info->has_event_timer)
725 goto err_free_ingenic_ost;
726 }
727
728 /* Register the sched_clock at the end as there's no way to undo it */
729 rate = clk_get_rate(ost->global_timer_clk);
730 sched_clock_register(ingenic_ost_global_timer_read_cntl, 32, rate);
731 }
732
733 return 0;
734
735 err_free_ingenic_ost:
736 kfree(ost);
737 return ret;
738 }
739
--
0-DAY CI Kernel Test Service
https://01.org/lkp
Powered by blists - more mailing lists