Messages in this thread | | | Date | Mon, 12 Nov 2007 08:54:52 +0100 | From | Adrian Bunk <> | Subject | Re: [RFC 13/13] Char: nozomi, cleanup read and write |
| |
On Sat, Nov 10, 2007 at 11:04:41PM +0100, Jiri Slaby wrote: > On 11/10/2007 05:15 PM, Adrian Bunk wrote: > > On Fri, Nov 09, 2007 at 06:51:35PM -0500, Jiri Slaby wrote: > >> ... > >> --- a/drivers/char/nozomi.c > >> +++ b/drivers/char/nozomi.c > >> ... > >> - if (size_bytes - i == 2) { > >> + if (unlikely(size_bytes - i == 2)) { > >> ... > > > > Please don't add likely/unlikely in drivers unless it brings a > > measurable improvement. > > Why? Anyway I think this is the case. The body of the then branch is executed at > most once, while the else branch each time but last. If you write/read 1002 > bytes, it means 250:1. ...and it's invoked from interrupt too...
AFAIK there is no well defined semantics whether likely/unlikely means 10:1 or 10000:1 that is guaranteed to not change during the next 10 years.
Unless there's a measurable difference, it's best to write readable C code and simply leave all optimizations to the compiler.
> regards,
cu Adrian
--
"Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed
- 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/
| |