> +void blk_set_preempt_only(struct request_queue *q, bool preempt_only)
> +{
> +     unsigned long flags;
> +
> +     spin_lock_irqsave(q->queue_lock, flags);
> +     if (preempt_only)
> +             queue_flag_set(QUEUE_FLAG_PREEMPT_ONLY, q);
> +     else
> +             queue_flag_clear(QUEUE_FLAG_PREEMPT_ONLY, q);
> +     spin_unlock_irqrestore(q->queue_lock, flags);
> +}
> +EXPORT_SYMBOL(blk_set_preempt_only);

Why do we even need this helper?  The lock doesn't make sense to me,
and it would just much easier to set/clear the flag from the driver.

Reply via email to