Module Name: src
Committed By: snj
Date: Fri Apr 15 08:02:34 UTC 2016
Modified Files:
src/sys/external/bsd/drm2/dist/drm/i915 [netbsd-7]: intel_pm.c
Log Message:
Pull up following revision(s) (requested by riastradh in ticket #1156):
sys/external/bsd/drm2/dist/drm/i915/intel_pm.c: revision 1.9
Cast uint8_t to uint32_t before shifting left by 24.
Otherwise this is undefined behaviour unless int is 32-bit and the
uint8_t value happens to be <=127.
To generate a diff of this commit:
cvs rdiff -u -r1.4.2.4 -r1.4.2.5 \
src/sys/external/bsd/drm2/dist/drm/i915/intel_pm.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/external/bsd/drm2/dist/drm/i915/intel_pm.c
diff -u src/sys/external/bsd/drm2/dist/drm/i915/intel_pm.c:1.4.2.4 src/sys/external/bsd/drm2/dist/drm/i915/intel_pm.c:1.4.2.5
--- src/sys/external/bsd/drm2/dist/drm/i915/intel_pm.c:1.4.2.4 Thu Feb 11 22:52:58 2016
+++ src/sys/external/bsd/drm2/dist/drm/i915/intel_pm.c Fri Apr 15 08:02:34 2016
@@ -4487,8 +4487,8 @@ static void intel_init_emon(struct drm_d
pxw[15] = 0;
for (i = 0; i < 4; i++) {
- u32 val = (pxw[i*4] << 24) | (pxw[(i*4)+1] << 16) |
- (pxw[(i*4)+2] << 8) | (pxw[(i*4)+3]);
+ u32 val = ((u32)pxw[i*4] << 24) | ((u32)pxw[(i*4)+1] << 16) |
+ ((u32)pxw[(i*4)+2] << 8) | ((u32)pxw[(i*4)+3]);
I915_WRITE(PXW + (i * 4), val);
}