Page MenuHomeFreeBSD

donner (Lutz Donnerhacke)
User

Projects

User Details

User Since
Sep 26 2019, 9:24 AM (268 w, 3 d)

Recent Activity

Feb 20 2022

donner accepted D34319: bridge: Don't share broadcast packets.

Similar to ng_bridge, but there was hope that if_bridge could avoid such problems.

Feb 20 2022, 6:57 PM

Feb 6 2022

donner accepted D34185: ng pppoe(4): Add the required NET_EPOCH section to the hook disconnection function. .

LGTM

Feb 6 2022, 1:33 PM

Feb 3 2022

donner added a comment to D31941: Cast pointer to uintptr_t to avoid alignment warnings..
In D31941#772286, @jhb wrote:

udphdr doesn't need 4 byte alignment, just 2 byte. struct ip has an alignment of 2. What makes the compiler unhappy is the abuse of using a uint32_t pointer as a lazy way to multiply hlen by 4. The compiler (correctly) thinks this means that the intermediate up pointer requires 4 byte alignment. One could instead do something rather gross like:

Feb 3 2022, 12:55 PM

Feb 1 2022

donner added a comment to D31941: Cast pointer to uintptr_t to avoid alignment warnings..

All the solutions do not address the underlying problem: Do we know, that the payload is correctly assigned or not?
If we know, that we should use

alignas(int32_t) void * pstart = &up[p->ip_hl];
struct udphdr *u = pstart;
Feb 1 2022, 7:10 PM

Jan 4 2022

donner added a comment to D33673: netgraph/ng_ether: Reattach nodes to interfaces.

Thank you for reviewing, @pauamma_gundo.com

Jan 4 2022, 11:00 AM
donner updated the diff for D33673: netgraph/ng_ether: Reattach nodes to interfaces.
  • Fix man page grammar
Jan 4 2022, 10:58 AM

Jan 3 2022

donner updated the test plan for D33673: netgraph/ng_ether: Reattach nodes to interfaces.
Jan 3 2022, 3:13 PM
donner updated the diff for D33673: netgraph/ng_ether: Reattach nodes to interfaces.

It's not possible to remove a hook while creating it.
Find a better solution.

Jan 3 2022, 3:09 PM
donner added a comment to D33673: netgraph/ng_ether: Reattach nodes to interfaces.

Thank you. The bug is simple:

Jan 3 2022, 3:04 PM
donner committed rG8925a302a31a: tests/libalias: Portrange (authored by donner).
tests/libalias: Portrange
Jan 3 2022, 12:56 PM
donner committed rGe5c7bbe627e6: tests/libalias: Portrange (authored by donner).
tests/libalias: Portrange
Jan 3 2022, 11:20 AM

Dec 31 2021

donner added a comment to D33673: netgraph/ng_ether: Reattach nodes to interfaces.
In D33673#761884, @kp wrote:

Sorry for the delay so far. This is on my todo list for Monday.

Dec 31 2021, 1:57 PM

Dec 28 2021

donner accepted D33680: mbuf_tags: use explicitly sized type for 'type' parameter.

Good catch

Dec 28 2021, 3:59 PM

Dec 27 2021

donner added a comment to D31871: Fix 802.1ad handling bug in input processing of ethernet frames..

@melifaro may you please point me to the problem with QinQ processing?
How can the processing work, if the ethertype information is lost?

Regardless of what encap is (vlan or qinq) the vlan code effectively does the same - pullups the header and record the tag.
If NIC does not support QINIQ tag removal (or vlanhwtag is explicitly turned off), such frames will be dropped after the change, which is the breakage I'm talking about

Dec 27 2021, 9:55 PM
donner updated the test plan for D33673: netgraph/ng_ether: Reattach nodes to interfaces.
Dec 27 2021, 9:41 PM
donner added a comment to D33673: netgraph/ng_ether: Reattach nodes to interfaces.

This is the first approach to implement the reattach process.
It does compile. I did not test anything yet.

Dec 27 2021, 9:36 PM
donner requested review of D33673: netgraph/ng_ether: Reattach nodes to interfaces.
Dec 27 2021, 9:35 PM
donner added a comment to D33625: libalias unused var fix proposal.

Only alias_nbt.c may return any negative result. Even if no handler is suitable, the returned value from alias_mod.c would be positive (2). Every other handler always returns zero.

Dec 27 2021, 2:40 PM
donner updated the diff for D31871: Fix 802.1ad handling bug in input processing of ethernet frames..

Rebase to main.

Dec 27 2021, 2:10 PM
donner committed rG2c733b50c5a9: tests/libalias: Portrange (authored by donner).
tests/libalias: Portrange
Dec 27 2021, 1:56 PM
donner closed D31012: tests/libalias: Portrange.
Dec 27 2021, 1:56 PM

Nov 11 2021

donner accepted D32914: Add net.inet.ip.source_address_validation.

Thank you for including the fib.

Nov 11 2021, 7:55 AM
donner accepted D32905: Add ETHER_ALIGN support to ng_device(4)..
Nov 11 2021, 7:53 AM

Nov 10 2021

donner added a comment to D32905: Add ETHER_ALIGN support to ng_device(4)..

If I understand correctly, the requirement is to align the IP header unconditional.
So there is no need for an extra message, but all other nodes might be urged to add this, too.

Nov 10 2021, 6:37 PM
donner accepted D32913: ip_input: packet filters shall not modify m_pkthdr.rcvif.
Nov 10 2021, 7:19 AM

Nov 9 2021

donner accepted D32915: Add net.inet6.ip6.source_address_validation.
Nov 9 2021, 9:48 PM
donner accepted D32914: Add net.inet.ip.source_address_validation.
Nov 9 2021, 9:47 PM
donner updated subscribers of D32913: ip_input: packet filters shall not modify m_pkthdr.rcvif.

The reason for the change of the interface might be located in the pfil_run_hooks.
May be @kp can tell something more about the magic there.

Nov 9 2021, 9:46 PM
donner accepted D32912: Rename net.inet.ip.check_interface to rfc1122_strong_es and document it..

Others call this "host model" instead of "end system", hence I was confused without reading the documentation.

Nov 9 2021, 9:39 PM
donner added a comment to D32905: Add ETHER_ALIGN support to ng_device(4)..

I welcome this extension to other architectures. Thank you.

Nov 9 2021, 3:46 PM

Nov 3 2021

donner accepted D32807: Calculate delayed csums for IPv6 adress family in divert_packet.

LGTM

Nov 3 2021, 11:58 AM

Nov 1 2021

donner accepted D32760: carp tests: negative demotion.
Nov 1 2021, 12:47 PM
donner accepted D32759: carp: deal with negative net.inet.carp.demotion.

Because both types are "int", the calculation does work.
Good catch!

Nov 1 2021, 12:46 PM

Oct 25 2021

donner accepted D32608: Garbage collection in divert(4)..

Thank you for taking care of this.

Oct 25 2021, 7:42 AM

Oct 22 2021

donner accepted D32590: Retire synchronous PPP kernel driver sppp(4)..

Thank you for simplifying the code without dropping the functionality.

Oct 22 2021, 11:16 AM

Oct 21 2021

donner added a comment to D32550: ng_ether: implement 'attach'.

I agree that the ng_ether design with automatic creation of a node proved to be problematic. Ideally it should be explicitly attached and detached. The suggested patch will do that.

Oct 21 2021, 9:23 AM
donner added a comment to D32580: Implement GET_STACK_USAGE on remaining archs.

Oh, I'm impressed that this fixes the "intended break" triggered by the netgraph test.
Please go ahead!

Oct 21 2021, 9:19 AM

Oct 20 2021

donner accepted D32563: net: Allow binding of unspecified address without address existance.

The motivation behind the check can be understood from the viewpoint of a working system. It is an early dropout for a disconnected system.
But the PR253166 highlights, that this assumption is not valid during the early boot phase. So yes, remove this check.

Oct 20 2021, 7:00 AM

Oct 19 2021

donner added a comment to D32550: ng_ether: implement 'attach'.

For the performance aspect, the following code path is involved:

Oct 19 2021, 9:50 AM
donner added a comment to D32550: ng_ether: implement 'attach'.

A complete different approach would be to call ether_reassign from if_ethersubr.c

Oct 19 2021, 9:36 AM
donner added a comment to D32550: ng_ether: implement 'attach'.
In D32550#734666, @kp wrote:

In part it's to provide symmetry with the existing detach call. The original (Netgate internal) commit message also mentions a desire to avoid netgraph overhead ("This should prevent the netgraph queue to slow down network performance on fast links."), although I've not yet been able to measure any such impact myself. pfSense will actively detach interfaces unless/until it wants to use netgraph on them.

Oct 19 2021, 9:05 AM

Oct 18 2021

donner added a comment to D32550: ng_ether: implement 'attach'.
In D32550#734619, @kp wrote:

I may not know enough about netgraph, but I'm not sure how we could put it in the ether namespace. It can't be directed to the ng_ether node, because that doesn't exist at the time we try to (re-)attach.

Oct 18 2021, 4:44 PM
donner requested changes to D32550: ng_ether: implement 'attach'.

This proposed message is specific to the ng_ether node. There is no need to clobber the global message space with such a specialized message.

Oct 18 2021, 4:14 PM

Oct 8 2021

donner added a reviewer for D32363: Fix validation added into rev.360967 to handle fragmented UDP packets correctly: donner.
Oct 8 2021, 11:31 AM

Sep 23 2021

donner accepted D28638: ixl(4): Remove iavf(4) source files.
Sep 23 2021, 10:39 AM

Sep 17 2021

donner accepted D31941: Cast pointer to uintptr_t to avoid alignment warnings..
In D31941#721219, @imp wrote:

If char is really 32-bits long, then the uint8_t type must necessarily also be at least 32-bits long. char is the smallest unit you can have in C, absent non-standard extensions (and ignoring the special case of bit fields which aren't a first-class type).

Sep 17 2021, 7:54 AM

Sep 14 2021

donner added a comment to D31941: Cast pointer to uintptr_t to avoid alignment warnings..

Which architecture causes this problem?

Sep 14 2021, 3:45 PM

Sep 10 2021

donner accepted D31905: netpfil tests: extend dummynet tests to pf.

The rules of pf does not replicate exactly the same logic as the ipfw ones.
This might be insignificant how, but causes extra headache, if the test fails in an interesting way ...

Sep 10 2021, 6:45 PM
donner added a comment to D31904: pf: support dummynet.

okay or the ipfw part

Sep 10 2021, 6:39 PM
donner added inline comments to D31902: man dummynet: point to dnctl instead of ipfw.
Sep 10 2021, 6:37 PM
donner accepted D31903: dummynet: Does not depend on ipfw.

May this cause an unwanted effect on automatic module loading?
So may somebody depend on this dependency in the local setup?

Sep 10 2021, 6:33 PM

Sep 8 2021

donner updated the test plan for D31871: Fix 802.1ad handling bug in input processing of ethernet frames..
Sep 8 2021, 7:40 AM
donner added a comment to D31871: Fix 802.1ad handling bug in input processing of ethernet frames..

Could you describe the actual problem with ng_vlan? Without the problem statement, it's not exactly clear what can/should be done here.
This diff breaks QinQ processing, so it doesn't look like a path forward.

Sep 8 2021, 7:25 AM
donner updated the test plan for D31871: Fix 802.1ad handling bug in input processing of ethernet frames..
Sep 8 2021, 7:24 AM
donner updated the test plan for D31871: Fix 802.1ad handling bug in input processing of ethernet frames..
Sep 8 2021, 7:20 AM

Sep 7 2021

donner abandoned D31132: libalias: Possible packet_limit underrun.

The current situation is good enough.

Sep 7 2021, 10:11 AM
donner requested review of D31871: Fix 802.1ad handling bug in input processing of ethernet frames..
Sep 7 2021, 8:30 AM

Aug 26 2021

donner accepted D31695: libpfctl: fix double free.
Aug 26 2021, 7:27 PM

Aug 25 2021

donner accepted D31676: pf tests: Test ALTQ on top of if_bridge.

Same procedure as last test.

Aug 25 2021, 6:46 PM
donner accepted D31675: if_bridge: add ALTQ support.

Same game as if_vlan

Aug 25 2021, 6:45 PM
donner added inline comments to D31666: Remove compiler hacks.
Aug 25 2021, 6:24 AM

Aug 24 2021

donner accepted D31649: pf tests: test ALTQ CBQ on top of if_vlan.
Aug 24 2021, 2:42 PM
donner added inline comments to D31649: pf tests: test ALTQ CBQ on top of if_vlan.
Aug 24 2021, 8:28 AM
donner accepted D31647: if_vlan: add the ALTQ support to if_vlan..

LGTM

Aug 24 2021, 8:22 AM
donner added inline comments to D31647: if_vlan: add the ALTQ support to if_vlan..
Aug 24 2021, 6:40 AM

Aug 12 2021

donner accepted D31486: ng_bridge: Use M_NOWAIT when allocating memory in the newhook routine.

LGTM

Aug 12 2021, 9:05 PM

Aug 11 2021

donner added a comment to D31486: ng_bridge: Use M_NOWAIT when allocating memory in the newhook routine.

The whole netgraph code predates any epoch, so the interactions are interesting.

Aug 11 2021, 8:36 PM

Jul 27 2021

donner accepted D31305: bridge tests: verify that we can't change MTU of bridge member interfaces.
Jul 27 2021, 6:05 AM
donner accepted D31304: net: disallow MTU changes on bridge member interfaces.

Because this is an incompatible change to current behavior, it should be mentioned in the RELNOTES or UPDATEING

Jul 27 2021, 6:03 AM

Jul 25 2021

donner accepted D31302: rip: Add missing minimum length validation.

Good catch.

Jul 25 2021, 10:29 PM

Jul 23 2021

donner accepted D31289: bridge tests: test changing the bridge MTU.
Jul 23 2021, 6:29 PM
donner accepted D31288: if_bridge: allow MTU changes.

LGTM

Jul 23 2021, 6:25 PM

Jul 22 2021

donner accepted D31275: vlan: deduplicate bpf_setpcp() and pf_ieee8021q_setpcp().

LGTM

Jul 22 2021, 7:32 PM
donner added a comment to D31263: bpf: Add an ioctl to set the VLAN Priority on packets sent by bpf.

Do I understand correctly, that this is the first bpf-option to alter the packet in transit?
Usually I'd solve this problem by adding a simple netgraph network to the outgoing interface.

Jul 22 2021, 6:22 AM

Jul 14 2021

donner committed rG5c55ab57c818: libalias: fix divide by zero causing panic (authored by se).
libalias: fix divide by zero causing panic
Jul 14 2021, 11:55 AM
donner committed rG791035c8da5e: libalias: fix divide by zero causing panic (authored by se).
libalias: fix divide by zero causing panic
Jul 14 2021, 11:52 AM

Jul 10 2021

donner requested review of D31132: libalias: Possible packet_limit underrun.
Jul 10 2021, 12:51 PM

Jul 8 2021

donner added a comment to D31099: pf: remove DIOCGETSTATESNV.
In D31099#699666, @kp wrote:

My plan was to push the preceding patches (i.e. adding and moving to the new call in libpfctl) first, and this one a week later. That'd give main and stable/X users some time to build a new kernel and userspace before we remove the old call. That achieves having the new kernel support old userspace, with a short transition period (so we don't end up with DIOCGETSTATESNV in a release and we have to support is forever).

Jul 8 2021, 7:35 AM

Jul 7 2021

donner accepted D31082: mbuf: replace all direct uma_zfree(zone_mbuf) calls with m_free_raw.

Depends on D30959

Jul 7 2021, 7:20 AM
donner added a comment to D31077: if_epair: rework.

Good work! But hard to review.

Jul 7 2021, 7:15 AM

Jul 6 2021

donner committed rG1883127de488: libalias: Switch to SPLAY trees (authored by donner).
libalias: Switch to SPLAY trees
Jul 6 2021, 7:12 AM
donner committed rGe0a40dc22771: libalias: Restructure (authored by donner).
libalias: Restructure
Jul 6 2021, 7:12 AM
donner committed rG8b7b86fa6fe0: libalias: Promote per instance global variable timeStamp (authored by donner).
libalias: Promote per instance global variable timeStamp
Jul 6 2021, 7:12 AM
donner committed rGe3c21cc51bec: libalias: Stats are unsigned (authored by donner).
libalias: Stats are unsigned
Jul 6 2021, 7:12 AM
donner committed rGc207bb80909f: libalias: tidy up housekeeping (authored by donner).
libalias: tidy up housekeeping
Jul 6 2021, 7:12 AM
donner committed rG3a96a25da861: libalias: Switch to SPLAY trees (authored by donner).
libalias: Switch to SPLAY trees
Jul 6 2021, 6:57 AM
donner committed rG390866d47eff: libalias: Promote per instance global variable timeStamp (authored by donner).
libalias: Promote per instance global variable timeStamp
Jul 6 2021, 6:57 AM
donner committed rG78d515b2225e: libalias: Restructure (authored by donner).
libalias: Restructure
Jul 6 2021, 6:57 AM
donner committed rG69965155a5c2: libalias: Stats are unsigned (authored by donner).
libalias: Stats are unsigned
Jul 6 2021, 6:57 AM
donner committed rG3423d44cd152: libalias: tidy up housekeeping (authored by donner).
libalias: tidy up housekeeping
Jul 6 2021, 6:57 AM

Jul 5 2021

donner committed rG884da892b634: tests/libalias: Bugfix in used variables (authored by donner).
tests/libalias: Bugfix in used variables
Jul 5 2021, 6:02 AM
donner committed rGdc42a0503bc9: tests/libalias: Bugfix in used variables (authored by donner).
tests/libalias: Bugfix in used variables
Jul 5 2021, 5:59 AM

Jul 4 2021

donner committed rG4060e77f49d1: libalias: Remove a stray directive (authored by donner).
libalias: Remove a stray directive
Jul 4 2021, 3:58 PM
donner committed rG2f4d91f9cb22: libalias: Rewrite HISTORY (authored by donner).
libalias: Rewrite HISTORY
Jul 4 2021, 3:49 PM

Jul 3 2021

donner edited reviewers for D31012: tests/libalias: Portrange, added: tests; removed: Restricted Project.
Jul 3 2021, 10:32 PM
donner requested review of D31012: tests/libalias: Portrange.
Jul 3 2021, 10:32 PM
donner committed rGf28455344483: libalias: Fix API bug on initialization (authored by donner).
libalias: Fix API bug on initialization
Jul 3 2021, 9:12 PM

Jul 2 2021

donner committed rGb50a4dce1854: libalias: Avoid uninitialized expiration (authored by donner).
libalias: Avoid uninitialized expiration
Jul 2 2021, 11:10 PM
donner committed rGb3dc6f137b8d: tests/libalias: Bugfix in used variables (authored by donner).
tests/libalias: Bugfix in used variables
Jul 2 2021, 10:33 PM
donner committed rG25392fac9488: libalias: Fix splay comparsion bug (authored by donner).
libalias: Fix splay comparsion bug
Jul 2 2021, 10:33 PM