xenfb: connect to backend before registering fb
Subsystems (2)
PATCH 1/1 xenfb: connect to backend before registering fb
As soon as the framebuffer is registered, our methods may be called by the kernel. This leads to a crash as xenfb_refresh() gets called before we have the irq.
Connect to the backend before registering our framebuffer with the kernel.
[ Fixes bug http://bugzilla.kernel.org/show_bug.cgi?id=14059 ]
Signed-off-by Michal Schmidt <[email protected]>
Signed-off-by Jeremy Fitzhardinge <[email protected]>
drivers/video/xen-fbfront.c +4 -4
@@ -454,6 +454,10 @@ static int __devinit xenfb_probe(struct xenbus_device *dev,xenfb_init_shared_page (info, fb_info); + ret =xenfb_connect_backend (dev, info); +if (ret <0 ) + goto error; + ret =register_framebuffer (fb_info);if (ret) {fb_deferred_io_cleanup (fb_info);
@@ -464,10 +468,6 @@ static int __devinit xenfb_probe(struct xenbus_device *dev, } info->fb_info = fb_info; - ret =xenfb_connect_backend (dev, info); -if (ret <0 ) - goto error; -xenfb_make_preferred_console ();return 0 ;
Quoted 10 lines · Jeremy Fitzhardinge
As soon as the framebuffer is registered, our methods may be called by the kernel. This leads to a crash as
xenfb_refresh()gets called before we have the irq.Connect to the backend before registering our framebuffer with the kernel.
[ Fixes bug http://bugzilla.kernel.org/show_bug.cgi?id=14059 ]
Signed-off-by Michal Schmidt <[email protected]>Signed-off-by Jeremy Fitzhardinge <[email protected]>
Looks good to me.