[Oisf-devel] [COMMIT] OISF branch, master, updated. suricata-2.0.2-35-g0dd1646
OISF Git
noreply at openinfosecfoundation.org
Fri Jul 25 06:53:05 UTC 2014
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "OISF".
The branch, master has been updated
via 0dd16461cf120238dbcb76ea3e405676ccb60b46 (commit)
via 28ccea51d36a38bec124cc44b0e011621619d05d (commit)
via b1a7e76ca7186007db73d49562d92249bc91ac93 (commit)
via a38d5a0135e877edc8c618b5e38c70a00f33aede (commit)
via be448aef22f51a80f725a41624093e6e0f365387 (commit)
via 3c6e01f653225de320e96f2138204a9e62a5f3d7 (commit)
from 94571c5dd28858ff68c44b648fd41c5d87c0e28d (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 0dd16461cf120238dbcb76ea3e405676ccb60b46
Author: Ken Steele <ken at tilera.com>
Date: Wed Jul 9 10:53:34 2014 -0400
Update max-pending-packet comments to show it is now per-thread.
Updated suricata.yaml and comments in the code.
commit 28ccea51d36a38bec124cc44b0e011621619d05d
Author: Ken Steele <ken at tilera.com>
Date: Wed Jul 2 10:42:05 2014 -0400
Add error checking for pthread_setspecific() and pthread_key_create().
commit b1a7e76ca7186007db73d49562d92249bc91ac93
Author: Ken Steele <ken at tilera.com>
Date: Wed Jul 2 09:57:31 2014 -0400
Use posix_memalign instead of mm_malloc on non-Windows systems.
commit a38d5a0135e877edc8c618b5e38c70a00f33aede
Author: Ken Steele <ken at tilera.com>
Date: Tue Jul 1 17:10:00 2014 -0400
Implement thread specific data option when __thread is not available.
commit be448aef22f51a80f725a41624093e6e0f365387
Author: Ken Steele <ken at tilera.com>
Date: Mon Jun 30 15:12:38 2014 -0400
For PktPool add local pending freed packets list.
Better handle the autofp case where one thread allocates the majority
of the packets and other threads free those packets.
Add a list of locally pending packets. The first packet freed goes on the
pending list, then subsequent freed packets for the same Packet Pool are
added to this list until it hits a fixed number of packets, then the
entire list of packets is pushed onto the pool's return stack. If a freed
packet is not for the pending pool, it is freed immediately to its pool's
return stack, as before.
For the autofp case, since there is only one Packet Pool doing all the
allocation, every other thread will keep a list of pending packets for
that pool.
For the worker run mode, most packets are allocated and freed locally. For
the case where packets are being returned to a remote pool, a pending list
will be kept for one of those other threads, all others are returned as before.
Which remote pool for which to keep a pending list is changed each time the
pending list is returned. Since the return pending pool is cleared when it is
freed, then next packet to be freed chooses the new pending pool.
commit 3c6e01f653225de320e96f2138204a9e62a5f3d7
Author: Ken Steele <ken at tilera.com>
Date: Fri Mar 28 14:51:25 2014 -0400
Replace ringbuffer in Packet Pool with a stack for better cache locality
Using a stack for free Packet storage causes recently freed Packets to be
reused quickly, while there is more likelihood of the data still being in
cache.
The new structure has a per-thread private stack for allocating Packets
which does not need any locking. Since Packets can be freed by any thread,
there is a second stack (return stack) for freeing packets by other threads.
The return stack is protected by a mutex. Packets are moved from the return
stack to the private stack when the private stack is empty.
Returning packets back to their "home" stack keeps the stacks from getting out
of balance.
The PacketPoolInit() function is now called by each thread that will be
allocating packets. Each thread allocates max_pending_packets, which is a
change from before, where that was the total number of packets across all
threads.
-----------------------------------------------------------------------
Summary of changes:
src/alert-unified2-alert.c | 1 +
src/counters.c | 3 +-
src/decode.c | 8 +-
src/decode.h | 6 +
src/flow-manager.c | 1 +
src/source-af-packet.c | 10 +-
src/source-erf-dag.c | 9 +-
src/source-erf-file.c | 10 +-
src/source-ipfw.c | 9 +-
src/source-mpipe.c | 4 +-
src/source-napatech.c | 9 +-
src/source-nfq.c | 3 +-
src/source-pcap-file.c | 10 +-
src/source-pcap.c | 9 +-
src/source-pfring.c | 8 +-
src/suricata.c | 5 +-
src/tm-threads.c | 10 ++
src/tmqh-packetpool.c | 259 ++++++++++++++++++++++++++++++++++----------
src/tmqh-packetpool.h | 45 +++++++-
src/util-mem.h | 12 +-
suricata.yaml.in | 6 +-
21 files changed, 294 insertions(+), 143 deletions(-)
hooks/post-receive
--
OISF
More information about the Oisf-devel
mailing list