On Wed 2009-11-11 14:00:16, Romit Dasgupta wrote: > Kicks out frozen bdi flusher task out of the refrigerator when the flusher task > needs to exit. > Signed-off-by: Romit Dasgupta <romit@xxxxxx> Ok, its slightly "interesting", but better than modifying common code. Looks ok to me. ACK. Pavel > --- > diff --git a/mm/backing-dev.c b/mm/backing-dev.c > index 5a37e20..c757b05 100644 > --- a/mm/backing-dev.c > +++ b/mm/backing-dev.c > @@ -606,8 +606,11 @@ static void bdi_wb_shutdown(struct backing_dev_info *bdi) > * Finally, kill the kernel threads. We don't need to be RCU > * safe anymore, since the bdi is gone from visibility. > */ > - list_for_each_entry(wb, &bdi->wb_list, list) > + list_for_each_entry(wb, &bdi->wb_list, list) { > + if (unlikely(frozen(wb->task))) > + wb->task->flags &= ~PF_FROZEN; > kthread_stop(wb->task); > + } > } > > void bdi_unregister(struct backing_dev_info *bdi) > -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm