Page MenuHomeFreeBSD

netgraph: If queue is full, don't enqueue in ng_source_rcvdata()

Authored by nc on Feb 3 2020, 4:40 AM.



If queue is full, don't enqueue in ng_source_rcvdata()

Submitted by: Neel Chauhan <neel AT neelc DOT org>

Diff Detail

R10 FreeBSD src repository
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

Please let me verify, that this change does not break D21968.


This comment should be removed.


_IF_xxx are unlocked, while IF_xxx enclose the operation in the queue mutex.

Because all calls in the module use the unlocked version, there is no need to make an extra effort here.

OTOH, even if the other calls would use locking, this call did not need any locking because it's read only and the possible damage in the case of a race condition is limited.

So I'm fine with it.

donner requested changes to this revision.Feb 3 2020, 7:45 AM

There are no interactions with the other open review.

To proceed, please remove the comment in

This revision now requires changes to proceed.Feb 3 2020, 7:45 AM

Sure, removed the comment

nc marked an inline comment as done.Feb 3 2020, 1:53 PM

I'd like to have an error value other than 0.
How about ENOBUFS or similar?

This revision is now accepted and ready to land.Feb 3 2020, 8:31 PM

Approved by: kp (mentor)