• K
    sched: Transform resched_task() into resched_curr() · 8875125e
    Kirill Tkhai 提交于
    We always use resched_task() with rq->curr argument.
    It's not possible to reschedule any task but rq's current.
    
    The patch introduces resched_curr(struct rq *) to
    replace all of the repeating patterns. The main aim
    is cleanup, but there is a little size profit too:
    
      (before)
    	$ size kernel/sched/built-in.o
    	   text	   data	    bss	    dec	    hex	filename
    	155274	  16445	   7042	 178761	  2ba49	kernel/sched/built-in.o
    
    	$ size vmlinux
    	   text	   data	    bss	    dec	    hex	filename
    	7411490	1178376	 991232	9581098	 92322a	vmlinux
    
      (after)
    	$ size kernel/sched/built-in.o
    	   text	   data	    bss	    dec	    hex	filename
    	155130	  16445	   7042	 178617	  2b9b9	kernel/sched/built-in.o
    
    	$ size vmlinux
    	   text	   data	    bss	    dec	    hex	filename
    	7411362	1178376	 991232	9580970	 9231aa	vmlinux
    
    	I was choosing between resched_curr() and resched_rq(),
    	and the first name looks better for me.
    
    A little lie in Documentation/trace/ftrace.txt. I have not
    actually collected the tracing again. With a hope the patch
    won't make execution times much worse :)
    Signed-off-by: NKirill Tkhai <tkhai@yandex.ru>
    Signed-off-by: NPeter Zijlstra <peterz@infradead.org>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Randy Dunlap <rdunlap@infradead.org>
    Cc: Steven Rostedt <rostedt@goodmis.org>
    Link: http://lkml.kernel.org/r/20140628200219.1778.18735.stgit@localhostSigned-off-by: NIngo Molnar <mingo@kernel.org>
    8875125e
sched.h 40.3 KB