On 01/08/14 14:27, Dexuan Cui wrote: > Currently the VSC has no chance to notify the VSP of the dirty rectangle on VM > panic because the notification work is done in a workqueue, and in panic() the > kernel typically ends up in an infinite loop, and a typical kernel config has > CONFIG_PREEMPT_VOLUNTARY=y and CONFIG_PREEMPT is not set, so a context switch > can't happen in panic() and the workqueue won't have a chance to run. As a > result, the VM Connection window can't refresh until it's closed and we > re-connect to the VM. > > We can register a handler on panic_notifier_list: the handler can notify > the VSC and switch the framebuffer driver to a "synchronous mode", meaning > the VSC flushes any future framebuffer change to the VSP immediately. > > v2: removed the MS-TFS line in the commit message > v3: remove some 'unlikely' markings > v4: avoid global variables as Tomi Valkeinen suggested > > Cc: Haiyang Zhang <haiyangz@xxxxxxxxxxxxx> > Signed-off-by: Dexuan Cui <decui@xxxxxxxxxxxxx> > --- > drivers/video/fbdev/hyperv_fb.c | 62 +++++++++++++++++++++++++++++++++++++++-- > 1 file changed, 59 insertions(+), 3 deletions(-) Thanks, looks fine to me. Queuing for 3.17. Tomi
Attachment:
signature.asc
Description: OpenPGP digital signature
_______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel