liquidio: Prioritize control messages
authorIntiyaz Basha <intiyaz.basha@cavium.com>
Wed, 28 Mar 2018 02:25:18 +0000 (19:25 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 29 Mar 2018 18:13:49 +0000 (14:13 -0400)
commit697fefc7c1531f75ecd9623a4a4cbd47fab32ca8
treecc466aa9d9bfd043d81752e886bcd2fea31647bf
parentb349e0b5ec5d7be57ac243fb08ae8b994c928165
liquidio: Prioritize control messages

During heavy tx traffic, control messages (sent by liquidio driver to NIC
firmware) sometimes do not get processed in a timely manner.  Reason is:
the low-level metadata of control messages and that of egress network
packets indicate that they have the same priority.

Fix it by setting a higher priority for control messages through the new
ctrl_qpg field in the oct_txpciq struct.  It is the NIC firmware that does
the actual setting of priority by writing to the new ctrl_qpg field; the
host driver treats that value as opaque and just assigns it to pki_ih3->qpg

Signed-off-by: Intiyaz Basha <intiyaz.basha@cavium.com>
Signed-off-by: Felix Manlunas <felix.manlunas@cavium.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/cavium/liquidio/liquidio_common.h
drivers/net/ethernet/cavium/liquidio/request_manager.c