notifier_call_chain(&fb_notifier_list, FB_EVENT_MODE_CHANGE, 
notifier_call_chain(&fb_notifier_list, evnt, 
fb_set_var(struct fb_info *info, struct fb_var_screeninfo *var){	int err, flags = info->flags;	if (var->activate & FB_ACTIVATE_INV_MODE) {		struct fb_videomode mode1, mode2;		int ret = 0;		fb_var_to_videomode(&mode1, var);		fb_var_to_videomode(&mode2, &info->var);		/* make sure we don't delete the videomode of current var */		ret = fb_mode_is_equal(&mode1, &mode2);		if (!ret) {		    struct fb_event event;		    event.info = info;		    event.data = &mode1;		    ret = notifier_call_chain(&fb_notifier_list,					      FB_EVENT_MODE_DELETE, &event);		}		if (!ret)		    fb_delete_videomode(&mode1, &info->modelist);		return ret;	}	if ((var->activate & FB_ACTIVATE_FORCE) ||	    memcmp(&info->var, var, sizeof(struct fb_var_screeninfo))) {		if (!info->fbops->fb_check_var) {			*var = info->var;			return 0;		}		if ((err = info->fbops->fb_check_var(var, info)))			return err;		if ((var->activate & FB_ACTIVATE_MASK) == FB_ACTIVATE_NOW) {			struct fb_videomode mode;			int err = 0;			info->var = *var;			if (info->fbops->fb_set_par)				info->fbops->fb_set_par(info);			fb_pan_display(info, &info->var);			fb_set_cmap(&info->cmap, info);			fb_var_to_videomode(&mode, &info->var);			if (info->modelist.prev && info->modelist.next &&			    !list_empty(&info->modelist))				err = fb_add_videomode(&mode, &info->modelist);			if (!err && (flags & FBINFO_MISC_USEREVENT)) {				struct fb_event event;				info->flags &= ~FBINFO_MISC_USEREVENT;				event.info = info;				notifier_call_chain(&fb_notifier_list,						    FB_EVENT_MODE_CHANGE,						    &event);			}		}	}	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/7726e9e10fc6e026ed2dc00e48f4a3ffc1254ad2/fbmem.c/buggy/drivers/video/fbmem.c