Re: [PATCH net 2/4] hv_netvsc: reset vf_inject on VF removal
From: Vitaly Kuznetsov <vkuznets@redhat.com>
Date: 2016-08-11 12:09:58
Yuval Mintz [off-list ref] writes:
quoted
+static void netvsc_inject_enable(struct net_device_context +*net_device_ctx) { + net_device_ctx->vf_inject = true; +} + +static void netvsc_inject_disable(struct net_device_context +*net_device_ctx) { + net_device_ctx->vf_inject = false; + + /* Wait for currently active users to drain out. */ + while (atomic_read(&net_device_ctx->vf_use_cnt) != 0) + udelay(50); +}That was already the behavior before, but are you certain you want to unconditionally block without any possible timeout?
Yes, this is OK. After PATCH4 of this series there is only one place which takes the vf_use_cnt (netvsc_recv_callback()) and it is an interrupt handler, there are no sleepable operations there. -- Vitaly