Como funcionam as macros prováveis ​​/ improváveis ​​no kernel do Linux e qual é o benefício delas?

Eu estive pesquisando algumas partes do kernel do Linux e encontrei chamadas como esta: if (unlikely(fd < 0)) { /* Do something */ } ou if (likely(!err)) { /* Do something */ } Eu encontrei a definição deles: #define likely(x) __builtin_expect((x),1) #define unlikely(x)...