• Li Zefan's avatar
    sched: fix a bug in sched domain degenerate · f29c9b1c
    Li Zefan authored
    Impact: re-add incorrectly eliminated sched domain layers
    
    (1) on i386 with SCHED_SMT and SCHED_MC enabled
    	# mount -t cgroup -o cpuset xxx /mnt
    	# echo 0 > /mnt/cpuset.sched_load_balance
    	# mkdir /mnt/0
    	# echo 0 > /mnt/0/cpuset.cpus
    	# dmesg
    	CPU0 attaching sched-domain:
    	 domain 0: span 0 level CPU
    	  groups: 0
    
    (2) on i386 with SCHED_MC enabled but SCHED_SMT disabled
    	# same with (1)
    	# dmesg
    	CPU0 attaching NULL sched-domain.
    
    The bug is that some sched domains may be skipped unintentionally when
    degenerating (optimizing) sched domains.
    Signed-off-by: default avatarLi Zefan <lizf@cn.fujitsu.com>
    Acked-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    f29c9b1c
sched.c 225 KB