CC: [email protected]
TO: Peter Zijlstra <[email protected]>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git 
sched/core-sched
head:   aa17e873016be2a89e8cb3c0fe044801874b3ea5
commit: d264c7c1defc2280317a692e046aad5e7676d021 [16/29] sched: Use 
raw_spin_rq_*lock*() helpers
:::::: branch date: 12 hours ago
:::::: commit date: 12 hours ago
config: h8300-randconfig-s031-20210415 (attached as .config)
compiler: h8300-linux-gcc (GCC) 9.3.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.3-280-g2cd6d34e-dirty
        # 
https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git/commit/?id=d264c7c1defc2280317a692e046aad5e7676d021
        git remote add peterz-queue 
https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git
        git fetch --no-tags peterz-queue sched/core-sched
        git checkout d264c7c1defc2280317a692e046aad5e7676d021
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 
CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' W=1 ARCH=h8300 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>


sparse warnings: (new ones prefixed by >>)
   kernel/sched/core.c:816:38: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected struct task_struct *curr @@     got 
struct task_struct [noderef] __rcu *curr @@
   kernel/sched/core.c:816:38: sparse:     expected struct task_struct *curr
   kernel/sched/core.c:816:38: sparse:     got struct task_struct [noderef] 
__rcu *curr
   kernel/sched/core.c:1936:33: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected struct task_struct *p @@     got 
struct task_struct [noderef] __rcu *curr @@
   kernel/sched/core.c:1936:33: sparse:     expected struct task_struct *p
   kernel/sched/core.c:1936:33: sparse:     got struct task_struct [noderef] 
__rcu *curr
   kernel/sched/core.c:1936:68: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected struct task_struct *tsk @@     got 
struct task_struct [noderef] __rcu *curr @@
   kernel/sched/core.c:1936:68: sparse:     expected struct task_struct *tsk
   kernel/sched/core.c:1936:68: sparse:     got struct task_struct [noderef] 
__rcu *curr
   kernel/sched/core.c:4759:38: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected struct task_struct *curr @@     got 
struct task_struct [noderef] __rcu *curr @@
   kernel/sched/core.c:4759:38: sparse:     expected struct task_struct *curr
   kernel/sched/core.c:4759:38: sparse:     got struct task_struct [noderef] 
__rcu *curr
   kernel/sched/core.c:5641:14: sparse: sparse: incorrect type in assignment 
(different address spaces) @@     expected struct task_struct *prev @@     got 
struct task_struct [noderef] __rcu *curr @@
   kernel/sched/core.c:5641:14: sparse:     expected struct task_struct *prev
   kernel/sched/core.c:5641:14: sparse:     got struct task_struct [noderef] 
__rcu *curr
   kernel/sched/core.c:6300:17: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   kernel/sched/core.c:6300:17: sparse:    struct task_struct *
   kernel/sched/core.c:6300:17: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/core.c:6507:22: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   kernel/sched/core.c:6507:22: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/core.c:6507:22: sparse:    struct task_struct *
   kernel/sched/core.c:10192:25: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected struct task_struct *p @@     got 
struct task_struct [noderef] __rcu *curr @@
   kernel/sched/core.c:10192:25: sparse:     expected struct task_struct *p
   kernel/sched/core.c:10192:25: sparse:     got struct task_struct [noderef] 
__rcu *curr
   kernel/sched/core.c:377:6: sparse: sparse: context imbalance in 
'raw_spin_rq_lock_nested' - wrong count at exit
   kernel/sched/core.c:382:6: sparse: sparse: context imbalance in 
'raw_spin_rq_trylock' - wrong count at exit
   kernel/sched/core.c:387:6: sparse: sparse: context imbalance in 
'raw_spin_rq_unlock' - unexpected unlock
   kernel/sched/core.c:406:36: sparse: sparse: context imbalance in 
'__task_rq_lock' - wrong count at exit
   kernel/sched/core.c:447:36: sparse: sparse: context imbalance in 
'task_rq_lock' - wrong count at exit
   kernel/sched/core.c:1927:33: sparse: sparse: dereference of noderef 
expression
   kernel/sched/core.c:1928:19: sparse: sparse: dereference of noderef 
expression
   kernel/sched/core.c:1929:37: sparse: sparse: dereference of noderef 
expression
   kernel/sched/core.c:3261:25: sparse: sparse: context imbalance in 
'ttwu_runnable' - wrong count at exit
   kernel/sched/core.c:3746:9: sparse: sparse: context imbalance in 
'try_invoke_on_locked_down_task' - wrong count at exit
>> kernel/sched/core.c:4049:6: sparse: sparse: context imbalance in 
>> 'wake_up_new_task' - wrong count at exit
   kernel/sched/core.c:4466:30: sparse: sparse: context imbalance in 
'finish_task_switch' - wrong count at exit
   kernel/sched/core.c: note: in included file:
   kernel/sched/sched.h:1886:25: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   kernel/sched/sched.h:1886:25: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/sched.h:1886:25: sparse:    struct task_struct *
   kernel/sched/sched.h:2044:9: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   kernel/sched/sched.h:2044:9: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/sched.h:2044:9: sparse:    struct task_struct *
   kernel/sched/sched.h:2044:9: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   kernel/sched/sched.h:2044:9: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/sched.h:2044:9: sparse:    struct task_struct *
   kernel/sched/sched.h:1886:25: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   kernel/sched/sched.h:1886:25: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/sched.h:1886:25: sparse:    struct task_struct *
   kernel/sched/sched.h:2044:9: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   kernel/sched/sched.h:2044:9: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/sched.h:2044:9: sparse:    struct task_struct *
   kernel/sched/sched.h:1886:25: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   kernel/sched/sched.h:1886:25: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/sched.h:1886:25: sparse:    struct task_struct *
   kernel/sched/sched.h:2044:9: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   kernel/sched/sched.h:2044:9: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/sched.h:2044:9: sparse:    struct task_struct *
   kernel/sched/sched.h:1886:25: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   kernel/sched/sched.h:1886:25: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/sched.h:1886:25: sparse:    struct task_struct *
   kernel/sched/sched.h:2044:9: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   kernel/sched/sched.h:2044:9: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/sched.h:2044:9: sparse:    struct task_struct *
   kernel/sched/sched.h:1886:25: sparse: sparse: incompatible types in 
comparison expression (different address spaces):
   kernel/sched/sched.h:1886:25: sparse:    struct task_struct [noderef] __rcu *
   kernel/sched/sched.h:1886:25: sparse:    struct task_struct *

vim +/wake_up_new_task +4049 kernel/sched/core.c

332ac17ef5bfcf kernel/sched/core.c Dario Faggioli            2013-11-07  4041  
^1da177e4c3f41 kernel/sched.c      Linus Torvalds            2005-04-16  4042  
/*
^1da177e4c3f41 kernel/sched.c      Linus Torvalds            2005-04-16  4043   
* wake_up_new_task - wake up a newly created task for the first time.
^1da177e4c3f41 kernel/sched.c      Linus Torvalds            2005-04-16  4044   
*
^1da177e4c3f41 kernel/sched.c      Linus Torvalds            2005-04-16  4045   
* This function will do some initial scheduler statistics housekeeping
^1da177e4c3f41 kernel/sched.c      Linus Torvalds            2005-04-16  4046   
* that must be done for every newly created context, then puts the task
^1da177e4c3f41 kernel/sched.c      Linus Torvalds            2005-04-16  4047   
* on the runqueue and wakes it.
^1da177e4c3f41 kernel/sched.c      Linus Torvalds            2005-04-16  4048   
*/
3e51e3edfd81bf kernel/sched.c      Samir Bellabes            2011-05-11 @4049  
void wake_up_new_task(struct task_struct *p)
^1da177e4c3f41 kernel/sched.c      Linus Torvalds            2005-04-16  4050  {
eb58075149b7f0 kernel/sched/core.c Peter Zijlstra            2015-07-31  4051   
struct rq_flags rf;
dd41f596cda0d7 kernel/sched.c      Ingo Molnar               2007-07-09  4052   
struct rq *rq;
fabf318e5e4bda kernel/sched.c      Peter Zijlstra            2010-01-21  4053  
eb58075149b7f0 kernel/sched/core.c Peter Zijlstra            2015-07-31  4054   
raw_spin_lock_irqsave(&p->pi_lock, rf.flags);
7dc603c9028ea5 kernel/sched/core.c Peter Zijlstra            2016-06-16  4055   
p->state = TASK_RUNNING;
fabf318e5e4bda kernel/sched.c      Peter Zijlstra            2010-01-21  4056  
#ifdef CONFIG_SMP
fabf318e5e4bda kernel/sched.c      Peter Zijlstra            2010-01-21  4057   
/*
fabf318e5e4bda kernel/sched.c      Peter Zijlstra            2010-01-21  4058   
 * Fork balancing, do it here and not earlier because:
3bd3706251ee8a kernel/sched/core.c Sebastian Andrzej Siewior 2019-04-23  4059   
 *  - cpus_ptr can change in the fork path
d1ccc66df8bfe3 kernel/sched/core.c Ingo Molnar               2017-02-01  4060   
 *  - any previously selected CPU might disappear through hotplug
e210bffd39d01b kernel/sched/core.c Peter Zijlstra            2016-06-16  4061   
 *
e210bffd39d01b kernel/sched/core.c Peter Zijlstra            2016-06-16  4062   
 * Use __set_task_cpu() to avoid calling sched_class::migrate_task_rq,
e210bffd39d01b kernel/sched/core.c Peter Zijlstra            2016-06-16  4063   
 * as we're not fully set-up yet.
fabf318e5e4bda kernel/sched.c      Peter Zijlstra            2010-01-21  4064   
 */
32e839dda3ba57 kernel/sched/core.c Mel Gorman                2018-01-30  4065   
p->recent_used_cpu = task_cpu(p);
ce3614daabea8a kernel/sched/core.c Mathieu Desnoyers         2020-07-06  4066   
rseq_migrate(p);
3aef1551e94286 kernel/sched/core.c Valentin Schneider        2020-11-02  4067   
__set_task_cpu(p, select_task_rq(p, task_cpu(p), WF_FORK));
0017d735092844 kernel/sched.c      Peter Zijlstra            2010-03-24  4068  
#endif
b7fa30c9cc48c4 kernel/sched/core.c Peter Zijlstra            2016-06-09  4069   
rq = __task_rq_lock(p, &rf);
4126bad6717336 kernel/sched/core.c Peter Zijlstra            2016-10-03  4070   
update_rq_clock(rq);
d0fe0b9c45c144 kernel/sched/core.c Dietmar Eggemann          2019-01-22  4071   
post_init_entity_util_avg(p);
0017d735092844 kernel/sched.c      Peter Zijlstra            2010-03-24  4072  
7a57f32a4d5c80 kernel/sched/core.c Peter Zijlstra            2017-02-21  4073   
activate_task(rq, p, ENQUEUE_NOCLOCK);
fbd705a0c61845 kernel/sched/core.c Peter Zijlstra            2015-06-09  4074   
trace_sched_wakeup_new(p);
a7558e01056f51 kernel/sched.c      Peter Zijlstra            2009-09-14  4075   
check_preempt_curr(rq, p, WF_FORK);
9a897c5a6701bc kernel/sched.c      Steven Rostedt            2008-01-25  4076  
#ifdef CONFIG_SMP
0aaafaabfcba8a kernel/sched/core.c Peter Zijlstra            2015-10-23  4077   
if (p->sched_class->task_woken) {
0aaafaabfcba8a kernel/sched/core.c Peter Zijlstra            2015-10-23  4078   
        /*
b19a888c1e9bdf kernel/sched/core.c Tal Zussman               2020-11-12  4079   
         * Nothing relies on rq->lock after this, so it's fine to
0aaafaabfcba8a kernel/sched/core.c Peter Zijlstra            2015-10-23  4080   
         * drop it.
0aaafaabfcba8a kernel/sched/core.c Peter Zijlstra            2015-10-23  4081   
         */
d8ac897137a230 kernel/sched/core.c Matt Fleming              2016-09-21  4082   
        rq_unpin_lock(rq, &rf);
efbbd05a595343 kernel/sched.c      Peter Zijlstra            2009-12-16  4083   
        p->sched_class->task_woken(rq, p);
d8ac897137a230 kernel/sched/core.c Matt Fleming              2016-09-21  4084   
        rq_repin_lock(rq, &rf);
0aaafaabfcba8a kernel/sched/core.c Peter Zijlstra            2015-10-23  4085   
}
9a897c5a6701bc kernel/sched.c      Steven Rostedt            2008-01-25  4086  
#endif
eb58075149b7f0 kernel/sched/core.c Peter Zijlstra            2015-07-31  4087   
task_rq_unlock(rq, p, &rf);
^1da177e4c3f41 kernel/sched.c      Linus Torvalds            2005-04-16  4088  }
^1da177e4c3f41 kernel/sched.c      Linus Torvalds            2005-04-16  4089  

:::::: The code at line 4049 was first introduced by commit
:::::: 3e51e3edfd81bfd9853ad7de91167e4ce33d0fe7 sched: Remove unused parameters 
from sched_fork() and wake_up_new_task()

:::::: TO: Samir Bellabes <[email protected]>
:::::: CC: Ingo Molnar <[email protected]>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]

Attachment: .config.gz
Description: application/gzip

_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to