x86/gpu: Fix sign extension issue in Intel graphics stolen memory quirks
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Sun, 13 Apr 2014 09:45:03 +0000 (12:45 +0300)
committerIngo Molnar <mingo@kernel.org>
Mon, 14 Apr 2014 06:50:56 +0000 (08:50 +0200)
Have the KB(),MB(),GB() macros produce unsigned longs to avoid
unintended sign extension issues with the gen2 memory size
detection.

What happens is first the uint8_t returned by
read_pci_config_byte() gets promoted to an int which gets
multiplied by another int from the MB() macro, and finally the
result gets sign extended to size_t.

Although this shouldn't be a problem in practice as all affected
gen2 platforms are 32bit AFAIK, so size_t will be 32 bits.

Reported-by: Bjorn Helgaas <bhelgaas@google.com>
Suggested-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: linux-kernel@vger.kernel.org
Link: http://lkml.kernel.org/r/1397382303-17525-1-git-send-email-ville.syrjala@linux.intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/kernel/early-quirks.c

Simple merge