wait_queue_entry_t __wq_entry; \
unsigned long flags; \
long __ret = ret; /* explicit shadow */ \
- sigset_t __blocked; \
+ sigset_t __old_blocked; \
\
- __blocked = cfs_block_sigsinv(0); \
+ cfs_block_sigsinv(0, &__old_blocked); \
init_wait(&__wq_entry); \
if (exclusive) \
__wq_entry.flags = WQ_FLAG_EXCLUSIVE; \
cmd; \
} \
finish_wait(&wq_head, &__wq_entry); \
- cfs_restore_sigs(__blocked); \
+ cfs_restore_sigs(&__old_blocked); \
__ret; \
})
wait_queue_entry_t __wq_entry; \
unsigned long flags; \
long __ret = ret; /* explicit shadow */ \
- sigset_t __blocked; \
+ sigset_t __old_blocked; \
\
- __blocked = cfs_block_sigsinv(0); \
+ cfs_block_sigsinv(0, &__old_blocked); \
init_wait(&__wq_entry); \
__wq_entry.flags = WQ_FLAG_EXCLUSIVE; \
for (;;) { \
} \
cmd; \
} \
- cfs_restore_sigs(__blocked); \
+ cfs_restore_sigs(&__old_blocked); \
finish_wait(&wq_head, &__wq_entry); \
__ret; \
})