[PATCH] intel: don't crash when freeing an uninitialized screen

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Mar 12, 2013 at 12:45:58PM -0700, Aaron Plattner wrote:
> When intel_scrn_create creates a screen, it sets scrn->driverPrivate to
> (void *)(match_data | 1).  Normally, this is read by I830PreInit and then
> replaced with a pointer to the intel_screen_private structure.  However, it's
> possible for the server to delete the screen before initializing it, which leads
> to a crash in I830FreeScreen when it tries to interpret the unaligned match_data
> pointer as a pointer to a intel_screen_private.
> 
> Fix this by checking the low bit of the pointer and skipping the teardown code
> if it's set.
> 
> Signed-off-by: Aaron Plattner <aplattner at nvidia.com>

Thanks, I had forgotten all about that path. Pushed,
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux