On Wed, 16 Oct 2013 23:30:05 +0200 Peter Zijlstra wrote: > On Wed, Oct 16, 2013 at 08:51:39PM +0200, Thierry Reding wrote: > > Today's linux-next merge of the tip tree got a conflict in > > > > include/linux/wait.h > > > > caused by commits 1ab2460 (wait: add wait_event_cmd()) and fb869b6 > > (sched/wait: Clean up wait.h details a bit). > > > > I've cleaned it up (see below). Please verify that the resolution looks > > good. > > > +#define __wait_event_cmd(wq, condition, cmd1, cmd2) \ > > +do { \ > > + DEFINE_WAIT(__wait); \ > > + \ > > + for (;;) { \ > > + prepare_to_wait(&wq, &__wait, TASK_UNINTERRUPTIBLE); \ > > + if (condition) \ > > + break; \ > > + cmd1; \ > > + schedule(); \ > > + cmd2; \ > > + } \ > > + finish_wait(&wq, &__wait); \ > > +} while (0) > > Ideally we'd write the new thing like: > > #define __wait_event_cmd(wq, condition, cmd1, cmd2) \ > (void)___wait_event(wq, condition, TASK_UNINTERRUPTIBLE, 0, 0, \ > cmd1; schedule(); cmd2) > Oooo.. that looks much nicer. I'll make it look like that before it goes upstream. Thanks, NeilBrown