Addresses bug #3863, from Signed-off-by: Andrew Morton --- 25-akpm/include/linux/wait.h | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) diff -puN include/linux/wait.h~parenthesize-init_wait include/linux/wait.h --- 25/include/linux/wait.h~parenthesize-init_wait 2004-12-06 13:35:05.005141248 -0800 +++ 25-akpm/include/linux/wait.h 2004-12-06 13:35:52.274955144 -0800 @@ -326,8 +326,8 @@ int wake_bit_function(wait_queue_t *wait wait_queue_t name = { \ .task = current, \ .func = autoremove_wake_function, \ - .task_list = { .next = &name.task_list, \ - .prev = &name.task_list, \ + .task_list = { .next = &(name).task_list, \ + .prev = &(name).task_list, \ }, \ } @@ -338,15 +338,15 @@ int wake_bit_function(wait_queue_t *wait .task = current, \ .func = wake_bit_function, \ .task_list = \ - LIST_HEAD_INIT(name.wait.task_list), \ + LIST_HEAD_INIT((name).wait.task_list), \ }, \ } #define init_wait(wait) \ do { \ - wait->task = current; \ - wait->func = autoremove_wake_function; \ - INIT_LIST_HEAD(&wait->task_list); \ + (wait)->task = current; \ + (wait)->func = autoremove_wake_function; \ + INIT_LIST_HEAD(&(wait)->task_list); \ } while (0) /** _