Thread (7 messages) 7 messages, 4 authors, 2019-06-12

Re: [PATCH] Input: alps: Drop unlikely before IS_ERR(_OR_NULL)

From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Date: 2019-06-12 00:59:19
Also in: lkml

Hi Joe,

On Wed, Jun 05, 2019 at 07:28:53PM -0700, Joe Perches wrote:
On Thu, 2019-06-06 at 09:08 +0800, Kefeng Wang wrote:
quoted
On 2019/6/5 22:42, Pali Rohár wrote:
quoted
On Wednesday 05 June 2019 22:24:28 Kefeng Wang wrote:
quoted
IS_ERR(_OR_NULL) already contain an 'unlikely' compiler flag,
so no need to do that again from its callers. Drop it.
Hi! I already reviewed this patch and rejected it, see:
https://patchwork.kernel.org/patch/10817475/
OK, please ignore it.
I think the stated reason of better readability isn't
particularly sensible as the object code produced is
actually slightly larger.

x86-64 defconfig (gcc 8.3.0)

$ size drivers/input/mouse/alps.o*
   text	   data	    bss	    dec	    hex	filename
  29416	     56	      0	  29472	   7320	drivers/input/mouse/alps.o.new
  29432	     56	      0	  29488	   7330	drivers/input/mouse/alps.o.old
If gcc produces worse code for double unlikely, you should probably
report it to gcc folks, no? Or double unlikely turns into likely?
Also if this unlikely is _really_ useful, perhaps the
!IS_ERR immediately after could also use likely as the
test seems only done for an OOM condition.
No, once you take the IS_ERR_OR_NULL(priv->dev3) == true branch it stops
being hot path and additional annotations are completely unneeded.

And if we failed to create and register priv->dev3 device - that's an
error and system is degraded. Can't do much here.

Thanks.

-- 
Dmitry
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help