Page MenuHomeFreeBSD

melifaro (Alexander V. Chernikov)
User

Projects

User Details

User Since
May 27 2014, 9:32 AM (511 w, 6 d)

Recent Activity

Wed, Mar 6

melifaro added a comment to D44204: ip6_output: Reduce cache misses on pktopts.

Got it. From my pov we're now requiring explicit mental effort (and knowledge) that each field now comes with a bit, and field mutations may need flag updates. Often after some time it ends up with flags not being consistent, leading to hard-to-debug errors..
I don't have a _strong_ opinion on this, so won't object to the current version - and hope there won't be 'I told you so' situation in a year :-)

Wed, Mar 6, 9:55 PM

Tue, Mar 5

melifaro added a comment to D44204: ip6_output: Reduce cache misses on pktopts.

LGTM, q - would it be possible to introduce ‘ip6po_<set|clear>_<field>’ inline functions and use them so we don’t accidentally miss setting/clearing up the relevant bit?

Tue, Mar 5, 12:42 PM

Sat, Mar 2

melifaro accepted D44191: linux: require vnet(9) context in ifname_bsd_to_linux_name().
Sat, Mar 2, 7:25 PM

Mon, Feb 26

melifaro accepted D44089: netlink: add bool type support.

I’ a bit unsure about this one - as having pointer to bool may introduce

Mon, Feb 26, 7:25 PM
melifaro accepted D44088: netlink: fix casts.
Mon, Feb 26, 7:25 PM

Sun, Feb 25

melifaro accepted D43918: netlink: Don't use a zero-length array.
Sun, Feb 25, 9:08 AM

Tue, Feb 20

melifaro accepted D43983: arp: fix arp -s/-S.
Tue, Feb 20, 6:13 PM
melifaro accepted D43983: arp: fix arp -s/-S.
Tue, Feb 20, 8:02 AM

Feb 11 2024

melifaro added a comment to D43836: tcp: add asserts and safety in case no CC module is attached.

I agree we should rootcase the case. However - why do we need to perform these conditional checks everywhere?
Why can’t t_cc refer to the dummy cc structure? Why can’t the non-implemented/non-needed function point to no-op functions?

Feb 11 2024, 8:36 PM

Feb 5 2024

melifaro added a comment to D43709: IPv6 redirect doesn't work..

Thank you for submitting the patch. I’m not sure I fully understand the problem and the solution.
Could you please provide some examples?

Feb 5 2024, 2:10 PM

Jan 11 2024

melifaro accepted D43106: pflow: import from OpenBSD.
Jan 11 2024, 11:25 PM
melifaro accepted D43384: route: error on IPv4 network routes with incorrect destination.
Jan 11 2024, 11:19 PM

Jan 9 2024

melifaro added a comment to D43106: pflow: import from OpenBSD.

Thank you for updating the interface to netlink!
Generally LGTM, the only concern I have is about using sockaddrs inside netlink..

Jan 9 2024, 11:31 PM

Jan 8 2024

melifaro accepted D43366: netlink: just return EOPNOTSUPP on shutdown(2).
Jan 8 2024, 7:27 PM
melifaro accepted D43368: Add sysctl descriptions for net.netlink tree.
Jan 8 2024, 7:27 PM

Dec 26 2023

melifaro accepted D42785: netlink: improve nl_soreceive().
Dec 26 2023, 8:08 PM
melifaro accepted D42989: netlink: refactor control data generation for recvmsg(2).
Dec 26 2023, 7:41 PM
melifaro accepted D42525: tests/netlink: add netlink socket buffer test.
Dec 26 2023, 7:40 PM
melifaro accepted D42524: netlink: use protocol specific receive buffer.
Dec 26 2023, 7:02 PM
melifaro accepted D42523: netlink: uninline some KPI functions that work with struct nl_writer.
Dec 26 2023, 6:49 PM
melifaro accepted D42522: netlink: use domain specific send buffer.
Dec 26 2023, 6:48 PM
melifaro accepted D42521: netlink: simplify socket destruction.
Dec 26 2023, 6:31 PM
melifaro accepted D42520: linux/netlink: don't override sopt level.
Dec 26 2023, 6:29 PM
melifaro added a comment to D43106: pflow: import from OpenBSD.

Thank you for adding it! It's certainly nice to have an integrated solution for PF. Conceptually I'm all up for it.
For the control path implementation I'll second Glebius concern - it's pretty ugly to build a cloner, a bunch of interfaces to allow to use (non-extendable) interface ioctls..
I'd really suggest doing gentlink family with CREATE|UPDATE/DELETE/GET interface, which will be easily extendable. It may even be less code that it is now.

Dec 26 2023, 5:55 PM

Nov 14 2023

melifaro added a comment to D42410: tests: run all in jail by default.

Thanks for working on the idea of improving tests parallelism!
Conceptually I like the idea of auto-jailing, but the details matter :-)
Jails deal nicely with removing some tests-running side-effects, but not all.
Filesystem “virtualization” as well as network “virtualization” has to be set up explicitly to actually provide isolation for the respective tests.

Nov 14 2023, 10:58 PM

Oct 28 2023

melifaro added a comment to D42389: ethernet: Reduce a runtime ntohs() in fast path.

I’d rather avoid doing that. ntohs is fast and branchless, so I’d vote for optimizing for readability here (unless there is a measurable performance gain)

Oct 28 2023, 7:53 PM

Oct 19 2023

melifaro accepted D42283: tests: fix ATF_TESTS_PYTEST no clean build.
Oct 19 2023, 7:02 PM

Oct 16 2023

melifaro accepted D42222: netlink: descend into nested parsers when verifying.
Oct 16 2023, 3:19 PM
melifaro accepted D42223: netlink: cope with growing requests.
Oct 16 2023, 3:18 PM

Oct 12 2023

melifaro added a comment to D42170: netlink: include opt_netlink.h.
In D42170#962312, @imp wrote:

opt_global.h is ok. Opt_proto just moves th problem.

But we actually have it for inet/inet6 as well. I ran into the similar issues many times..

Oct 12 2023, 7:21 PM
melifaro added a comment to D42170: netlink: include opt_netlink.h.
In D42170#962271, @kp wrote:

Should we do the include in the headers that directly need it instead? That'd be at least netlink_ctl.h, netlink_message_writer.h and route/route_var.h.

This seem a bit contrary to the approach used in the other parts of the kernel. If really want to switch the pattern, I’d ether vote for opt_proto ( or opt_global.h)

Oct 12 2023, 7:13 PM
melifaro added a comment to D42170: netlink: include opt_netlink.h.

One caveat of this approach is that netlink/netlink.h has to be included before all headers which might expect NETLINK to be defined. For instance, it'll be a bug for .c files to include netlink.h after netlink_ctl.h. Maybe the solution there is to make netlink_ctl.h include opt_netlink.h as well, I'm not sure.

Another solution is to just define NETLINK in opt_global.h. I've never found having separate option headers to be useful.

I was thinking in a similar way, having opt_proto.h which contains defines for INET, INET6 and NETLINK, so a whole variety of errors would be eliminated..

Oct 12 2023, 7:10 PM
melifaro accepted D42170: netlink: include opt_netlink.h.
Oct 12 2023, 6:13 PM

Sep 18 2023

melifaro accepted D41903: ndp: cope with unresolved neighbours.
Sep 18 2023, 6:09 PM

Sep 14 2023

melifaro accepted D41842: the netlink macro NETLINK_GENERIC is conflicted with the old name defined in if_mib.h.
Sep 14 2023, 11:08 PM

Sep 13 2023

melifaro accepted D41839: arp(8): fix by-interface and by-host filtering when using netlink.
Sep 13 2023, 9:44 PM
melifaro accepted D41839: arp(8): fix by-interface and by-host filtering when using netlink.
Sep 13 2023, 2:59 PM

Sep 4 2023

melifaro accepted D41717: if_vlan: Always default to 802.1q..
Sep 4 2023, 8:06 PM

Aug 24 2023

melifaro accepted D41586: ifconfig: fix 'ifconfig -l link'.
Aug 24 2023, 8:40 PM
melifaro accepted D41584: ifconfig: fix logical error in interface matching for '-l ether'.
Aug 24 2023, 8:39 PM
melifaro accepted D41585: ifconfig: fix 'ifconfig -l ether'.
Aug 24 2023, 8:38 PM

Aug 13 2023

melifaro added a comment to D40213: Teach ifconfig to attach and run itself in a jail..
In D40213#943667, @dfr wrote:

Would there be any objection to me merging this change and the related change in D40377 to stable/13? It would make setting up container networking for containerd and nerdctl much simpler. For podman, it could also make networking more efficient - we currently use two jails per container with one solely used to own the container vnet while also allowing access to host networking tools.

No objection, the only note is that ifconfig(8) code is different in stable/13, so likely it would require some changes.

Aug 13 2023, 10:48 AM

Aug 3 2023

melifaro accepted D41301: netlink: Align allocations on __max_align_t, not uint64_t..
Aug 3 2023, 10:55 PM

Jul 3 2023

melifaro accepted D40859: Allows running socket_afinet regression tests in parallel.
Jul 3 2023, 6:48 PM

Jul 2 2023

melifaro added a comment to D20967: new MAC policy module - mac_ipacl.

Overall is a really nice addition and I'd love to have it in base. I have one concern on the rule import/export implementation - happy to discuss this further & left a couple of non-critical comments on the code.
Thank you for working on this!

Jul 2 2023, 11:10 AM · GSoC Students, GSoC Admins
melifaro added inline comments to D20967: new MAC policy module - mac_ipacl.
Jul 2 2023, 11:09 AM · GSoC Students, GSoC Admins

Jul 1 2023

melifaro committed rGbb06a80cf60b: netinet[6]: make in[6]_control use ucred instead of td. (authored by melifaro).
netinet[6]: make in[6]_control use ucred instead of td.
Jul 1 2023, 7:04 AM
melifaro closed D40793: netinet[6]: make in[6]_control use ucred instead of td.
Jul 1 2023, 7:04 AM
melifaro accepted D40819: ddb: Rework macros to make it easier to add new command tables..
Jul 1 2023, 5:37 AM

Jun 29 2023

melifaro added a reviewer for D40793: netinet[6]: make in[6]_control use ucred instead of td: network.
Jun 29 2023, 7:03 AM
melifaro requested review of D40793: netinet[6]: make in[6]_control use ucred instead of td.
Jun 29 2023, 7:03 AM

Jun 16 2023

melifaro committed rG793793553558: netlink: convert to IfAPI. (authored by melifaro).
netlink: convert to IfAPI.
Jun 16 2023, 4:00 PM
melifaro closed D40577: netlink: convert to IfAPI..
Jun 16 2023, 4:00 PM
melifaro added a comment to D40577: netlink: convert to IfAPI..

I agree with option 1, moving the LLE insertion code to if_llatbl.c

Yep. I drafted something, but I need to think about the desired KPI a bit more, as I want to accommodate child LLE inclusion (IPv4 over IPv6 LLEs ATM). Probably I'll come up with something in the next couple of days.

Jun 16 2023, 3:58 PM
melifaro committed rG511b35866a8a: ifnet: fix if_strings.h build check (authored by melifaro).
ifnet: fix if_strings.h build check
Jun 16 2023, 3:55 PM
melifaro closed D40331: netlink: dump interface capabilities with other interface data.
Jun 16 2023, 3:34 PM
melifaro committed rGc344eff91070: netlink: dump interface capabilities with other interface data. (authored by melifaro).
netlink: dump interface capabilities with other interface data.
Jun 16 2023, 3:34 PM
melifaro updated the summary of D40577: netlink: convert to IfAPI..
Jun 16 2023, 2:07 PM
melifaro requested review of D40577: netlink: convert to IfAPI..
Jun 16 2023, 2:02 PM
melifaro committed rG0fcc603a072f: ifconfig: fix armv6 build (authored by melifaro).
ifconfig: fix armv6 build
Jun 16 2023, 8:25 AM
melifaro committed rG7e1ec25c8b6d: ipfw: add state/comment tests (authored by melifaro).
ipfw: add state/comment tests
Jun 16 2023, 7:25 AM
melifaro committed rGa3930cd46ce6: ifconfig: use default (more rigid) WARNS level. (authored by melifaro).
ifconfig: use default (more rigid) WARNS level.
Jun 16 2023, 7:20 AM
melifaro committed rGf414f37e3861: ifconfig: remove global 'ifr' usage from ifmedia.c & remove 'ifr'. (authored by melifaro).
ifconfig: remove global 'ifr' usage from ifmedia.c & remove 'ifr'.
Jun 16 2023, 7:20 AM
melifaro committed rG7fa282e616c3: ifconfig: remove (most of) the usages of global 'struct ifreq ifr'. (authored by melifaro).
ifconfig: remove (most of) the usages of global 'struct ifreq ifr'.
Jun 16 2023, 7:20 AM
melifaro closed D40536: ifconfig: use default (more rigid) WARNS level..
Jun 16 2023, 7:20 AM
melifaro closed D40535: ifconfig: remove global 'ifr' usage from ifmedia.c & remove 'ifr'..
Jun 16 2023, 7:20 AM
melifaro closed D40534: ifconfig: remove (most of) the usages of global 'struct ifreq ifr'..
Jun 16 2023, 7:20 AM

Jun 15 2023

melifaro added inline comments to D32847: ifconfig(8) list scan: display non-Latin AP names and account for CJK character width.
Jun 15 2023, 9:42 AM
melifaro added a comment to D40557: iflib: add unlock to call ether_ifattach.

I guess it deserves some discussion on the interface model part. The alternative fix can be done on the Netlink side (try to avoid calling driver-specific ioctls on the ifarrival event) or by moving ifnet_arrival event later in the chain.
My question is what are the desired ether_ifattach() and ifnet_arrival calls/events semantics. Does the ifnet_arrival event mean "interface is fully ready" so it can be queried/updated for the caller? If not, how can the event listener get notified on the readiness?

Jun 15 2023, 7:23 AM
melifaro committed rG2b5dd8b89011: ipfw: use function return value to fetch insn argument. (authored by melifaro).
ipfw: use function return value to fetch insn argument.
Jun 15 2023, 6:50 AM
melifaro committed rG84b41342da1f: ipfw: add eaction tests (authored by melifaro).
ipfw: add eaction tests
Jun 15 2023, 6:37 AM

Jun 14 2023

melifaro added reviewers for D40536: ifconfig: use default (more rigid) WARNS level.: kp, network.
Jun 14 2023, 1:23 PM
melifaro requested review of D40536: ifconfig: use default (more rigid) WARNS level..
Jun 14 2023, 1:22 PM
melifaro added reviewers for D40535: ifconfig: remove global 'ifr' usage from ifmedia.c & remove 'ifr'.: kp, network.
Jun 14 2023, 1:05 PM
melifaro requested review of D40535: ifconfig: remove global 'ifr' usage from ifmedia.c & remove 'ifr'..
Jun 14 2023, 1:05 PM
melifaro updated the test plan for D40534: ifconfig: remove (most of) the usages of global 'struct ifreq ifr'..
Jun 14 2023, 1:02 PM
melifaro requested review of D40534: ifconfig: remove (most of) the usages of global 'struct ifreq ifr'..
Jun 14 2023, 1:01 PM
melifaro committed rG52ff8883185a: ifconfig: fix ifconfig crash when compiled w/WITHOUT_NETLINK. (authored by melifaro).
ifconfig: fix ifconfig crash when compiled w/WITHOUT_NETLINK.
Jun 14 2023, 10:40 AM
melifaro committed rG3927d0fb373c: ifconfig: fix -Wunused warnings (authored by melifaro).
ifconfig: fix -Wunused warnings
Jun 14 2023, 9:17 AM
melifaro committed rGa6094f844a82: ifconfig: remove 'newaddr' global variable (authored by melifaro).
ifconfig: remove 'newaddr' global variable
Jun 14 2023, 9:17 AM
melifaro closed D40441: ifconfig: remove 'newaddr' global variable.
Jun 14 2023, 9:17 AM
melifaro committed rGbbad5525fabf: ifconfig: start ifconfig context from main() (authored by melifaro).
ifconfig: start ifconfig context from main()
Jun 14 2023, 9:17 AM
melifaro closed D40440: ifconfig: start ifconfig context from main().
Jun 14 2023, 9:17 AM
melifaro committed rGd61064229fb2: ifconfig: fix comparison in printmimo(). (authored by melifaro).
ifconfig: fix comparison in printmimo().
Jun 14 2023, 9:17 AM
melifaro closed D40301: ifconfig: fix comparison in printmimo().
Jun 14 2023, 9:16 AM

Jun 13 2023

melifaro committed rG9247238cc4b8: netlink: fix failing TestRtNlAddIfaddrLo::test_add_6 tests. (authored by melifaro).
netlink: fix failing TestRtNlAddIfaddrLo::test_add_6 tests.
Jun 13 2023, 3:28 PM
melifaro retitled D40512: ipfw: simplify action parsing from ipfw cleanup #1 to ipfw: simplify action parsing.
Jun 13 2023, 2:50 PM
melifaro updated the test plan for D40512: ipfw: simplify action parsing.
Jun 13 2023, 2:44 PM
melifaro updated the diff for D40512: ipfw: simplify action parsing.

Add tests

Jun 13 2023, 2:44 PM
melifaro requested review of D40512: ipfw: simplify action parsing.
Jun 13 2023, 2:26 PM
melifaro committed rG6a9cfebaf1cf: ipfw: simplify action case parser (authored by melifaro).
ipfw: simplify action case parser
Jun 13 2023, 11:56 AM
melifaro committed rG9f44a47fd079: ipfw(8): add ioctl/instruction generation tests (authored by melifaro).
ipfw(8): add ioctl/instruction generation tests
Jun 13 2023, 11:56 AM
melifaro closed D40490: ipfw: simplify action case parser.
Jun 13 2023, 11:56 AM
melifaro closed D40488: ipfw(8): add ioctl/instruction generation tests.
Jun 13 2023, 11:56 AM
melifaro committed rGd77ca41f7762: ifconfig(8): add the dotted format for MAC addresses. (authored by trond.endrestol_ximalas.info).
ifconfig(8): add the dotted format for MAC addresses.
Jun 13 2023, 6:41 AM
melifaro committed rGea73ff9752f7: ifconfig: remove global_args variable. (authored by melifaro).
ifconfig: remove global_args variable.
Jun 13 2023, 6:29 AM
melifaro closed D40439: ifconfig: remove global_args.
Jun 13 2023, 6:28 AM
melifaro committed rG85e0016a9730: ifconfig: remove global 'name' variable. (authored by melifaro).
ifconfig: remove global 'name' variable.
Jun 13 2023, 6:28 AM
melifaro closed D40438: ifconfig: remove global 'name' variable..
Jun 13 2023, 6:28 AM
melifaro committed rGc6f0602f2349: ifconfig: pass if_ctx instead of socket to the tunnel handlers. (authored by melifaro).
ifconfig: pass if_ctx instead of socket to the tunnel handlers.
Jun 13 2023, 6:28 AM