It's not a problem, it's standard-mandated behaviour.
The following conversions are available:
...
d Matches an optionally signed decimal integer; the next pointer
must be a pointer to int.
...
i Matches an optionally signed integer; the next pointer must be a
pointer to int. The integer is read in base 16 if it begins
with `0x' or `0X', in base 8 if it begins with `0', and in base
10 otherwise. Only characters that correspond to the base are
used.
IOW, %d _does_ mean base=10. base=0 is %i. That goes both for kernel and
userland implementations of scanf family (and for any standard-compliant
implementation, for that matter).
-
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/