On Mon, Jan 03, 2011 at 02:49:43PM +0100, Tejun Heo wrote: > With cmwq, there's no reason to use separate workqueues. Drop > msmfb_info->resume_workqueue and use system_wq instead. > > Signed-off-by: Tejun Heo <tj@xxxxxxxxxx> > Cc: Stanislaw Gruszka <stf_xl@xxxxx> I'm not the right person, CC according to MAINTAINERS > Cc: linux-usb@xxxxxxxxxxxxxxx > --- > Only compile tested. Please feel free to take it into the subsystem > tree or simply ack - I'll route it through the wq tree. > > Thanks. > > drivers/video/msm/msm_fb.c | 11 +---------- > 1 files changed, 1 insertions(+), 10 deletions(-) > > diff --git a/drivers/video/msm/msm_fb.c b/drivers/video/msm/msm_fb.c > index debe593..5436aeb 100644 > --- a/drivers/video/msm/msm_fb.c > +++ b/drivers/video/msm/msm_fb.c > @@ -81,7 +81,6 @@ struct msmfb_info { > spinlock_t update_lock; > struct mutex panel_init_lock; > wait_queue_head_t frame_wq; > - struct workqueue_struct *resume_workqueue; > struct work_struct resume_work; > struct msmfb_callback dma_callback; > struct msmfb_callback vsync_callback; > @@ -111,7 +110,7 @@ static void msmfb_handle_dma_interrupt(struct msmfb_callback *callback) > if (msmfb->sleeping == UPDATING && > msmfb->frame_done == msmfb->update_frame) { > DLOG(SUSPEND_RESUME, "full update completed\n"); > - queue_work(msmfb->resume_workqueue, &msmfb->resume_work); > + schedule_work(&msmfb->resume_work); > } > spin_unlock_irqrestore(&msmfb->update_lock, irq_flags); > wake_up(&msmfb->frame_wq); > @@ -559,12 +558,6 @@ static int msmfb_probe(struct platform_device *pdev) > spin_lock_init(&msmfb->update_lock); > mutex_init(&msmfb->panel_init_lock); > init_waitqueue_head(&msmfb->frame_wq); > - msmfb->resume_workqueue = create_workqueue("panel_on"); > - if (msmfb->resume_workqueue == NULL) { > - printk(KERN_ERR "failed to create panel_on workqueue\n"); > - ret = -ENOMEM; > - goto error_create_workqueue; > - } > INIT_WORK(&msmfb->resume_work, power_on_panel); > msmfb->black = kzalloc(msmfb->fb->var.bits_per_pixel*msmfb->xres, > GFP_KERNEL); > @@ -589,8 +582,6 @@ static int msmfb_probe(struct platform_device *pdev) > return 0; > > error_register_framebuffer: > - destroy_workqueue(msmfb->resume_workqueue); > -error_create_workqueue: > iounmap(fb->screen_base); > error_setup_fbmem: > framebuffer_release(msmfb->fb); > -- > 1.7.1 > > -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html