x86: fix dmi_alloc() to not advance alloc index in case of
authorParag Warudkar <parag.warudkar@gmail.com>
Wed, 30 Jan 2008 12:31:59 +0000 (13:31 +0100)
committerIngo Molnar <mingo@elte.hu>
Wed, 30 Jan 2008 12:31:59 +0000 (13:31 +0100)
commitbca25bafbb390eeec376ac994954b99489d198ec
tree39f9cd65b78c8efe65b633456c5473c38c4d249c
parent79da4721117fcf188b4b007b775738a530f574da
x86: fix dmi_alloc() to not advance alloc index in case of

dmi_alloc() for CONFIG_X86_64 is defined to allocate from a static array
and it maintains a allocation index which is advanced each time allocation
is attempted - it gets incremented even if an allocation fails thereby
depriving any future request that may be small enough to be satisfied from
the array.

Fix this by first testing if allocation is going to be possible and
incrementing alloc index only then.

Signed-off-by: Parag Warudkar <parag.warudkar@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
include/asm-x86/dmi.h