~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Linux Cross Reference
Linux/include/linux/if_eql.h

Version: ~ [ 2.2.5 ] ~ [ 2.4.1 ] ~ [ 2.4.9 ] ~ [ 2.6.17.10 ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /*
  2  * Equalizer Load-balancer for serial network interfaces.
  3  *
  4  * (c) Copyright 1995 Simon "Guru Aleph-Null" Janes
  5  * NCM: Network and Communications Management, Inc.
  6  *
  7  *
  8  *      This software may be used and distributed according to the terms
  9  *      of the GNU Public License, incorporated herein by reference.
 10  * 
 11  * The author may be reached as simon@ncm.com, or C/O
 12  *    NCM
 13  *    Attn: Simon Janes
 14  *    6803 Whittier Ave
 15  *    McLean VA 22101
 16  *    Phone: 1-703-847-0040 ext 103
 17  */
 18 
 19 #ifndef _LINUX_IF_EQL_H
 20 #define _LINUX_IF_EQL_H
 21 
 22 #include <linux/timer.h>
 23 
 24 #define EQL_DEFAULT_SLAVE_PRIORITY 28800
 25 #define EQL_DEFAULT_MAX_SLAVES     4
 26 #define EQL_DEFAULT_MTU            576
 27 #define EQL_DEFAULT_RESCHED_IVAL   100
 28 
 29 #define EQL_ENSLAVE     (SIOCDEVPRIVATE)
 30 #define EQL_EMANCIPATE  (SIOCDEVPRIVATE + 1)
 31 
 32 #define EQL_GETSLAVECFG (SIOCDEVPRIVATE + 2)
 33 #define EQL_SETSLAVECFG (SIOCDEVPRIVATE + 3)
 34 
 35 #define EQL_GETMASTRCFG (SIOCDEVPRIVATE + 4)
 36 #define EQL_SETMASTRCFG (SIOCDEVPRIVATE + 5)
 37 
 38 typedef struct slave {
 39   struct net_device *dev;
 40   long priority;
 41   long priority_bps;
 42   long priority_Bps;
 43   long bytes_queued;
 44   struct slave *next;
 45 } slave_t;
 46 
 47 typedef struct slave_queue {
 48   slave_t *head;
 49   slave_t *best_slave;
 50   int num_slaves;
 51   struct net_device *master_dev;
 52   char lock;
 53 } slave_queue_t;
 54 
 55 typedef struct equalizer {
 56   slave_queue_t *queue;
 57   int min_slaves;
 58   int max_slaves;
 59   struct net_device_stats *stats;
 60   struct timer_list timer;
 61   char timer_on;
 62 } equalizer_t;  
 63 
 64 typedef struct master_config {
 65   char master_name[16];
 66   int max_slaves;
 67   int min_slaves;
 68 } master_config_t;
 69 
 70 typedef struct slave_config {
 71   char slave_name[16];
 72   long priority;
 73 } slave_config_t;
 74 
 75 typedef struct slaving_request {
 76   char slave_name[16];
 77   long priority;
 78 } slaving_request_t;
 79 
 80 
 81 #endif /* _LINUX_EQL_H */
 82 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.