summaryrefslogtreecommitdiffstats
path: root/src/vnet
AgeCommit message (Expand)AuthorFilesLines
2018-01-18Sub-Interface deletion not cleanup hash's properly (VPP-1136)John Lo2-14/+18
2018-01-11tapv2: deleting tap interface may leak buffers (VPP-1124)Steven4-11/+34
2018-01-10VPP-1120 SRv6 bug with SID list containing only one SID and no srhPablo Camarillo1-26/+65
2018-01-09VPP-1113 SR MPLS path.frp_label_stackPablo Camarillo1-17/+16
2018-01-09BIER: missing endian swap for imposition object in API returnNeale Ranns1-1/+1
2018-01-09BIER: crash in show command when no tables are presentNeale Ranns1-0/+1
2018-01-08GRE tunnel key should use fib_index instead of fib_id (VPP-1118)John Lo1-12/+1
2018-01-07VPP-1110 BVI reply ARP that doesn't request BVI loacl IP.zhaoqingling1-0/+6
2018-01-06Unify/cleanup usage of hash_set/unset_mem by tunnels (VPP-1117)John Lo3-78/+30
2018-01-06GRE tunnel key should use fib_index instead of fib_id (VPP-1118)John Lo1-2/+11
2017-12-22tcp: add builtin server/client transfer testFlorin Coras4-33/+60
2017-12-21fib: make deag entries urpf extemptFlorin Coras5-0/+19
2017-12-21VPP-1109 Fix loop for some CLI (code review)Swarup Nayak1-0/+3
2017-12-20L2 EmulationNeale Ranns2-1/+2
2017-12-20Fix MPLS local-label CLI help stringMarek Gradzki1-1/+1
2017-12-20VPP-1083 "ip punt redirect add" crashed if not mentioned any other parameterSwarup Nayak2-8/+28
2017-12-19BIER coverity fix in route downlaodNeale Ranns2-3/+3
2017-12-19FIB memory leak during recursive loop detectionNeale Ranns1-0/+2
2017-12-19VPP-1032: fix coverity warning in bierDave Barach1-2/+2
2017-12-19Fix passing bad context for callback functionJuraj Sloboda1-2/+2
2017-12-19lldp: Fix Coverity Warnings CID 177942, CID 177945Dave Wallace1-1/+1
2017-12-18session api: Fix Coverity Warning CID 180115Dave Wallace1-1/+1
2017-12-18SR-MPLS: binary API and automated steeringPablo Camarillo8-502/+1675
2017-12-18VPP-269 Coding standards cleanup - vnet/vnet/policerKrishanpal singh1-11/+14
2017-12-16GRE tunnel key includes the FIB tableNeale Ranns4-137/+219
2017-12-16Use crc32 wrapper (VPP-1086)Gabriel Ganne1-4/+4
2017-12-15Fix icmp/udp/tcp punt/drop pathsVijayabhaskar Katamreddy14-63/+79
2017-12-15fib: fix show fib path-list and pathFlorin Coras2-4/+4
2017-12-15ESP_AH_test_automation_scripts rev1“mystarrocks”1-7/+0
2017-12-14VPP-1100 Fix loop in "set punt tcp/udp command"Swarup Nayak1-5/+17
2017-12-14tap_v2: include host-side parameters in the dump binary APIMilan Lenco8-7/+114
2017-12-14BIER disposition default routeNeale Ranns3-8/+20
2017-12-14session: cleanup attach flagsFlorin Coras11-67/+66
2017-12-13IP bi-direction multicast - same cable check on egressNeale Ranns2-1/+17
2017-12-13make "test-all" target pass againGabriel Ganne3-2/+11
2017-12-13BIER: API documentation fixes.Neale Ranns1-10/+5
2017-12-13Separate heap for IPv4 mtriesNeale Ranns7-44/+73
2017-12-13GRE: fix single loop decap and add testNeale Ranns1-1/+1
2017-12-13Fix parameter mismatch in map-t codeJuraj Sloboda1-1/+1
2017-12-13VPP-1099 Fix create vxlan-gpe tunnel local 10::1 remote 20::1 vni 11 (for ipv6)Swarup Nayak1-0/+1
2017-12-13VPP-275 Coding standards cleanup - vnet/vnet/vxlan-gpesharath reddy5-1268/+1437
2017-12-12tcp/session: add make testsFlorin Coras1-11/+28
2017-12-12session: fix proxy removalFlorin Coras1-20/+68
2017-12-12Stats for Multicast FIBNeale Ranns2-0/+13
2017-12-12VPP-1092 Correcting ip punt delete flow, when recv if index valid but doesnt ...Swarup Nayak2-4/+10
2017-12-11session: generalize handling of network transportsFlorin Coras15-201/+263
2017-12-11ONE-33 "one statistics flush" throws assert when one counter not addedSwarup Nayak1-0/+3
2017-12-11VPP-273 Coding standards cleanup - vnet/vnet/unixsharath reddy8-794/+947
2017-12-11call unformat_free in some flow, remove unnecessary callsSwarup Nayak2-7/+17
2017-12-10BIER coverity FixNeale Ranns1-6/+8
builtin_alloca(bytes) always_inline uword clib_mem_is_heap_object (void *p) { void *heap = clib_mem_get_per_cpu_heap (); uword offset = (uword) p - (uword) heap; mheap_elt_t *e, *n; if (offset >= vec_len (heap)) return 0; e = mheap_elt_at_uoffset (heap, offset); n = mheap_next_elt (e); /* Check that heap forward and reverse pointers agree. */ return e->n_user_data == n->prev_n_user_data; } always_inline void clib_mem_free (void *p) { u8 *heap = clib_mem_get_per_cpu_heap (); /* Make sure object is in the correct heap. */ ASSERT (clib_mem_is_heap_object (p)); mheap_put (heap, (u8 *) p - heap); #if CLIB_DEBUG > 0 VALGRIND_FREELIKE_BLOCK (p, 0); #endif } always_inline void * clib_mem_realloc (void *p, uword new_size, uword old_size) { /* By default use alloc, copy and free to emulate realloc. */ void *q = clib_mem_alloc (new_size); if (q) { uword copy_size; if (old_size < new_size) copy_size = old_size; else copy_size = new_size; clib_memcpy (q, p, copy_size); clib_mem_free (p); } return q; } always_inline uword clib_mem_size (void *p) { ASSERT (clib_mem_is_heap_object (p)); mheap_elt_t *e = mheap_user_pointer_to_elt (p); return mheap_elt_data_bytes (e); } always_inline void * clib_mem_get_heap (void) { return clib_mem_get_per_cpu_heap (); } always_inline void * clib_mem_set_heap (void *heap) { return clib_mem_set_per_cpu_heap (heap); } void *clib_mem_init (void *heap, uword size); void clib_mem_exit (void); uword clib_mem_get_page_size (void); void clib_mem_validate (void); void clib_mem_trace (int enable); typedef struct { /* Total number of objects allocated. */ uword object_count; /* Total allocated bytes. Bytes used and free. used + free = total */ uword bytes_total, bytes_used, bytes_free; /* Number of bytes used by mheap data structure overhead (e.g. free lists, mheap header). */ uword bytes_overhead; /* Amount of free space returned to operating system. */ uword bytes_free_reclaimed; /* For malloc which puts small objects in sbrk region and large objects in mmap'ed regions. */ uword bytes_used_sbrk; uword bytes_used_mmap; /* Max. number of bytes in this heap. */ uword bytes_max; } clib_mem_usage_t; void clib_mem_usage (clib_mem_usage_t * usage); u8 *format_clib_mem_usage (u8 * s, va_list * args); /* Include appropriate VM functions depending on whether we are compiling for linux kernel, for Unix or standalone. */ #ifdef CLIB_LINUX_KERNEL #include <vppinfra/vm_linux_kernel.h> #endif #ifdef CLIB_UNIX #include <vppinfra/vm_unix.h> #endif #ifdef CLIB_STANDALONE #include <vppinfra/vm_standalone.h> #endif #include <vppinfra/error.h> /* clib_panic */ #endif /* _included_clib_mem_h */ /* * fd.io coding-style-patch-verification: ON * * Local Variables: * eval: (c-set-style "gnu") * End: */