Page MenuHomeFreeBSD

dsl (Dmitry Salychev)
User

Projects (2)

User Details

User Since
Nov 1 2020, 1:24 PM (313 w, 6 d)

Recent Activity

Sun, Nov 1

dsl added a comment to D61079: dpaa2: Avoid DPMAC link toggling.
In D61079#1400373, @bz wrote:

You'll have to explain WHY this is possibly fixing the problem. Usually deferred contexts are not the right solutions to fix ordering problems (if that's what it would be)?

Sun, Nov 1, 4:51 PM
dsl updated the test plan for D61079: dpaa2: Avoid DPMAC link toggling.
Sun, Nov 1, 3:54 PM

Sat, Oct 31

dsl requested review of D61079: dpaa2: Avoid DPMAC link toggling.
Sat, Oct 31, 6:24 PM

Mon, Oct 12

dsl accepted D60653: arm64/acpica: Fix the IORT MSI xref type.

dpaa2 bits look good to me

Mon, Oct 12, 5:57 PM
dsl accepted D60656: dpaa2: Pass the APCI name to acpi_iort_map_named_msi.

lgtm

Mon, Oct 12, 5:54 PM

Sep 23 2026

dsl committed R11:bad95c117ba6: games/loderunner-ng: Retag LICENSE to the proper SPDX identifier.
Sep 23 2026, 12:24 PM

Sep 12 2026

dsl added a comment to D58258: dpaa2: read SFP+ module EEPROM through SIOCGI2C.
In D58258#1367549, @dsl wrote:

@adrian well, I'm not sure that the contributor actually understands the code. It seems AI/ML generated to me and isn't aligned with the idea of mine about maclink. I'm against the changes.

What do you mean by "maclink" ? They said they used AI assistance in developing it, but it seems mostly simple enough:

  • sfp is an i2c device on a bus;
  • the i2c bus doesn't HAVE to be hooked up to the MAC in any way; it in theory could be hanging off of some other i2c controller in the system;
  • there's information about where said bus is linked to in FDT;
  • some simple shenanigans are required to be able to talk to it and fetch configuration parameters.

What doesn't quite jive with your assumptions of stuff?

Sep 12 2026, 1:59 PM · network, drivers, arm64
dsl accepted D59589: website: Restore "The Power to Serve" on homepage.

I used to think it's still there!

Sep 12 2026, 1:13 PM

Sep 11 2026

dsl added a comment to D58258: dpaa2: read SFP+ module EEPROM through SIOCGI2C.

@adrian well, I'm not sure that the contributor actually understands the code. It seems AI/ML generated to me and isn't aligned with the idea of mine about maclink. I'm against the changes.

Sep 11 2026, 8:16 PM · network, drivers, arm64

Sep 10 2026

dsl committed rG7f79802bf931: dpaa2: Make cleanup budget values sysctl(9) tunable.
Sep 10 2026, 12:17 PM
dsl closed D59497: Make dpaa2 cleanup budget values configurable.
Sep 10 2026, 12:17 PM
dsl added a comment to D59497: Make dpaa2 cleanup budget values configurable.

Could you rebase to the latest main as well as it doesn't apply cleanly with https://reviews.freebsd.org/D59463 pushed?

Sep 10 2026, 10:44 AM
dsl accepted D59463: dpaa2: Allocate DMA tag per Rx buffer.
Sep 10 2026, 10:37 AM
dsl added inline comments to D59497: Make dpaa2 cleanup budget values configurable.
Sep 10 2026, 10:34 AM
dsl added a comment to D59463: dpaa2: Allocate DMA tag per Rx buffer.

Pushed to main during the devsummit. It works just fine as far as I can tell and according to the stress tests conducted during the hackathon 202609. Please, complain if it breaks something.

Sep 10 2026, 10:31 AM
dsl committed rG94a6919efda0: dpaa2: Allocate DMA tag per Rx buffer.
Sep 10 2026, 10:30 AM
dsl added inline comments to D59497: Make dpaa2 cleanup budget values configurable.
Sep 10 2026, 8:49 AM

Sep 8 2026

dsl requested changes to D59497: Make dpaa2 cleanup budget values configurable.
Sep 8 2026, 9:00 AM

Sep 6 2026

dsl updated the diff for D59463: dpaa2: Allocate DMA tag per Rx buffer.
Sep 6 2026, 4:07 PM
dsl committed rG7e34176e0326: dpaa2: Make software portal holdoff time a sysctl tunable.
Sep 6 2026, 1:19 PM
dsl closed D59461: Make dpaa2 software portal handoff time a sysctl tunable.
Sep 6 2026, 1:18 PM
dsl accepted D59461: Make dpaa2 software portal handoff time a sysctl tunable.
Sep 6 2026, 11:50 AM
dsl updated the test plan for D59463: dpaa2: Allocate DMA tag per Rx buffer.
Sep 6 2026, 8:56 AM
dsl requested review of D59463: dpaa2: Allocate DMA tag per Rx buffer.
Sep 6 2026, 8:56 AM
dsl requested changes to D59461: Make dpaa2 software portal handoff time a sysctl tunable.
Sep 6 2026, 8:16 AM

Jul 21 2026

dsl committed R9:2dad756c743f: pgpkeys: Update dsl@ key.
Jul 21 2026, 9:54 AM

Jul 16 2026

dsl added a comment to D58258: dpaa2: read SFP+ module EEPROM through SIOCGI2C.

Several years ago I added a draft version of the "sff,sfp" driver to https://cgit.freebsd.org/src/tree/sys/dev/sff. I wonder whether all of those sfp_i2c operations can be moved there and be hidden behind an API. dpaa2_ni would only need to obtain "sff,sfp" device (via xref, I think) and call it.

Jul 16 2026, 10:16 AM · network, drivers, arm64
dsl added a comment to D58258: dpaa2: read SFP+ module EEPROM through SIOCGI2C.

My Honeycomb doesn't have SFP cages exposes to the operating system, i.e. I cannot try it there directly. Besides, I don't like an idea to obtain info about the I2C config for SFPs using tunables on the ACPI systems. It is already described in the ACPI tables (partially, though):

dsl@castle:~ $ devinfo -v | grep I2C0
    vf_i2c_acpi0 <Vybrid Family Inter-Integrated Circuit (I2C)> pnpinfo _HID=NXP0001 _UID=0 _CID=none at handle=\_SB_.I2C0
        unknown pnpinfo _HID=NXP0002 _UID=0 _CID=none at addr=0x77 handle=\_SB_.I2C0.MUX0
    unknown pnpinfo _HID=PRP0001 _UID=0 _CID=none at handle=\_SB_.I2C0.MUX0.CH01.FAN1
    unknown pnpinfo _HID=PRP0001 _UID=1 _CID=none at handle=\_SB_.I2C0.MUX0.CH03.THE1

Only a fan controller (TI's amc6821) and a temperature sensor (NXP's sa56004) sitting on channels 1 and 3 respectively are described. However, according to the Honeycomb schematic, mux channels 4,5,6,7 are for the SFP cages. You can check whether a board you're booting up is LX2160A and set correct default values.

Jul 16 2026, 10:11 AM · network, drivers, arm64
dsl added a comment to D58258: dpaa2: read SFP+ module EEPROM through SIOCGI2C.

I can read a DAC on my Ten64 now. Looks good!

dpni8: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=60002b<RXCSUM,TXCSUM,VLAN_MTU,JUMBO_MTU,RXCSUM_IPV6,TXCSUM_IPV6>
        ether 00:0a:fa:24:2b:28
ifconfig: dpni8: no media types?
        nd6 options=829<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL,STABLEADDR>
        drivername: dpni8
        plugged: SFP/SFP+/SFP28 Unknown (Copper pigtail)
        vendor: FS PN: SFPP-PC03 SN: F2210XXXXX-2 DATE: 2022-08-12
root@cannon-tower:~ # ifconfig -v dpni9
dpni9: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=60002b<RXCSUM,TXCSUM,VLAN_MTU,JUMBO_MTU,RXCSUM_IPV6,TXCSUM_IPV6>
        ether 00:0a:fa:24:2b:27
ifconfig: dpni9: no media types?
        nd6 options=829<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL,STABLEADDR>
        drivername: dpni9
        plugged: SFP/SFP+/SFP28 Unknown (Copper pigtail)
        vendor: FS PN: SFPP-PC03 SN: F2210XXXXX-1 DATE: 2022-08-12
Jul 16 2026, 9:17 AM · network, drivers, arm64
dsl added inline comments to D58258: dpaa2: read SFP+ module EEPROM through SIOCGI2C.
Jul 16 2026, 9:08 AM · network, drivers, arm64
dsl added a comment to D58258: dpaa2: read SFP+ module EEPROM through SIOCGI2C.

Okay, thanks for opening a review. Please, provide a full context for the patch, i.e. -U999999.

Jul 16 2026, 6:01 AM · network, drivers, arm64

Apr 27 2026

dsl abandoned D51632: devel/love: Build with LUAJIT on aarch64.

Committed in https://cgit.freebsd.org/ports/commit/?id=9cd256080a694234243e2c35afefdeeaa22ffd07, no idea why no update

Apr 27 2026, 5:07 PM

Apr 22 2026

dsl committed rG2b3799b6608e: dpaa2: Extract frame-specific routines to dpaa2_frame.[h,c].
Apr 22 2026, 8:14 AM
dsl committed rGe27255a7f9e4: dpaa2: Extract checksum statuses on ingress.
Apr 22 2026, 8:14 AM
dsl committed rGf241c07ca87c: dpaa2: Extract frame-specific routines to dpaa2_frame.[h,c].
Apr 22 2026, 8:08 AM
dsl committed rG150ac95e4a56: dpaa2: Extract checksum statuses on ingress.
Apr 22 2026, 8:08 AM

Apr 21 2026

dsl added inline comments to D55321: dpaa2: ni: add more stats and link information.
Apr 21 2026, 9:33 AM
dsl added a comment to D55321: dpaa2: ni: add more stats and link information.

@bz I'd rebase this review and commit if you don't have time now.

Apr 21 2026, 8:06 AM

Apr 19 2026

dsl committed rG4a6d7fc1a00b: dpaa2: Extract checksum statuses on ingress.
Apr 19 2026, 6:12 PM
dsl closed D56383: dpaa2: Extract checksum statuses on ingress.
Apr 19 2026, 6:12 PM

Apr 18 2026

dsl added a comment to D56383: dpaa2: Extract checksum statuses on ingress.
In D56383#1293150, @bz wrote:

You could write this "This is effectively a refined version of the code written by bz@ in D55320." as part of the final commit message as:

Obtained from: bz (initial version, D55320)
or
Based on: initial version from bz (D55320)

I'll try to give it a pass again tonight once I am done with merges from vendor trees but I think we are good to go if @tuexen has not further comments.

Apr 18 2026, 4:59 PM
dsl added inline comments to D56383: dpaa2: Extract checksum statuses on ingress.
Apr 18 2026, 4:58 PM
dsl added inline comments to D56383: dpaa2: Extract checksum statuses on ingress.
Apr 18 2026, 11:49 AM
dsl added inline comments to D56383: dpaa2: Extract checksum statuses on ingress.
Apr 18 2026, 11:48 AM
dsl added a comment to D56383: dpaa2: Extract checksum statuses on ingress.

As soon as we were interested in the FD[ERR} field, I added another counter to track other ingress frames with errors. It can be detailed in future.

Apr 18 2026, 11:46 AM
dsl updated the diff for D56383: dpaa2: Extract checksum statuses on ingress.
Apr 18 2026, 11:43 AM

Apr 17 2026

dsl added a comment to D56383: dpaa2: Extract checksum statuses on ingress.
In D56383#1292511, @bz wrote:
In D56383#1292509, @dsl wrote:

Uhh, I've double-checked and dpaa2_ni_setup_if_caps is actually called on my side and reports correct changes in the csum validation/generation, but it doesn't affect the ingress frames at all:

dpaa2_ni_update_csum_flags: frc=0x10a000, fas=0x400000a00021100, csum_flags=0xf000000, csum_data=0xffff
dpaa2_ni_update_csum_flags: frc=0x10a000, fas=0x400000a00021100, csum_flags=0xf000000, csum_data=0xffff
dpaa2_ni_update_csum_flags: frc=0x30a000, fas=0x400000200021100, csum_flags=0xc000000, csum_data=0xffff

These FAS values make no sense if you look at the bits. Is this on the 2160 or on 1088?

Apr 17 2026, 1:14 PM
dsl added a comment to D56383: dpaa2: Extract checksum statuses on ingress.
In D56383#1292507, @bz wrote:

Unrelated but is that

1637         (void)DPAA2_CMD_NI_CLOSE(dev, child, &cmd);

at the end of dpaa2_ni_setup_if_caps correct passing &cmd instead of DPAA2_CMD_TK(&cmd, ni_token) ? I think that should be fixed.
Reported by: bz

Apr 17 2026, 10:48 AM
dsl added a comment to D56383: dpaa2: Extract checksum statuses on ingress.

Uhh, I've double-checked and dpaa2_ni_setup_if_caps is actually called on my side and reports correct changes in the csum validation/generation, but it doesn't affect the ingress frames at all:

Apr 17 2026, 10:41 AM
dsl added a comment to D56383: dpaa2: Extract checksum statuses on ingress.

When enabling rx csum offload, I do the the expected flags in incoming TCP segments. So this works now. But when disabling rx csum offload, I still see the flags:

tuexen@ten64:~ % ifconfig dpni1
dpni1: flags=1008843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500
	options=48002a<TXCSUM,VLAN_MTU,JUMBO_MTU,LINKSTATE,TXCSUM_IPV6>
	ether 00:0a:fa:24:2f:c6
	inet 212.201.121.124 netmask 0xffffffe0 broadcast 212.201.121.127
	inet6 fe80::20a:faff:fe24:2fc6%dpni1 prefixlen 64 scopeid 0x2
	inet6 2a02:c6a0:4015:10::124 prefixlen 64
	media: Ethernet autoselect (1000baseT <full-duplex,master>)
	status: active
	nd6 options=821<PERFORMNUD,AUTO_LINKLOCAL,STABLEADDR>

Output of:

#!/usr/sbin/dtrace -s

#pragma D option quiet

/* 
 * Trace tcp_input to capture incoming segments. 
 * arg0 is typically a pointer to the mbuf (struct mbuf *).
 */
fbt::tcp_input:entry
{
    /* Cast arg0 to access the mbuf structure and its packet header */
    this->m = *(struct mbuf **)arg0;
    this->flags = this->m->m_pkthdr.csum_flags;

    printf("%-20Y  Flags: 0x%08x\n", walltimestamp, this->flags);
}
fbt::tcp6_input:entry
{
    /* Cast arg0 to access the mbuf structure and its packet header */
    this->m = *(struct mbuf **)arg0;
    this->flags = this->m->m_pkthdr.csum_flags;

    printf("%-20Y  Flags: 0x%08x\n", walltimestamp, this->flags);
}

is:

2026 Apr 16 22:04:38  Flags: 0x0c000000
2026 Apr 16 22:04:38  Flags: 0x0c000000
2026 Apr 16 22:04:38  Flags: 0x0c000000
2026 Apr 16 22:04:38  Flags: 0x0c000000
2026 Apr 16 22:04:38  Flags: 0x0c000000
2026 Apr 16 22:04:38  Flags: 0x0c000000
2026 Apr 16 22:04:38  Flags: 0x0c000000
2026 Apr 16 22:04:38  Flags: 0x0c000000
2026 Apr 16 22:04:38  Flags: 0x0c000000
2026 Apr 16 22:04:38  Flags: 0x0c000000
2026 Apr 16 22:04:38  Flags: 0x0c000000

This is for TCP/IPv6. I would have expected 0. Is my expectation wrong?

Apr 17 2026, 9:26 AM

Apr 15 2026

dsl closed D56367: Status/2026Q1/drm-drivers-aarch64.adoc: Add report.
Apr 15 2026, 3:58 PM
dsl committed R9:53d1939d7375: Status/2026Q1/drm-drivers-aarch64.adoc: Add report.
Apr 15 2026, 3:58 PM
dsl closed D56366: Status/2026Q1/dpaa2.adoc: Add report.
Apr 15 2026, 3:56 PM
dsl committed R9:4cd69387e6ec: Status/2026Q1/dpaa2.adoc: Add report.
Apr 15 2026, 3:56 PM
dsl added a comment to D56383: dpaa2: Extract checksum statuses on ingress.

Looks good to me, will test it tomorrow. Right now my test system is not reachable and I am only back to my lab tomorrow.

Apr 15 2026, 12:27 PM
dsl added inline comments to D56383: dpaa2: Extract checksum statuses on ingress.
Apr 15 2026, 12:26 PM
dsl added inline comments to D56383: dpaa2: Extract checksum statuses on ingress.
Apr 15 2026, 12:03 PM
dsl added inline comments to D56383: dpaa2: Extract checksum statuses on ingress.
Apr 15 2026, 12:02 PM
dsl added inline comments to D56383: dpaa2: Extract checksum statuses on ingress.
Apr 15 2026, 12:00 PM
dsl updated the diff for D56383: dpaa2: Extract checksum statuses on ingress.
Apr 15 2026, 11:55 AM
dsl added a comment to D56367: Status/2026Q1/drm-drivers-aarch64.adoc: Add report.

Fixed

Apr 15 2026, 10:35 AM
dsl updated the diff for D56367: Status/2026Q1/drm-drivers-aarch64.adoc: Add report.
Apr 15 2026, 10:34 AM
dsl added a comment to D56366: Status/2026Q1/dpaa2.adoc: Add report.

I've fixed the comments and added another review (D56383) which is currently in progress.

Apr 15 2026, 10:31 AM
dsl updated the diff for D56366: Status/2026Q1/dpaa2.adoc: Add report.
Apr 15 2026, 10:30 AM

Apr 13 2026

dsl requested review of D56383: dpaa2: Extract checksum statuses on ingress.
Apr 13 2026, 8:33 PM

Apr 12 2026

dsl added a comment to D56367: Status/2026Q1/drm-drivers-aarch64.adoc: Add report.

Usually, there's drm-drivers.adoc report which summarizes activities regarding the drm-kmod drivers. It might be a good idea to include mine if the drm-drivers.adoc will appear.

Apr 12 2026, 8:09 PM
dsl requested review of D56367: Status/2026Q1/drm-drivers-aarch64.adoc: Add report.
Apr 12 2026, 8:07 PM
dsl requested review of D56366: Status/2026Q1/dpaa2.adoc: Add report.
Apr 12 2026, 8:06 PM

Apr 8 2026

dsl committed rG8e994533806d: dpaa2: Extract frame-specific routines to dpaa2_frame.[h,c].
Apr 8 2026, 7:49 PM
dsl closed D56315: dpaa2: Extract frame-specific routines to dpaa2_frame.[h,c].
Apr 8 2026, 7:49 PM
dsl requested review of D56315: dpaa2: Extract frame-specific routines to dpaa2_frame.[h,c].
Apr 8 2026, 4:47 PM
dsl added inline comments to D55320: dpaa2: dpaa2_ni_rx() RX checksum EN/ERR information for L3/4.
Apr 8 2026, 2:25 PM

Apr 4 2026

dsl committed rGc417ed80fd2f: dpaa2: Perform bus_dma pre-write sync before enqueue operation.
Apr 4 2026, 9:45 AM
dsl committed rG26b27a828803: dpaa2: Perform bus_dma pre-write sync before enqueue operation.
Apr 4 2026, 9:36 AM

Mar 29 2026

dsl committed rG5812415bee55: dpaa2: Perform bus_dma pre-write sync before enqueue operation.
Mar 29 2026, 6:36 PM
dsl added a reverting change for rG968164eb650f: dpaa2: Perform bus_dma pre-write sync before enqueue operation: rGc78e653b49f7: Revert "dpaa2: Perform bus_dma pre-write sync before enqueue operation".
Mar 29 2026, 6:36 PM
dsl committed rGc78e653b49f7: Revert "dpaa2: Perform bus_dma pre-write sync before enqueue operation".
Mar 29 2026, 6:36 PM
dsl closed D56144: dpaa2: Perform bus_dma pre-write sync before enqueue operation.
Mar 29 2026, 6:36 PM
dsl committed rG968164eb650f: dpaa2: Perform bus_dma pre-write sync before enqueue operation.
Mar 29 2026, 6:25 PM
dsl added a comment to D56144: dpaa2: Perform bus_dma pre-write sync before enqueue operation.

@tuexen Thanks for a quick response!

Mar 29 2026, 5:57 PM
dsl updated the test plan for D56144: dpaa2: Perform bus_dma pre-write sync before enqueue operation.
Mar 29 2026, 11:42 AM
dsl attached a referenced file: F150111545: test01d.c.
Mar 29 2026, 11:38 AM
dsl attached a referenced file: F150111558: test01.c.
Mar 29 2026, 11:38 AM
dsl updated the test plan for D56144: dpaa2: Perform bus_dma pre-write sync before enqueue operation.
Mar 29 2026, 11:37 AM
dsl requested review of D56144: dpaa2: Perform bus_dma pre-write sync before enqueue operation.
Mar 29 2026, 11:36 AM

Mar 16 2026

dsl committed R11:2f52a07fda6d: sysutils/coreutils: Fix build after 28599a1e5f1b.
Mar 16 2026, 3:05 PM

Feb 21 2026

dsl accepted D55321: dpaa2: ni: add more stats and link information.
Feb 21 2026, 3:05 PM

Feb 18 2026

dsl added inline comments to D55320: dpaa2: dpaa2_ni_rx() RX checksum EN/ERR information for L3/4.
Feb 18 2026, 9:34 AM

Jan 29 2026

dsl accepted D54893: dpaa2: add support for some interface counter.

Okay, I see. if_inc_counter() is implemented with counter_u64_add which is atomic on arm64, i.e. no synchronization is required. I don't think there's noticeable overhead either, i.e. lgtm.

Jan 29 2026, 9:55 PM
dsl added a comment to D54893: dpaa2: add support for some interface counter.

Can we hide those counters behind a macro (e.g. DPAA2_DEBUG)?

Jan 29 2026, 10:00 AM

Jan 26 2026

dsl added a comment to D54893: dpaa2: add support for some interface counter.

e.g. sysctl dev.dpaa2_ni.0 is not enough?

Jan 26 2026, 8:11 PM

Jan 22 2026

dsl accepted D54809: dpnaa2: announce transmit checksum support.

lgtm

Jan 22 2026, 11:00 PM

Jan 20 2026

dsl accepted D54805: dpaa2: cleanup.

lgtm

Jan 20 2026, 9:10 PM

Dec 29 2025

dsl committed rG23b83bfeb767: dpaa2: Setup interface caps on attach.
Dec 29 2025, 6:16 PM
dsl committed rG22f8973d1e5a: dpaa2: Setup interface caps on attach.
Dec 29 2025, 6:13 PM

Nov 19 2025

dsl committed rGa731cb93a662: dpaa2: Setup interface caps on attach.
Nov 19 2025, 10:25 PM
dsl closed D53436: dpaa2: Setup interface caps on attach.
Nov 19 2025, 10:24 PM

Nov 7 2025

dsl added a comment to D53436: dpaa2: Setup interface caps on attach.

@bz you meant IFCAP_HWCSUM_IPV6, didn't you? Hmm, I haven't tested it yet. Probably a good idea before committing changes.

Nov 7 2025, 9:30 AM
dsl added a comment to D53436: dpaa2: Setup interface caps on attach.
In D53436#1224250, @bz wrote:

Beware that this (L4), if I read it correctly, will also enable RX/TX checksum validation/generation for upper layer protocols for IPv6 packets even if that is not not advertised or enabled.

Nov 7 2025, 9:22 AM

Nov 6 2025

dsl added a comment to D53436: dpaa2: Setup interface caps on attach.

This change seems trivial to me. I'd simply commit it if there are no objections.

Nov 6 2025, 7:55 PM