cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

failover.h (1210B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2/* Copyright (c) 2018, Intel Corporation. */
      3
      4#ifndef _FAILOVER_H
      5#define _FAILOVER_H
      6
      7#include <linux/netdevice.h>
      8
      9struct failover_ops {
     10	int (*slave_pre_register)(struct net_device *slave_dev,
     11				  struct net_device *failover_dev);
     12	int (*slave_register)(struct net_device *slave_dev,
     13			      struct net_device *failover_dev);
     14	int (*slave_pre_unregister)(struct net_device *slave_dev,
     15				    struct net_device *failover_dev);
     16	int (*slave_unregister)(struct net_device *slave_dev,
     17				struct net_device *failover_dev);
     18	int (*slave_link_change)(struct net_device *slave_dev,
     19				 struct net_device *failover_dev);
     20	int (*slave_name_change)(struct net_device *slave_dev,
     21				 struct net_device *failover_dev);
     22	rx_handler_result_t (*slave_handle_frame)(struct sk_buff **pskb);
     23};
     24
     25struct failover {
     26	struct list_head list;
     27	struct net_device __rcu *failover_dev;
     28	netdevice_tracker	dev_tracker;
     29	struct failover_ops __rcu *ops;
     30};
     31
     32struct failover *failover_register(struct net_device *dev,
     33				   struct failover_ops *ops);
     34void failover_unregister(struct failover *failover);
     35int failover_slave_unregister(struct net_device *slave_dev);
     36
     37#endif /* _FAILOVER_H */