Re: [Patch 2/2 resend] Prevent vga16fb from accessing hw after it was unregistered

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

 



On Mon, 06 June 2011 Paul Mundt <lethal@xxxxxxxxxxxx> wrote:
> On Tue, May 24, 2011 at 10:32:21PM +0200, Bruno Pr??mont wrote:
> > diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c
> > index 5aac00e..bd9f93b 100644
> > --- a/drivers/video/fbmem.c
> > +++ b/drivers/video/fbmem.c
> > @@ -1661,6 +1661,11 @@ static int do_unregister_framebuffer(struct fb_info *fb_info)
> >  	device_destroy(fb_class, MKDEV(FB_MAJOR, i));
> >  	event.info = fb_info;
> >  	fb_notifier_call_chain(FB_EVENT_FB_UNREGISTERED, &event);
> > +	if (fb_info->fbops->fb_unregistered) {
> > +		mutex_lock(&fb_info->lock);
> > +		fb_info->fbops->fb_unregistered(fb_info);
> > +		mutex_unlock(&fb_info->lock);
> > +	}
> >  
> >  	/* this may free fb info */
> >  	put_fb_info(fb_info);
> 
> I'm not sure I really see the point, given that you can already do all of
> the same work by tying in to the notifier chain. See for example the
> sh_mobile_hdmi driver and its unreg notifier.

You can but is it a good idea to hook the driver itself to notifier chain
and do the work to find out if the info it's being notified for is one it
cares about?

In addition, if driver gets informed via the notifier it's unknown if kernel
users or driver get notified first, thus fb driver cannot give all kernel
users opportunity to cleanup before cleaning-up itself.
At best notification order depends on loading order of modules for fb driver
and kernel fb user (like fbcon).

Bruno
--
To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Video for Linux]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Tourism]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux