struct wait_bit_queue *wait_bit
= container_of(wait, struct wait_bit_queue, wait);
- if (wait_bit->key.flags != key->flags ||
- wait_bit->key.bit_nr != key->bit_nr ||
- test_bit(key->bit_nr, key->flags))
+ if (!wait_bit_cleared(wait_bit, key))
return 0;
- else
- return autoremove_wake_function(wait, mode, sync, key);
+
+ return autoremove_wake_function(wait, mode, sync, key);
}
EXPORT_SYMBOL(wake_bit_function);