> +
> spin_lock_irqsave(&eq->spinlock, flags);
> +
> q_ofs = eq->ipz_queue.current_q_offset;
> - spin_unlock_irqrestore(&eq->spinlock, flags);
> do {
> - spin_lock_irqsave(&eq->spinlock, flags);
> q_ofs2 = eq->ipz_queue.current_q_offset;
> - spin_unlock_irqrestore(&eq->spinlock, flags);
> max--;
> } while (q_ofs == q_ofs2 && max > 0);
> +
> + spin_unlock_irqrestore(&eq->spinlock, flags);
> +
Does this loop have to drop the lock to give the EQ code a chance to
update the queue pointer? If I understand this correctly, the EQ
polling code is just trying to have a fallback if interrupts don't
work...
- R.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html