Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1198495

Re: [PATCH v2] kthread: Export kthread functions

From yalin wang <yalin.wang2010@gmail.com>
Newsgroups linux.kernel
Subject Re: [PATCH v2] kthread: Export kthread functions
Date 2015-08-03 04:30 +0200
Message-ID <pTdFL-60J-1@gated-at.bofh.it> (permalink)
References (6 earlier) <pS9Xz-2S8-7@gated-at.bofh.it> <pSdRv-8qZ-1@gated-at.bofh.it> <pSjkf-8dP-37@gated-at.bofh.it> <pSzfk-66H-7@gated-at.bofh.it> <pSFb3-68V-5@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


> On Aug 1, 2015, at 21:32, Neil Horman <nhorman@redhat.com> wrote:
> 
> On Sat, Aug 01, 2015 at 03:12:42PM +0800, yalin wang wrote:
>> 
>>> 在 2015年7月31日,22:14,Thomas Gleixner <tglx@linutronix.de> 写道:
>>> 
>>> 
>>> On Fri, 31 Jul 2015, Thomas Gleixner wrote:
>>> 
>>>> On Fri, 31 Jul 2015, yalin wang wrote:
>>>>> it is optimised to 2 instructions ,
>>>>> 
>>>>> this is my patch, hope can be merged :
>>>> 
>>>> We are not exposing the internals of kthread management. Period.
>>> 
>>> And your 'optimization' is completely bogus:
>>> 
>>> Before your modification:
>>> 
>>> size kernel/built-in.o
>>> 
>>>  text	   data	    bss	    dec	    hex	filename
>>> 1091514	 141498  341928 1574940  18081c	../build/kernel/built-in.o
>>> 
>>> After:
>>> 
>>>  text	   data	    bss	    dec	    hex	filename
>>> 1091664  141498  341928 1575090  1808b2	../build/kernel/built-in.o
>>> 
>>> That's an increase of text size by 150 byte. Interesting optimization.
>>> 
>>> Thanks,
>>> 
>>> 	tglx
>>> 
>>> 
>> strange,  this is my test result:
>> 
>> size   built-in.o*
>>  text	   data	    bss	    dec	    hex	filename
>> 743937	  50786	  56008	 850731	  cfb2b	built-in.o        // with the patch
>> 744069	  50786	  56008	 850863	  cfbaf	built-in.o_old  // with out the patch
>> 
> So you're willing to expose the internals of kthread_park in exchange for the
> hope of saving 132 bytes of text.
> 
> Thats just dumb.  I agree with tglx, this shouldn't change.
> 
> Neil
not just size, mainly for performance,
without inline:

ffffffc0000d26b0:       97fff4aa        bl      ffffffc0000cf958 <kthread_should_park>
ffffffc0000d26b4:       53001c00        uxtb    w0, w0

if kthread_should_park() inline:
ffffffc0000d1a44:       f85c8020        ldr     x0, [x1,#-56]    									// kthread_should_park line
ffffffc0000d1a48:       36100300        tbz     w0, #2, ffffffc0000d1aa8 <smpboot_thread_fn+0xbc>   // kthread_should_park  line

still use 2 instructions, but don’t need a function call,
maybe can do more optimisation by gcc sometimes .
Anyway, this is just a suggest,
it is up to you apply it or not. :) 

Thanks











--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Re: [PATCH v2] kthread: Export kthread functions Andrew Morton <akpm@linux-foundation.org> - 2015-07-28 23:30 +0200
  Re: [PATCH v2] kthread: Export kthread functions yalin wang <yalin.wang2010@gmail.com> - 2015-07-30 05:50 +0200
    Re: [PATCH v2] kthread: Export kthread functions yalin wang <yalin.wang2010@gmail.com> - 2015-07-31 06:20 +0200
      Re: [PATCH v2] kthread: Export kthread functions yalin wang <yalin.wang2010@gmail.com> - 2015-08-03 04:30 +0200
        Re: [PATCH v2] kthread: Export kthread functions Jes Sorensen <Jes.Sorensen@redhat.com> - 2015-08-03 04:50 +0200

csiph-web