#ifndef CPUS_H #define CPUS_H #include #include "built_in.h" #include "die.h" static inline unsigned int get_number_cpus(void) { int ret = sysconf(_SC_NPROCESSORS_CONF); if (unlikely(ret <= 0)) panic("get_number_cpus error!\n"); return ret; } static inline unsigned int get_number_cpus_online(void) { int ret = sysconf(_SC_NPROCESSORS_ONLN); if (unlikely(ret <= 0)) panic("get_number_cpus_online error!\n"); return ret; } #endif /* CPUS_H */ loop and wait till netvsc_notify_peers() drops vf_use_cnt. - netvsc_notify_peers() starts on some other CPU but netdev_notify_peers() will hang on rtnl_lock(). - deadlock! Instead of introducing additional synchronization I suggest we drop gwrk.dwrk completely and call NETDEV_NOTIFY_PEERS directly. As we're acting under rtnl lock this is legitimate. Signed-off-by: Vitaly Kuznetsov Acked-by: Haiyang Zhang Signed-off-by: David S. Miller --- eanup'>emaclite-cleanup net-next plumbingsTobias Klauser
summaryrefslogtreecommitdiff
diff options
context:
space:
mode: