On Wed, Jun 12, 2013 at 11:58:44AM +0200, Michel Dänzer wrote:
From: Michel Dänzer michel.daenzer@amd.com
It takes an unsigned value. This happens not to blow up on 64-bit architectures, but it does on 32-bit, causing drm_calc_vbltimestamp_from_scanoutpos() to calculate totally bogus timestamps for vblank events. Which in turn causes e.g. gnome-shell to hang after a DPMS off cycle with current xf86-video-ati Git.
Cc: stable@vger.kernel.org Signed-off-by: Michel Dänzer michel.daenzer@amd.com
iiuc, this occurs when compensating for the early vblank interrupt. However,
#define ktime_sub_ns(kt, nsval) \ ({ (ktime_t){ .tv64 = (kt).tv64 - (nsval) }; })
so both tv64 and delta_ns are s64. I am not seeing the unsigned promotion bug here. -Chris