The virtio_net driver has become the first one to call cpumask_next_wrap()
even if CONFIG_SMP is disabled, leading to a build error:

drivers/net/virtio_net.c: In function 'virtnet_set_affinity':
drivers/net/virtio_net.c:1916:10: error: implicit declaration of function 
'cpumask_next_wrap'; did you mean 'cpumask_next_and'? 
[-Werror=implicit-function-declaration]
    cpu = cpumask_next_wrap(cpu, cpu_online_mask,

Add a stub function along the lines of cpumask_first(), cpumask_next() etc.
I'm not entirely sure what should be returned in this case, but at
least for virtio_net, anything should work.

Fixes: 2ca653d607ce ("virtio_net: Stripe queue affinities across cores.")
Cc: Peter Zijlstra <pet...@infradead.org>
Cc: Caleb Raitto <carai...@google.com>
Cc: Willem de Bruijn <will...@google.com>
Cc: David S. Miller <da...@davemloft.net>
Signed-off-by: Arnd Bergmann <a...@arndb.de>
---
 include/linux/cpumask.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/include/linux/cpumask.h b/include/linux/cpumask.h
index 57f20a0a7794..079ba06309bd 100644
--- a/include/linux/cpumask.h
+++ b/include/linux/cpumask.h
@@ -159,6 +159,11 @@ static inline unsigned int cpumask_next_and(int n,
        return n+1;
 }
 
+static inline int cpumask_next_wrap(int n, const struct cpumask *mask, int 
start, bool wrap)
+{
+       return n;
+}
+
 /* cpu must be a valid cpu, ie 0, so there's no other choice. */
 static inline unsigned int cpumask_any_but(const struct cpumask *mask,
                                           unsigned int cpu)
-- 
2.18.0

Reply via email to