> Il giorno 18 dic 2018, alle ore 19:08, Jens Axboe <[email protected]> ha
> scritto:
>
> On 12/18/18 11:04 AM, Paolo Valente wrote:
>> static bool bfq_symmetric_scenario(struct bfq_data *bfqd)
>> {
>> - return !bfq_varied_queue_weights_or_active_groups(bfqd);
>> + /*
>> + * For queue weights to differ, queue_weights_tree must contain
>> + * at least two nodes.
>> + */
>> + bool varied_queue_weights = !RB_EMPTY_ROOT(&bfqd->queue_weights_tree) &&
>> + (bfqd->queue_weights_tree.rb_node->rb_left ||
>> + bfqd->queue_weights_tree.rb_node->rb_right);
>> +
>> + bool multiple_classes_busy =
>> + (bfqd->busy_queues[0] & bfqd->busy_queues[1]) |
>> + (bfqd->busy_queues[0] & bfqd->busy_queues[2]) |
>> + (bfqd->busy_queues[1] & bfqd->busy_queues[2]);
>
> I don't think this does what you want it to, looks like these should be
> logical AND and OR.
>
Absolutely, sorry. Fortunately, the end result is still correct :)
I'll fix this mess in the final patch.
Thanks,
Paolo
> --
> Jens Axboe
>