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

Napatech bypass v1.09 #4478

Closed
wants to merge 2 commits into from
Closed

Conversation

pjyoung1
Copy link
Contributor

@pjyoung1 pjyoung1 commented Jan 9, 2020

Make sure these boxes are signed before submitting your Pull Request -- thank you.

Link to redmine ticket:
https://redmine.openinfosecfoundation.org/issues/2818

Describe changes:

Added hardware based bypass support on Napatech SmartNICs
Added support for inline processing using Napatech SmartNICs

This PR Addresses issues identified in the review of PR 4472
This reflects changes since PR [Napatech bypass v1.07]#4472)

Napatech hardware bypass support enables Suricata to utilize
capabilities of Napatech SmartNICs to selectively bypass flow-based
traffic.
Napatech hardware bypass support enables Suricata to utilize
capabilities of Napatech SmartNICs to selectively bypass flow-based
traffic.
@pjyoung1 pjyoung1 requested review from norg and a team as code owners January 9, 2020 18:02
@pjyoung1 pjyoung1 mentioned this pull request Jan 9, 2020
3 tasks
@pjyoung1
Copy link
Contributor Author

pjyoung1 commented Jan 9, 2020

This PR failed the Debian 9 test build with the error: "sip-response-line: Sub test #1: FAIL : expected 3 matches; got 1 for filter {'count': 3, 'match': {'event_type': 'alert'}}" This appears to be unrelated to any of the changes that I made. Can you explain what is causing this? Is this something that I did? If not, will I have to submit another PR for this?

@jlucovsky
Copy link
Contributor

This PR failed the Debian 9 test build with the error: "sip-response-line: Sub test #1: FAIL : expected 3 matches; got 1 for filter {'count': 3, 'match': {'event_type': 'alert'}}" This appears to be unrelated to any of the changes that I made. Can you explain what is causing this? Is this something that I did? If not, will I have to submit another PR for this?

We've seen this in the past and it's unlikely your change is causing it. I've restarted the PR checks.

@pjyoung1
Copy link
Contributor Author

pjyoung1 commented Jan 9, 2020

I see it passed the second time through. Thanks.

@jlucovsky
Copy link
Contributor

I see it passed the second time through. Thanks.

You're welcome

@pjyoung1 pjyoung1 closed this Jan 10, 2020
victorjulien added a commit to victorjulien/suricata that referenced this pull request Aug 19, 2021
Previously the flow manager would share evicted flows with the workers
while keeping the flows mutex locked. This reduced the number of unlock/
lock cycles while there was guaranteed to be no contention.

This turns out to be undefined behavior. A lock is supposed to be locked
and unlocked from the same thread. It appears that FreeBSD is stricter on
this than Linux.

This patch addresses the issue by unlocking before handing a flow off
to another thread, and locking again from the new thread.

Issue was reported and largely analyzed by Bill Meeks.

Bug: OISF#4478
victorjulien added a commit to victorjulien/suricata that referenced this pull request Aug 23, 2021
Previously the flow manager would share evicted flows with the workers
while keeping the flows mutex locked. This reduced the number of unlock/
lock cycles while there was guaranteed to be no contention.

This turns out to be undefined behavior. A lock is supposed to be locked
and unlocked from the same thread. It appears that FreeBSD is stricter on
this than Linux.

This patch addresses the issue by unlocking before handing a flow off
to another thread, and locking again from the new thread.

Issue was reported and largely analyzed by Bill Meeks.

Bug: OISF#4478
inashivb pushed a commit to inashivb/suricata that referenced this pull request Sep 1, 2021
Previously the flow manager would share evicted flows with the workers
while keeping the flows mutex locked. This reduced the number of unlock/
lock cycles while there was guaranteed to be no contention.

This turns out to be undefined behavior. A lock is supposed to be locked
and unlocked from the same thread. It appears that FreeBSD is stricter on
this than Linux.

This patch addresses the issue by unlocking before handing a flow off
to another thread, and locking again from the new thread.

Issue was reported and largely analyzed by Bill Meeks.

Bug: OISF#4478
(cherry picked from commit 9551cd0)
victorjulien added a commit to victorjulien/suricata that referenced this pull request Sep 6, 2021
Previously the flow manager would share evicted flows with the workers
while keeping the flows mutex locked. This reduced the number of unlock/
lock cycles while there was guaranteed to be no contention.

This turns out to be undefined behavior. A lock is supposed to be locked
and unlocked from the same thread. It appears that FreeBSD is stricter on
this than Linux.

This patch addresses the issue by unlocking before handing a flow off
to another thread, and locking again from the new thread.

Issue was reported and largely analyzed by Bill Meeks.

Bug: OISF#4478
(cherry picked from commit 9551cd0)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

2 participants