From: "Li, Philip" <philip.li@intel.com>
To: lkp <lkp@intel.com>, Andrew Morton <akpm@linux-foundation.org>
Cc: "kbuild-all@lists.01.org" <kbuild-all@lists.01.org>,
"Linux Memory Management List" <linux-mm@kvack.org>
Subject: RE: [kbuild-all] [linux-next:master 4395/7467] drivers/clocksource/timer-vf-pit.c:194: error: unterminated argument list invoking macro "BUG_ON"
Date: Wed, 11 Mar 2020 06:55:56 +0000 [thread overview]
Message-ID: <831EE4E5E37DCC428EB295A351E66249524379E6@shsmsx102.ccr.corp.intel.com> (raw)
In-Reply-To: <202003111412.XUjpXn7y%lkp@intel.com>
> Subject: [kbuild-all] [linux-next:master 4395/7467] drivers/clocksource/timer-vf-
> pit.c:194: error: unterminated argument list invoking macro "BUG_ON"
Sorry Andrew, there's a bug in code that linux-next bisection result is sent to you,
we are working on the fix to recover the logic to send to author for this. Sorry
for the noise.
>
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
> head: 134546626849cd6852d6d4bf8f207b5fbc54261b
> commit: cc2550b421aa30e3da67e5a7f6d14f3ecd3527b3 [4395/7467] clocksource:
> Replace setup_irq() by request_irq()
> config: arm-randconfig-a001-20200311 (attached as .config)
> compiler: arm-linux-gnueabi-gcc (GCC) 9.2.0
> reproduce:
> wget https://raw.githubusercontent.com/intel/lkp-
> tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> git checkout cc2550b421aa30e3da67e5a7f6d14f3ecd3527b3
> # save the attached .config to linux build tree
> GCC_VERSION=9.2.0 make.cross ARCH=arm
>
> If you fix the issue, kindly add following tag
> Reported-by: kbuild test robot <lkp@intel.com>
>
> All error/warnings (new ones prefixed by >>):
>
> drivers/clocksource/timer-vf-pit.c: In function 'pit_clockevent_init':
> >> drivers/clocksource/timer-vf-pit.c:194: error: unterminated argument list
> invoking macro "BUG_ON"
> 194 | TIMER_OF_DECLARE(vf610, "fsl,vf610-pit", pit_timer_init);
> |
> >> drivers/clocksource/timer-vf-pit.c:131:2: error: 'BUG_ON' undeclared (first use
> in this function)
> 131 | BUG_ON(request_irq(irq, pit_timer_interrupt, IRQF_TIMER |
> IRQF_IRQPOLL,
> | ^~~~~~
> drivers/clocksource/timer-vf-pit.c:131:2: note: each undeclared identifier is
> reported only once for each function it appears in
> >> drivers/clocksource/timer-vf-pit.c:131:8: error: expected ';' at end of input
> 131 | BUG_ON(request_irq(irq, pit_timer_interrupt, IRQF_TIMER |
> IRQF_IRQPOLL,
> | ^
> | ;
> ......
> 194 | TIMER_OF_DECLARE(vf610, "fsl,vf610-pit", pit_timer_init);
> |
> >> drivers/clocksource/timer-vf-pit.c:131:2: error: expected declaration or
> statement at end of input
> 131 | BUG_ON(request_irq(irq, pit_timer_interrupt, IRQF_TIMER |
> IRQF_IRQPOLL,
> | ^~~~~~
> >> drivers/clocksource/timer-vf-pit.c:131:2: warning: no return statement in
> function returning non-void [-Wreturn-type]
> At top level:
> drivers/clocksource/timer-vf-pit.c:126:19: warning: 'pit_clockevent_init' defined
> but not used [-Wunused-function]
> 126 | static int __init pit_clockevent_init(unsigned long rate, int irq)
> | ^~~~~~~~~~~~~~~~~~~
> drivers/clocksource/timer-vf-pit.c:117:34: warning: 'clockevent_pit' defined but
> not used [-Wunused-variable]
> 117 | static struct clock_event_device clockevent_pit = {
> | ^~~~~~~~~~~~~~
> drivers/clocksource/timer-vf-pit.c:97:20: warning: 'pit_timer_interrupt' defined
> but not used [-Wunused-function]
> 97 | static irqreturn_t pit_timer_interrupt(int irq, void *dev_id)
> | ^~~~~~~~~~~~~~~~~~~
> drivers/clocksource/timer-vf-pit.c:56:19: warning: 'pit_clocksource_init' defined
> but not used [-Wunused-function]
> 56 | static int __init pit_clocksource_init(unsigned long rate)
> | ^~~~~~~~~~~~~~~~~~~~
>
> vim +/BUG_ON +194 drivers/clocksource/timer-vf-pit.c
>
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 125
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 126 static int __init pit_clockevent_init(unsigned long rate, int irq)
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 127 {
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 128 __raw_writel(0, clkevt_base + PITTCTRL);
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 129 __raw_writel(PITTFLG_TIF, clkevt_base + PITTFLG);
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 130
> cc2550b421aa30 drivers/clocksource/timer-vf-pit.c afzal mohammed 2020-02-27
> @131 BUG_ON(request_irq(irq, pit_timer_interrupt, IRQF_TIMER |
> IRQF_IRQPOLL,
> cc2550b421aa30 drivers/clocksource/timer-vf-pit.c afzal mohammed 2020-02-27
> 132 "VF pit timer", &clockevent_pit);
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 133
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 134 clockevent_pit.cpumask = cpumask_of(0);
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 135 clockevent_pit.irq = irq;
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 136 /*
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 137 * The value for the LDVAL register trigger is calculated as:
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 138 * LDVAL trigger = (period / clock period) - 1
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 139 * The pit is a 32-bit down count timer, when the conter value
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 140 * reaches 0, it will generate an interrupt, thus the minimal
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 141 * LDVAL trigger value is 1. And then the min_delta is
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 142 * minimal LDVAL trigger value + 1, and the max_delta is full 32-bit.
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 143 */
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 144 clockevents_config_and_register(&clockevent_pit, rate, 2, 0xffffffff);
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 145
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 146 return 0;
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 147 }
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 148
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 149 static int __init pit_timer_init(struct device_node *np)
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 150 {
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 151 struct clk *pit_clk;
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 152 void __iomem *timer_base;
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 153 unsigned long clk_rate;
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 154 int irq, ret;
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 155
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 156 timer_base = of_iomap(np, 0);
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 157 if (!timer_base) {
> ac9ce6d1a0cc29 drivers/clocksource/vf_pit_timer.c Rafał Miłecki 2017-03-09
> 158 pr_err("Failed to iomap\n");
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 159 return -ENXIO;
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 160 }
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 161
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 162 /*
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 163 * PIT0 and PIT1 can be chained to build a 64-bit timer,
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 164 * so choose PIT2 as clocksource, PIT3 as clockevent device,
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 165 * and leave PIT0 and PIT1 unused for anyone else who needs them.
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 166 */
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 167 clksrc_base = timer_base + PITn_OFFSET(2);
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 168 clkevt_base = timer_base + PITn_OFFSET(3);
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 169
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 170 irq = irq_of_parse_and_map(np, 0);
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 171 if (irq <= 0)
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 172 return -EINVAL;
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 173
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 174 pit_clk = of_clk_get(np, 0);
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 175 if (IS_ERR(pit_clk))
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 176 return PTR_ERR(pit_clk);
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 177
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 178 ret = clk_prepare_enable(pit_clk);
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 179 if (ret)
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 180 return ret;
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 181
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 182 clk_rate = clk_get_rate(pit_clk);
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 183 cycle_per_jiffy = clk_rate / (HZ);
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 184
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 185 /* enable the pit module */
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 186 __raw_writel(~PITMCR_MDIS, timer_base + PITMCR);
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 187
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 188 ret = pit_clocksource_init(clk_rate);
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 189 if (ret)
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 190 return ret;
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 191
> b71306e62d6a42 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2016-06-06
> 192 return pit_clockevent_init(clk_rate, irq);
> c19672492d233e drivers/clocksource/vf_pit_timer.c Jingchang Lu 2013-05-29
> 193 }
> 1727339590fdb5 drivers/clocksource/vf_pit_timer.c Daniel Lezcano 2017-05-26
> @194 TIMER_OF_DECLARE(vf610, "fsl,vf610-pit", pit_timer_init);
>
> :::::: The code at line 194 was first introduced by commit
> :::::: 1727339590fdb5a1ded881b540cd32121278d414 clocksource/drivers: Rename
> CLOCKSOURCE_OF_DECLARE to TIMER_OF_DECLARE
>
> :::::: TO: Daniel Lezcano <daniel.lezcano@linaro.org>
> :::::: CC: Daniel Lezcano <daniel.lezcano@linaro.org>
>
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
prev parent reply other threads:[~2020-03-11 6:56 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-11 6:16 kbuild test robot
2020-03-11 6:55 ` Li, Philip [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=831EE4E5E37DCC428EB295A351E66249524379E6@shsmsx102.ccr.corp.intel.com \
--to=philip.li@intel.com \
--cc=akpm@linux-foundation.org \
--cc=kbuild-all@lists.01.org \
--cc=linux-mm@kvack.org \
--cc=lkp@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox