/* Returns waiting task that should be serviced first or NULL if none exists  */
static struct ext_wait_queue* wq_get_first_waiter(struct mqueue_inode_info *info, int sr)
/* Returns waiting task that should be serviced first or NULL if none exists  */
static struct ext_wait_queue* wq_get_first_waiter(struct mqueue_inode_info *info, int sr)
{
	struct list_head *ptr;
	ptr = info->e_wait_q[sr].list.prev;
	if (ptr == &info->e_wait_q[sr].list)
		return NULL;
	return list_entry(ptr, struct ext_wait_queue, list);
}