History log of /freebsd-current/sys/netgraph/ng_pipe.c
Revision Date Author Comments
# d44c7807 17-Apr-2024 Martin Vahlensieck <git@academicsolutions.ch>

ng_pipe: Do not panic when memory allocations fail

Signed-off-by: Martin Vahlensieck <git@academicsolutions.ch>

Reviewed by: markj
MFC after: 2 weeks
Pull Request: https://github.com/freebsd/freebsd-src/pull/1181


# a3ecf8c7 17-Apr-2024 Martin Vahlensieck <git@academicsolutions.ch>

ng_pipe: Replace deprecated random() with prng32_bounded()

Signed-off-by: Martin Vahlensieck <git@academicsolutions.ch>

MFC after: 2 weeks
Reviewed by: markj
Pull Request: https://github.com/freebsd/freebsd-src/pull/1181


# bb2ab7a3 17-Apr-2024 Martin Vahlensieck <git@academicsolutions.ch>

ng_pipe: Remove node when all hooks are disconnected

This is the behavior described in the man page.

Signed-off-by: Martin Vahlensieck <git@academicsolutions.ch>

Discussed with: glebius
Reviewed by: markj
MFC after: 2 weeks
Pull Request: https://github.com/freebsd/freebsd-src/pull/1181


# 8512311f 17-Apr-2024 Martin Vahlensieck <git@academicsolutions.ch>

ng_pipe: Fix whitespace

Signed-off-by: Martin Vahlensieck <git@academicsolutions.ch>

Reviewed by: markj
MFC after: 2 weeks
Pull Request: https://github.com/freebsd/freebsd-src/pull/1181


# 95ee2897 16-Aug-2023 Warner Losh <imp@FreeBSD.org>

sys: Remove $FreeBSD$: two-line .h pattern

Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/


# 4d846d26 10-May-2023 Warner Losh <imp@FreeBSD.org>

spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD

The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch
up to that fact and revert to their recommended match of BSD-2-Clause.

Discussed with: pfg
MFC After: 3 days
Sponsored by: Netflix


# 662c1305 01-Sep-2020 Mateusz Guzik <mjg@FreeBSD.org>

net: clean up empty lines in .c and .h files


# fe267a55 27-Nov-2017 Pedro F. Giffuni <pfg@FreeBSD.org>

sys: general adoption of SPDX licensing ID tags.

Mainly focus on files that use BSD 2-Clause license, however the tool I
was using misidentified many licenses so this was mostly a manual - error
prone - task.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.

No functional change intended.


# 563790a2 28-May-2014 Gleb Smirnoff <glebius@FreeBSD.org>

Use M_WAITOK for the NGM_PIPE_SET_CFG control message. We expect it to
arrive from userland only.

Submitted by: Dmitry Luhtionov <dmitryluhtionov gmail.com>


# 27dbe10a 08-Nov-2013 Marko Zec <zec@FreeBSD.org>

Eliminate duplicated & dead code.

MFC after: 3 days


# 2956ec9b 24-May-2011 Marko Zec <zec@FreeBSD.org>

Assume the link to be dead if bit error rate (BER) parameter is set to 1.
When a transition from link alive to link dead configuration or vice
versa occurs, notify any upstream and / or downstream peers using
NGM_FLOW messagges.

Link state notification using NGM_FLOW messages is modelled around
around already existing code in ng_ether.c.

MFC after: 3 days


# 674d86bf 18-Apr-2011 Gleb Smirnoff <glebius@FreeBSD.org>

Node constructor methods are supposed to be called in syscall
context always. Convert nodes to consistently use M_WAITOK flag
for memory allocation.

Reviewed by: julian


# 57ce8ebf 24-Nov-2010 Marko Zec <zec@FreeBSD.org>

Simplify ng_pipe locking model by relying on the netgraph framework
to provide serialization of calls into the node, which is accomplished
by markng the node as single-threaded (NGF_FORCE_WRITER).

The price we pay is that each ng_pipe instance now has its own callout
handler which polls for queued frames on each clock tick, as long as
the pipe has any frames in its internal queues. OTOH, we got rid of
the global ng_pipe mutex, so from now on multiple ng_pipe instances
can operate in parallel. This change also fixes counting of forwarded
frames when an ng_pipe node is not enforcing any packet impairments.

While here, attempt to improve adherance to style(9) throughout
otherwise mostly unreadable code.

MFC after: 3 days


# a7d5f7eb 19-Oct-2010 Jamie Gritton <jamie@FreeBSD.org>

A new jail(8) with a configuration file, to replace the work currently done
by /etc/rc.d/jail.


# c9840b23 05-Jul-2010 Marko Zec <zec@FreeBSD.org>

Fix a double-free bug which can occur if both bit error rate and packet
duplication probability are configured on a ng_pipe node.

Submitted by: Jeffrey Ahrenholtz
MFC after: 3 days


# 8016863c 30-Apr-2010 Edward Tomasz Napierala <trasz@FreeBSD.org>

Avoid undefined behaviour.

Reviewed by: zec@


# c0587701 07-Apr-2010 Joel Dahl <joel@FreeBSD.org>

Start copyright notice with /*-


# 530c0060 01-Aug-2009 Robert Watson <rwatson@FreeBSD.org>

Merge the remainder of kern_vimage.c and vimage.h into vnet.c and
vnet.h, we now use jails (rather than vimages) as the abstraction
for virtualization management, and what remained was specific to
virtual network stacks. Minor cleanups are done in the process,
and comments updated to reflect these changes.

Reviewed by: bz
Approved by: re (vimage blanket)


# 1ede983c 23-Oct-2008 Dag-Erling Smørgrav <des@FreeBSD.org>

Retire the MALLOC and FREE macros. They are an abomination unto style(9).

MFC after: 3 months


# d7f03759 19-Oct-2008 Ulf Lilleengen <lulf@FreeBSD.org>

- Import the HEAD csup code which is the basis for the cvsmode work.


# 9c238a0e 03-Sep-2008 Julian Elischer <julian@FreeBSD.org>

Add Marko's pipe node.
This allows one to do flow modulation similar to dummynet
between arbitrary nodes.