> + /* We need to do an arithmetic right shift. ISO C says this is > + * implementation defined for negative left operands. Hence, be > + * careful to get it right, also for negative values. */ > + adj = (adj < 0) ? -((-adj) >> (2 * RC_PID_ARITH_SHIFT)) : > + adj >> (2 * RC_PID_ARITH_SHIFT); That looks... weird. As far as I know all compilers the kernel can use will do an arithmetic right shift if the data type is signed. johannes
Attachment:
signature.asc
Description: This is a digitally signed message part