]> git.baikalelectronics.ru Git - kernel.git/commit
idr: explain WARN_ON_ONCE() on negative IDs out-of-range ID
authorTejun Heo <tj@kernel.org>
Thu, 28 Feb 2013 01:05:10 +0000 (17:05 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 28 Feb 2013 03:10:21 +0000 (19:10 -0800)
commitdaca399976cba89cf0f48d654059d7c8b9c46872
tree515c24958e871c550b3b7f0c2356b4909ba83d61
parentce4ee88dbb43152e985fe1e259ad4c0083cc3050
idr: explain WARN_ON_ONCE() on negative IDs out-of-range ID

Until recently, when an negative ID is specified, idr functions used to
ignore the sign bit and proceeded with the operation with the rest of
bits, which is bizarre and error-prone.  The behavior recently got changed
so that negative IDs are treated as invalid but we're triggering
WARN_ON_ONCE() on negative IDs just in case somebody was depending on the
sign bit being ignored, so that those can be detected and fixed easily.

We only need this for a while.  Explain why WARN_ON_ONCE()s are there and
that they can be removed later.

Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
lib/idr.c