]> 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)
commita2ba125581043cd392bb3653a876e662bfe3264f
tree515c24958e871c550b3b7f0c2356b4909ba83d61
parente32c3fa5ad9c503428c7e0ad9492af9bc7e7bd68
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