ACPI / util: cast data to u64 before shifting to fix sign extension
authorColin Ian King <colin.king@canonical.com>
Fri, 18 Mar 2016 15:08:01 +0000 (15:08 +0000)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 22 Mar 2016 00:23:00 +0000 (01:23 +0100)
commit4a798f508f5d0809f45c939e329e17b3eb0ffbc1
tree66b0c18b068d71a62ee6c4ad5727815f78e10ac1
parentbea3c377c286f4f63f67f2e061c1d8851af76b7e
ACPI / util: cast data to u64 before shifting to fix sign extension

obj->buffer.pointer[i] should be cast to u64 to prevent an unintentional
sign extension.  For example, if pointer[7] is 0x80, then the value
0xffffffffff000000 is or'd into mask rather than the intended value
0xff00000000000000

Detected with static analysis by CoverityScan

Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/utils.c