]> git.baikalelectronics.ru Git - kernel.git/commit
xen-netback: reintroduce guest Rx stall detection
authorDavid Vrabel <david.vrabel@citrix.com>
Wed, 22 Oct 2014 13:08:55 +0000 (14:08 +0100)
committerDavid S. Miller <davem@davemloft.net>
Sat, 25 Oct 2014 18:15:20 +0000 (14:15 -0400)
commit4bd06d997f465de1db375efcfae028bd0f695c3a
tree081341a32e4d7954ea805b145c18176876905ca7
parent9751a4131cd903b9adcda6de0dc3e8ce90e697eb
xen-netback: reintroduce guest Rx stall detection

If a frontend not receiving packets it is useful to detect this and
turn off the carrier so packets are dropped early instead of being
queued and drained when they expire.

A to-guest queue is stalled if it doesn't have enough free slots for a
an extended period of time (default 60 s).

If at least one queue is stalled, the carrier is turned off (in the
expectation that the other queues will soon stall as well).  The
carrier is only turned on once all queues are ready.

When the frontend connects, all the queues start in the stalled state
and only become ready once the frontend queues enough Rx requests.

Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Reviewed-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/xen-netback/common.h
drivers/net/xen-netback/interface.c
drivers/net/xen-netback/netback.c
drivers/net/xen-netback/xenbus.c