Re: Sane behavior of fbset
From: John Zielinski <hidden>
Date: 2004-06-23 17:29:38
Benjamin Herrenschmidt wrote:
It may have looked like a nice idea, but I think it's just wrong.
I think that the implementation is wrong, not the whole idea. Currently the vt_resize ioctl changes the vt size then tries to set the resolution leading to a whole bunch of problems when a suitable resolution can't be found and makes the fbset result ion change code path ugly as well. What should happen is that the vt_resize ioctl should be sent to the console driver first and then the console driver calls back the vt layer with the modified row and column numbers based on the closest resolution found. So what we have right now is: vt_ioctl (VT_RESIZE) -> vc_resize -> resize_screen -> con_resize -> fb_set_var -> fbcon_event_notify -> vc_resize* * or equivilent code depending on who's patch you use Which should be: vt_ioctl (VT_RESIZE) -> resize_screen -> con_resize -> fb_set_var & vc_resize You'd have to have a per vt var in order to have different console sizes on different vt's this way. The reason for not using the fbcon_event_notify is that it won't be called when the vt is not in the forground and I don't belive that a we need to resize the console when switching between different vt's. A vc_resize would the be necessary in the fb_ioctl FBIOPUT_VSCREENINFO code path in this case. John ------------------------------------------------------- This SF.Net email sponsored by Black Hat Briefings & Training. Attend Black Hat Briefings & Training, Las Vegas July 24-29 - digital self defense, top technical experts, no vendor pitches, unmatched networking opportunities. Visit www.blackhat.com