Hi,
I love your patch! Yet something to improve:
[auto build test ERROR on tip/core/rcu]
url:
https://github.com/0day-ci/linux/commits/paulmck-kernel-org/torture-Remov...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git
cb3cb6733fbd8fd8d2c716095fdca42dadba2063
config: nios2-allyesconfig (attached as .config)
compiler: nios2-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=nios2
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
In file included from include/linux/kernel.h:15,
from kernel/rcu/rcutorture.c:16:
kernel/rcu/rcutorture.c: In function 'rcu_torture_stats_print':
> kernel/rcu/rcutorture.c:1538:3: error: implicit declaration of
function 'data_race' [-Werror=implicit-function-declaration]
1538 |
data_race(n_barrier_successes),
| ^~~~~~~~~
include/linux/printk.h:312:26: note: in definition of macro 'pr_cont'
312 | printk(KERN_CONT fmt, ##__VA_ARGS__)
| ^~~~~~~~~~~
In file included from include/linux/printk.h:7,
from include/linux/kernel.h:15,
from kernel/rcu/rcutorture.c:16:
> include/linux/kern_levels.h:5:18: warning: format '%ld'
expects argument of type 'long int', but argument 2 has type 'int'
[-Wformat=]
5 | #define KERN_SOH "\001" /* ASCII Start Of Header
*/
| ^~~~~~
include/linux/kern_levels.h:24:19: note: in expansion of macro 'KERN_SOH'
24 | #define KERN_CONT KERN_SOH "c"
| ^~~~~~~~
include/linux/printk.h:312:9: note: in expansion of macro 'KERN_CONT'
312 | printk(KERN_CONT fmt, ##__VA_ARGS__)
| ^~~~~~~~~
> kernel/rcu/rcutorture.c:1537:2: note: in expansion of macro
'pr_cont'
1537 | pr_cont("barrier: %ld/%ld:%ld ",
| ^~~~~~~
kernel/rcu/rcutorture.c:1537:22: note: format string is defined here
1537 | pr_cont("barrier: %ld/%ld:%ld ",
| ~~^
| |
| long int
| %d
In file included from include/linux/printk.h:7,
from include/linux/kernel.h:15,
from kernel/rcu/rcutorture.c:16:
include/linux/kern_levels.h:5:18: warning: format '%ld' expects argument of
type 'long int', but argument 3 has type 'int' [-Wformat=]
5 | #define KERN_SOH "\001" /* ASCII Start Of Header */
| ^~~~~~
include/linux/kern_levels.h:24:19: note: in expansion of macro 'KERN_SOH'
24 | #define KERN_CONT KERN_SOH "c"
| ^~~~~~~~
include/linux/printk.h:312:9: note: in expansion of macro 'KERN_CONT'
312 | printk(KERN_CONT fmt, ##__VA_ARGS__)
| ^~~~~~~~~
> kernel/rcu/rcutorture.c:1537:2: note: in expansion of macro
'pr_cont'
1537 | pr_cont("barrier: %ld/%ld:%ld ",
| ^~~~~~~
kernel/rcu/rcutorture.c:1537:26: note: format string is defined here
1537 | pr_cont("barrier: %ld/%ld:%ld ",
| ~~^
| |
| long int
| %d
In file included from include/linux/printk.h:7,
from include/linux/kernel.h:15,
from kernel/rcu/rcutorture.c:16:
include/linux/kern_levels.h:5:18: warning: format '%ld' expects argument of
type 'long int', but argument 4 has type 'int' [-Wformat=]
5 | #define KERN_SOH "\001" /* ASCII Start Of Header */
| ^~~~~~
include/linux/kern_levels.h:24:19: note: in expansion of macro 'KERN_SOH'
24 | #define KERN_CONT KERN_SOH "c"
| ^~~~~~~~
include/linux/printk.h:312:9: note: in expansion of macro 'KERN_CONT'
312 | printk(KERN_CONT fmt, ##__VA_ARGS__)
| ^~~~~~~~~
> kernel/rcu/rcutorture.c:1537:2: note: in expansion of macro
'pr_cont'
1537 | pr_cont("barrier: %ld/%ld:%ld ",
| ^~~~~~~
kernel/rcu/rcutorture.c:1537:30: note: format string is defined here
1537 | pr_cont("barrier: %ld/%ld:%ld ",
| ~~^
| |
| long int
| %d
In file included from include/linux/printk.h:7,
from include/linux/kernel.h:15,
from kernel/rcu/rcutorture.c:16:
> include/linux/kern_levels.h:5:18: warning: format '%ld'
expects argument of type 'long int', but argument 2 has type 'int'
[-Wformat=]
5 | #define KERN_SOH "\001" /* ASCII Start Of Header
*/
| ^~~~~~
include/linux/kern_levels.h:24:19: note: in expansion of macro 'KERN_SOH'
24 | #define KERN_CONT KERN_SOH "c"
| ^~~~~~~~
include/linux/printk.h:312:9: note: in expansion of macro 'KERN_CONT'
312 | printk(KERN_CONT fmt, ##__VA_ARGS__)
| ^~~~~~~~~
kernel/rcu/rcutorture.c:1541:2: note: in expansion of macro 'pr_cont'
1541 | pr_cont("read-exits: %ld\n", data_race(n_read_exits));
| ^~~~~~~
kernel/rcu/rcutorture.c:1541:25: note: format string is defined here
1541 | pr_cont("read-exits: %ld\n", data_race(n_read_exits));
| ~~^
| |
| long int
| %d
cc1: some warnings being treated as errors
vim +/data_race +1538 kernel/rcu/rcutorture.c
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1485
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1486 /*
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1487 * Print
torture statistics. Caller must ensure that there is only
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1488 * one call to
this function at a given time!!! This is normally
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1489 * accomplished
by relying on the module system to only have one copy
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1490 * of the
module loaded, and then by giving the rcu_torture_stats
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1491 * kthread full
control (or the init/cleanup functions when rcu_torture_stats
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1492 * thread is
not running).
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1493 */
d10089508613f4 kernel/rcu/torture.c Chen Gang 2013-11-07 1494 static void
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1495
rcu_torture_stats_print(void)
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1496 {
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1497 int cpu;
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1498 int i;
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1499 long
pipesummary[RCU_TORTURE_PIPE_LEN + 1] = { 0 };
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1500 long
batchsummary[RCU_TORTURE_PIPE_LEN + 1] = { 0 };
5396d31d3a3960 kernel/rcu/rcutorture.c Paul E. McKenney 2020-01-08 1501 struct
rcu_torture *rtcp;
ad0dc7f94dbf41 kernel/rcu/rcutorture.c Paul E. McKenney 2014-02-19 1502 static
unsigned long rtcv_snap = ULONG_MAX;
0032f4e889764d kernel/rcu/rcutorture.c Paul E. McKenney 2017-08-30 1503 static bool
splatted;
4ffa66992476c9 kernel/rcu/rcutorture.c Paul E. McKenney 2016-06-30 1504 struct
task_struct *wtp;
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1505
0a945022778f10 kernel/rcutorture.c KAMEZAWA Hiroyuki 2006-03-28 1506
for_each_possible_cpu(cpu) {
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1507 for (i = 0; i
< RCU_TORTURE_PIPE_LEN + 1; i++) {
f042a436c8dc9f kernel/rcu/rcutorture.c Paul E. McKenney 2020-01-03 1508
pipesummary[i] += READ_ONCE(per_cpu(rcu_torture_count, cpu)[i]);
f042a436c8dc9f kernel/rcu/rcutorture.c Paul E. McKenney 2020-01-03 1509
batchsummary[i] += READ_ONCE(per_cpu(rcu_torture_batch, cpu)[i]);
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1510 }
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1511 }
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1512 for (i =
RCU_TORTURE_PIPE_LEN - 1; i >= 0; i--) {
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1513 if
(pipesummary[i] != 0)
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1514 break;
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1515 }
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1516
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1517
pr_alert("%s%s ", torture_type, TORTURE_FLAG);
5396d31d3a3960 kernel/rcu/rcutorture.c Paul E. McKenney 2020-01-08 1518 rtcp =
rcu_access_pointer(rcu_torture_current);
354ea05d027638 kernel/rcu/rcutorture.c Paul E. McKenney 2019-05-25 1519
pr_cont("rtc: %p %s: %lu tfle: %d rta: %d rtaf: %d rtf: %d ",
5396d31d3a3960 kernel/rcu/rcutorture.c Paul E. McKenney 2020-01-08 1520 rtcp,
5396d31d3a3960 kernel/rcu/rcutorture.c Paul E. McKenney 2020-01-08 1521 rtcp
&& !rcu_stall_is_suppressed_at_boot() ? "ver" : "VER",
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1522
rcu_torture_current_version,
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1523
list_empty(&rcu_torture_freelist),
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1524
atomic_read(&n_rcu_torture_alloc),
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1525
atomic_read(&n_rcu_torture_alloc_fail),
5cf05ad758c30d kernel/rcutorture.c Paul E. McKenney 2012-05-17 1526
atomic_read(&n_rcu_torture_free));
472213a675e211 kernel/rcu/rcutorture.c SeongJae Park 2016-08-13 1527
pr_cont("rtmbe: %d rtbe: %ld rtbke: %ld rtbre: %ld ",
0729fbf3bc7087 kernel/rcutorture.c Paul E. McKenney 2008-06-25 1528
atomic_read(&n_rcu_torture_mberror),
472213a675e211 kernel/rcu/rcutorture.c SeongJae Park 2016-08-13 1529
n_rcu_torture_barrier_error,
8e8be45e8e55da kernel/rcutorture.c Paul E. McKenney 2010-09-02 1530
n_rcu_torture_boost_ktrerror,
5cf05ad758c30d kernel/rcutorture.c Paul E. McKenney 2012-05-17 1531
n_rcu_torture_boost_rterror);
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1532
pr_cont("rtbf: %ld rtb: %ld nt: %ld ",
8e8be45e8e55da kernel/rcutorture.c Paul E. McKenney 2010-09-02 1533
n_rcu_torture_boost_failure,
8e8be45e8e55da kernel/rcutorture.c Paul E. McKenney 2010-09-02 1534
n_rcu_torture_boosts,
8da9a59523b660 kernel/rcu/rcutorture.c Paul E. McKenney 2018-05-22 1535
atomic_long_read(&n_rcu_torture_timers));
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1536
torture_onoff_stats();
d038b6ee14fb01 kernel/rcu/rcutorture.c Paul E. McKenney 2020-06-22 @1537
pr_cont("barrier: %ld/%ld:%ld ",
c9527bebb017b8 kernel/rcu/rcutorture.c Paul E. McKenney 2020-02-18 @1538
data_race(n_barrier_successes),
c9527bebb017b8 kernel/rcu/rcutorture.c Paul E. McKenney 2020-02-18 1539
data_race(n_barrier_attempts),
c9527bebb017b8 kernel/rcu/rcutorture.c Paul E. McKenney 2020-02-18 1540
data_race(n_rcu_torture_barrier_error));
d038b6ee14fb01 kernel/rcu/rcutorture.c Paul E. McKenney 2020-06-22 1541
pr_cont("read-exits: %ld\n", data_race(n_read_exits));
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1542
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1543
pr_alert("%s%s ", torture_type, TORTURE_FLAG);
8b5ddf8b99dc42 kernel/rcu/rcutorture.c Paul E. McKenney 2019-08-14 1544 if
(atomic_read(&n_rcu_torture_mberror) ||
8b5ddf8b99dc42 kernel/rcu/rcutorture.c Paul E. McKenney 2019-08-14 1545
n_rcu_torture_barrier_error || n_rcu_torture_boost_ktrerror ||
8b5ddf8b99dc42 kernel/rcu/rcutorture.c Paul E. McKenney 2019-08-14 1546
n_rcu_torture_boost_rterror || n_rcu_torture_boost_failure ||
fae4b54f28f034 kernel/rcutorture.c Paul E. McKenney 2012-02-20 1547 i > 1)
{
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1548
pr_cont("%s", "!!! ");
996417d2c4eb58 kernel/rcutorture.c Paul E. McKenney 2005-11-18 1549
atomic_inc(&n_rcu_torture_error);
8b5ddf8b99dc42 kernel/rcu/rcutorture.c Paul E. McKenney 2019-08-14 1550
WARN_ON_ONCE(atomic_read(&n_rcu_torture_mberror));
8b5ddf8b99dc42 kernel/rcu/rcutorture.c Paul E. McKenney 2019-08-14 1551
WARN_ON_ONCE(n_rcu_torture_barrier_error); // rcu_barrier()
8b5ddf8b99dc42 kernel/rcu/rcutorture.c Paul E. McKenney 2019-08-14 1552
WARN_ON_ONCE(n_rcu_torture_boost_ktrerror); // no boost kthread
8b5ddf8b99dc42 kernel/rcu/rcutorture.c Paul E. McKenney 2019-08-14 1553
WARN_ON_ONCE(n_rcu_torture_boost_rterror); // can't set RT prio
8b5ddf8b99dc42 kernel/rcu/rcutorture.c Paul E. McKenney 2019-08-14 1554
WARN_ON_ONCE(n_rcu_torture_boost_failure); // RCU boost failed
8b5ddf8b99dc42 kernel/rcu/rcutorture.c Paul E. McKenney 2019-08-14 1555
WARN_ON_ONCE(i > 1); // Too-short grace period
996417d2c4eb58 kernel/rcutorture.c Paul E. McKenney 2005-11-18 1556 }
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1557
pr_cont("Reader Pipe: ");
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1558 for (i = 0; i
< RCU_TORTURE_PIPE_LEN + 1; i++)
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1559
pr_cont(" %ld", pipesummary[i]);
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1560
pr_cont("\n");
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1561
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1562
pr_alert("%s%s ", torture_type, TORTURE_FLAG);
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1563
pr_cont("Reader Batch: ");
72e9bb549280b3 kernel/rcutorture.c Paul E. McKenney 2006-06-27 1564 for (i = 0; i
< RCU_TORTURE_PIPE_LEN + 1; i++)
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1565
pr_cont(" %ld", batchsummary[i]);
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1566
pr_cont("\n");
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1567
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1568
pr_alert("%s%s ", torture_type, TORTURE_FLAG);
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1569
pr_cont("Free-Block Circulation: ");
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1570 for (i = 0; i
< RCU_TORTURE_PIPE_LEN + 1; i++) {
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1571
pr_cont(" %d", atomic_read(&rcu_torture_wcount[i]));
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1572 }
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1573
pr_cont("\n");
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1574
c8e5b163101c5d kernel/rcutorture.c Josh Triplett 2007-05-08 1575 if
(cur_ops->stats)
eea203fea34845 kernel/rcu/rcutorture.c Joe Perches 2014-07-14 1576
cur_ops->stats();
ad0dc7f94dbf41 kernel/rcu/rcutorture.c Paul E. McKenney 2014-02-19 1577 if (rtcv_snap
== rcu_torture_current_version &&
5396d31d3a3960 kernel/rcu/rcutorture.c Paul E. McKenney 2020-01-08 1578
rcu_access_pointer(rcu_torture_current) &&
5396d31d3a3960 kernel/rcu/rcutorture.c Paul E. McKenney 2020-01-08 1579
!rcu_stall_is_suppressed()) {
7f6733c3c648dd kernel/rcu/rcutorture.c Paul E. McKenney 2017-04-18 1580 int
__maybe_unused flags = 0;
aebc82644b2c8e kernel/rcu/rcutorture.c Paul E. McKenney 2018-05-01 1581 unsigned long
__maybe_unused gp_seq = 0;
ad0dc7f94dbf41 kernel/rcu/rcutorture.c Paul E. McKenney 2014-02-19 1582
ad0dc7f94dbf41 kernel/rcu/rcutorture.c Paul E. McKenney 2014-02-19 1583
rcutorture_get_gp_data(cur_ops->ttype,
aebc82644b2c8e kernel/rcu/rcutorture.c Paul E. McKenney 2018-05-01 1584
&flags, &gp_seq);
7f6733c3c648dd kernel/rcu/rcutorture.c Paul E. McKenney 2017-04-18 1585
srcutorture_get_gp_data(cur_ops->ttype, srcu_ctlp,
aebc82644b2c8e kernel/rcu/rcutorture.c Paul E. McKenney 2018-05-01 1586
&flags, &gp_seq);
4ffa66992476c9 kernel/rcu/rcutorture.c Paul E. McKenney 2016-06-30 1587 wtp =
READ_ONCE(writer_task);
aebc82644b2c8e kernel/rcu/rcutorture.c Paul E. McKenney 2018-05-01 1588
pr_alert("??? Writer stall state %s(%d) g%lu f%#x ->state %#lx cpu %d\n",
18aff33e731425 kernel/rcu/rcutorture.c Paul E. McKenney 2015-11-17 1589
rcu_torture_writer_state_getname(),
aebc82644b2c8e kernel/rcu/rcutorture.c Paul E. McKenney 2018-05-01 1590
rcu_torture_writer_state, gp_seq, flags,
808de39cf422aa kernel/rcu/rcutorture.c Paul E. McKenney 2017-06-19 1591 wtp == NULL
? ~0UL : wtp->state,
808de39cf422aa kernel/rcu/rcutorture.c Paul E. McKenney 2017-06-19 1592 wtp == NULL
? -1 : (int)task_cpu(wtp));
0032f4e889764d kernel/rcu/rcutorture.c Paul E. McKenney 2017-08-30 1593 if (!splatted
&& wtp) {
0032f4e889764d kernel/rcu/rcutorture.c Paul E. McKenney 2017-08-30 1594
sched_show_task(wtp);
0032f4e889764d kernel/rcu/rcutorture.c Paul E. McKenney 2017-08-30 1595 splatted =
true;
0032f4e889764d kernel/rcu/rcutorture.c Paul E. McKenney 2017-08-30 1596 }
afea227fd4acf4 kernel/rcu/rcutorture.c Paul E. McKenney 2014-03-12 1597
show_rcu_gp_kthreads();
274529ba9bda86 kernel/rcu/rcutorture.c Paul E. McKenney 2016-03-21 1598
rcu_ftrace_dump(DUMP_ALL);
ad0dc7f94dbf41 kernel/rcu/rcutorture.c Paul E. McKenney 2014-02-19 1599 }
ad0dc7f94dbf41 kernel/rcu/rcutorture.c Paul E. McKenney 2014-02-19 1600 rtcv_snap =
rcu_torture_current_version;
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1601 }
a241ec65aeac3d kernel/rcutorture.c Paul E. McKenney 2005-10-30 1602
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org