Plan 9 from Bell Labs’s /n/sources/patch/applied/devdraw-initscreenimage-from-isr/readme

Copyright © 2009 Alcatel-Lucent.
Distributed under the Lucent Public License version 1.02.
Download the Plan 9 distribution.


avoid calling initscreenimage() in drawblankscreen() as the allocation in
makescreenimage() uses waserror and requires to be called with a user
context (up != nil). the concrete call nesting was:

*interrupt*
	mouseclock()
		drawactive()
			drawblankscreen()
				initscreenimage()
					makescreenimage()
						waserror()
							*pagefault* due to up==nil
								fault386()
									panic("kernel fault: no user process...")

drawblankscreen only needed to access the screenimage to
get the color depth to calculate the number of palette
colors to clear. there is no point in blanking when
there is no screenimage in the firstplace, so i changed
the initscreenimage() call into a test for screenimage
being available or not and just return if it is not there.


Bell Labs OSI certified Powered by Plan 9

(Return to Plan 9 Home Page)

Copyright © 2009 Alcatel-Lucent. All Rights Reserved.
Comments to webmaster@plan9.bell-labs.com.