Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Flow timeout timing/v14 #12084

Open
wants to merge 16 commits into
base: master
Choose a base branch
from

Commits on Nov 3, 2024

  1. threads: include name in error message

    When a thread fails to spawn, include the thread name in the error
    message.
    victorjulien committed Nov 3, 2024
    Configuration menu
    Copy the full SHA
    cf4a3cf View commit details
    Browse the repository at this point in the history
  2. unix/socket: cleanup start up logic

    No longer init then deinit part of the engine at startup of the unix
    socket mode.
    victorjulien committed Nov 3, 2024
    Configuration menu
    Copy the full SHA
    8f3c6bd View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    858453d View commit details
    Browse the repository at this point in the history
  4. flow: improve thread safety during timeout checks

    Timeout checks would access certain fields w/o locking, which could lead
    to thread safety issues.
    victorjulien committed Nov 3, 2024
    Configuration menu
    Copy the full SHA
    44592ec View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    b1140ea View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    c80afe7 View commit details
    Browse the repository at this point in the history
  7. flow: exact flow timeout

    Use a more precise calculation for timing out flows, using both the
    seconds and the micro seconds.
    victorjulien committed Nov 3, 2024
    Configuration menu
    Copy the full SHA
    78b8898 View commit details
    Browse the repository at this point in the history
  8. time: thread time update after flow update

    The flow worker needs to get the opportunity to run the flow update
    before globally making it's current timestamp available. This is to
    avoid another thread using the time to evict the flow that is about to
    get a legitimate update.
    victorjulien committed Nov 3, 2024
    Configuration menu
    Copy the full SHA
    9bc1c59 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    a516c42 View commit details
    Browse the repository at this point in the history
  10. flow: fix fb ts optimization

    If seconds match a flow can still be timing out.
    victorjulien committed Nov 3, 2024
    Configuration menu
    Copy the full SHA
    22683e0 View commit details
    Browse the repository at this point in the history
  11. flow/worker: improve flow timeout time accuracy

    When timing out flows, use the timestamp from the "owning" thread. This
    avoids problems with threads being out of sync with each other.
    victorjulien committed Nov 3, 2024
    Configuration menu
    Copy the full SHA
    5411384 View commit details
    Browse the repository at this point in the history
  12. flow/manager: in offline mode, use owning threads time

    As this may mean that a threads ts is a bit ahead of the minimum time
    the flow manager normally uses, it can evict flows a bit faster.
    victorjulien committed Nov 3, 2024
    Configuration menu
    Copy the full SHA
    663eefc View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    ef672b3 View commit details
    Browse the repository at this point in the history
  14. threads: seal after setup; unseal at shutdown

    The idea of sealing the thread store is that its members can be accessed
    w/o holding a lock to the whole store at runtime.
    victorjulien committed Nov 3, 2024
    Configuration menu
    Copy the full SHA
    2b8351f View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    add7b78 View commit details
    Browse the repository at this point in the history

Commits on Nov 4, 2024

  1. flow: skip lock for skippable flows

    Some checks can be done w/o holding a lock:
    - seeing if the flow matches the packet
    - if the hash row needs a timeout check
    
    This patch skips taking a lock in these conditions.
    victorjulien committed Nov 4, 2024
    Configuration menu
    Copy the full SHA
    b1ea592 View commit details
    Browse the repository at this point in the history