projects
/
platform
/
kernel
/
linux-rpi.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
ecb2448
)
i915: cast before shifting in i915_pte_count
author
Alan
<gnomes@lxorguk.ukuu.org.uk>
Wed, 17 Feb 2016 14:20:46 +0000
(14:20 +0000)
committer
Daniel Vetter
<daniel.vetter@ffwll.ch>
Wed, 17 Feb 2016 16:00:38 +0000
(17:00 +0100)
Otherwise a pde_shift big enough to overflow a u32 will be truncated before
assignment
Note: We never asked for ranges spanning a 4G boundary, so this issue
doesn't cause a real problem.
Signed-off-by: Alan Cox <alan@linux.intel.com>
[danvet: Add note why this isn't a real problem.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link:
http://patchwork.freedesktop.org/patch/msgid/20160217142043.4947.60447.stgit@localhost.localdomain
drivers/gpu/drm/i915/i915_gem_gtt.h
patch
|
blob
|
history
diff --git
a/drivers/gpu/drm/i915/i915_gem_gtt.h
b/drivers/gpu/drm/i915/i915_gem_gtt.h
index
66a6da2
..
368d111
100644
(file)
--- a/
drivers/gpu/drm/i915/i915_gem_gtt.h
+++ b/
drivers/gpu/drm/i915/i915_gem_gtt.h
@@
-418,7
+418,7
@@
static inline uint32_t i915_pte_index(uint64_t address, uint32_t pde_shift)
static inline uint32_t i915_pte_count(uint64_t addr, size_t length,
uint32_t pde_shift)
{
- const uint64_t mask = ~((1 << pde_shift) - 1);
+ const uint64_t mask = ~((1
ULL
<< pde_shift) - 1);
uint64_t end;
WARN_ON(length == 0);