Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
tcp_metrics.c File Reference
#include <linux/rcupdate.h>
#include <linux/spinlock.h>
#include <linux/jiffies.h>
#include <linux/module.h>
#include <linux/cache.h>
#include <linux/slab.h>
#include <linux/init.h>
#include <linux/tcp.h>
#include <linux/hash.h>
#include <linux/tcp_metrics.h>
#include <linux/vmalloc.h>
#include <net/inet_connection_sock.h>
#include <net/net_namespace.h>
#include <net/request_sock.h>
#include <net/inetpeer.h>
#include <net/sock.h>
#include <net/ipv6.h>
#include <net/dst.h>
#include <net/tcp.h>
#include <net/genetlink.h>

Go to the source code of this file.

Data Structures

struct  tcp_fastopen_metrics
 
struct  tcp_metrics_block
 
struct  tcpm_hash_bucket
 

Macros

#define TCP_METRICS_TIMEOUT   (60 * 60 * HZ)
 
#define TCP_METRICS_RECLAIM_DEPTH   5
 
#define TCP_METRICS_RECLAIM_PTR   (struct tcp_metrics_block *) 0x1UL
 
#define deref_locked_genl(p)
 
#define deref_genl(p)   rcu_dereference_protected(p, lockdep_genl_is_held())
 

Functions

void tcp_update_metrics (struct sock *sk)
 
void tcp_init_metrics (struct sock *sk)
 
bool tcp_peer_is_proven (struct request_sock *req, struct dst_entry *dst, bool paws_check)
 
 EXPORT_SYMBOL_GPL (tcp_peer_is_proven)
 
void tcp_fetch_timewait_stamp (struct sock *sk, struct dst_entry *dst)
 
 EXPORT_SYMBOL_GPL (tcp_fetch_timewait_stamp)
 
bool tcp_remember_stamp (struct sock *sk)
 
bool tcp_tw_remember_stamp (struct inet_timewait_sock *tw)
 
void tcp_fastopen_cache_get (struct sock *sk, u16 *mss, struct tcp_fastopen_cookie *cookie, int *syn_loss, unsigned long *last_syn_loss)
 
void tcp_fastopen_cache_set (struct sock *sk, u16 mss, struct tcp_fastopen_cookie *cookie, bool syn_lost)
 
 __setup ("tcpmhash_entries=", set_tcpmhash_entries)
 
void __init tcp_metrics_init (void)
 

Variables

int sysctl_tcp_nometrics_save __read_mostly
 

Macro Definition Documentation

#define deref_genl (   p)    rcu_dereference_protected(p, lockdep_genl_is_held())

Definition at line 929 of file tcp_metrics.c.

#define deref_locked_genl (   p)
Value:
rcu_dereference_protected(p, lockdep_genl_is_held() && \
lockdep_is_held(&tcp_metrics_lock))

Definition at line 925 of file tcp_metrics.c.

#define TCP_METRICS_RECLAIM_DEPTH   5

Definition at line 177 of file tcp_metrics.c.

#define TCP_METRICS_RECLAIM_PTR   (struct tcp_metrics_block *) 0x1UL

Definition at line 178 of file tcp_metrics.c.

#define TCP_METRICS_TIMEOUT   (60 * 60 * HZ)

Definition at line 169 of file tcp_metrics.c.

Function Documentation

__setup ( )
EXPORT_SYMBOL_GPL ( tcp_peer_is_proven  )
EXPORT_SYMBOL_GPL ( tcp_fetch_timewait_stamp  )
void tcp_fastopen_cache_get ( struct sock sk,
u16 mss,
struct tcp_fastopen_cookie cookie,
int syn_loss,
unsigned long last_syn_loss 
)

Definition at line 638 of file tcp_metrics.c.

void tcp_fastopen_cache_set ( struct sock sk,
u16  mss,
struct tcp_fastopen_cookie cookie,
bool  syn_lost 
)

Definition at line 662 of file tcp_metrics.c.

void tcp_fetch_timewait_stamp ( struct sock sk,
struct dst_entry dst 
)

Definition at line 562 of file tcp_metrics.c.

void tcp_init_metrics ( struct sock sk)

Definition at line 438 of file tcp_metrics.c.

void __init tcp_metrics_init ( void  )

Definition at line 1072 of file tcp_metrics.c.

bool tcp_peer_is_proven ( struct request_sock req,
struct dst_entry dst,
bool  paws_check 
)

Definition at line 533 of file tcp_metrics.c.

bool tcp_remember_stamp ( struct sock sk)

Definition at line 585 of file tcp_metrics.c.

bool tcp_tw_remember_stamp ( struct inet_timewait_sock tw)

Definition at line 611 of file tcp_metrics.c.

void tcp_update_metrics ( struct sock sk)

Definition at line 317 of file tcp_metrics.c.

Variable Documentation

Definition at line 23 of file tcp_metrics.c.