diff -urN linux.orig/fs/buffer.c linux.diff/fs/buffer.c --- linux.orig/fs/buffer.c Fri Jan 11 15:29:58 2002 +++ linux.diff/fs/buffer.c Mon Jan 14 16:44:28 2002 @@ -140,8 +140,7 @@ { clear_bit(BH_Lock, &bh->b_state); smp_mb__after_clear_bit(); - if (waitqueue_active(&bh->b_wait)) - wake_up(&bh->b_wait); + wake_up(&bh->b_wait); } /* diff -urN linux.orig/include/linux/mm.h linux.diff/include/linux/mm.h --- linux.orig/include/linux/mm.h Fri Jan 11 15:29:58 2002 +++ linux.diff/include/linux/mm.h Mon Jan 14 16:44:28 2002 @@ -322,8 +322,7 @@ smp_mb__before_clear_bit(); \ if (!test_and_clear_bit(PG_locked, &(page)->flags)) BUG(); \ smp_mb__after_clear_bit(); \ - if (waitqueue_active(&(page)->wait)) \ - wake_up(&(page)->wait); \ + wake_up(&(page)->wait); \ } while (0) #define PageError(page) test_bit(PG_error, &(page)->flags) #define SetPageError(page) set_bit(PG_error, &(page)->flags)