Page MenuHomeFreeBSD

shurd (Stephen Hurd)
User

Projects

User Details

User Since
Jun 19 2014, 6:57 AM (230 w, 3 d)

Recent Activity

Wed, Nov 14

shurd committed rS340445: Clear RX completion queue state veriables in iflib_stop().
Clear RX completion queue state veriables in iflib_stop()
Wed, Nov 14, 8:36 PM
shurd committed rS340435: Prevent POLA violation with TSO/CSUM offload.
Prevent POLA violation with TSO/CSUM offload
Wed, Nov 14, 3:23 PM
shurd closed D17801: TSO inherently requires checksum offload. In the case where TSO is in use, force the checksum offload on as well for that packet..
Wed, Nov 14, 3:23 PM
shurd committed rS340434: Fix leaks caused by ifc_nhwtxqs never being initialized.
Fix leaks caused by ifc_nhwtxqs never being initialized
Wed, Nov 14, 3:17 PM
shurd closed D17979: Fix leaks caused by ifc_nhwtxqs never being initialized.
Wed, Nov 14, 3:17 PM

Tue, Nov 13

shurd added a comment to D17979: Fix leaks caused by ifc_nhwtxqs never being initialized.

Style-wise, would it be better to set up an sctx local at the top of these routines and then dereference that to avoid the double-dereference noise in the code?

Tue, Nov 13, 8:09 PM
shurd updated the diff for D17979: Fix leaks caused by ifc_nhwtxqs never being initialized.

Address feedback.

Tue, Nov 13, 8:09 PM
shurd created D17979: Fix leaks caused by ifc_nhwtxqs never being initialized.
Tue, Nov 13, 7:17 PM

Mon, Nov 12

shurd committed rS340366: MFC r340310:.
MFC r340310:
Mon, Nov 12, 4:28 PM
shurd committed rS340365: MFC r340236:.
MFC r340236:
Mon, Nov 12, 4:08 PM

Fri, Nov 9

shurd committed rS340310: Fix first-packet completion.
Fix first-packet completion
Fri, Nov 9, 10:19 PM
shurd closed D17931: Fix first-packet completion.
Fri, Nov 9, 10:19 PM
shurd created D17931: Fix first-packet completion.
Fri, Nov 9, 7:35 PM
shurd abandoned D17913: Attempt to fix pr233022.

Does not address the issue.

Fri, Nov 9, 5:14 AM

Thu, Nov 8

shurd created D17913: Attempt to fix pr233022.
Thu, Nov 8, 8:46 PM
shurd updated the diff for D17801: TSO inherently requires checksum offload. In the case where TSO is in use, force the checksum offload on as well for that packet..

Restore setting ip_csum to zero for TSO when IFLIB_TSO_INIT_IP is set.

Thu, Nov 8, 7:17 PM
shurd accepted D17900: ixl/iavf: fix TSO offloads when TXCSUM is disabled.

There is an upcoming patch that will make the IXL_CSUM_IPV4 macro obsolete, but better to fix it at both ends anyway.

Thu, Nov 8, 6:06 PM

Wed, Nov 7

shurd closed D17881: Fix rxcsum issue introduced in r338838.
Wed, Nov 7, 7:32 PM
shurd committed rS340236: Fix rxcsum issue introduced in r338838.
Fix rxcsum issue introduced in r338838
Wed, Nov 7, 7:32 PM
shurd added a comment to D17881: Fix rxcsum issue introduced in r338838.
In D17881#382102, @lev wrote:

It fix ix0 for me.

Wed, Nov 7, 7:21 PM
shurd created D17881: Fix rxcsum issue introduced in r338838.
Wed, Nov 7, 5:05 AM

Tue, Nov 6

shurd committed rS340202: MFC r339861:.
MFC r339861:
Tue, Nov 6, 8:46 PM

Fri, Nov 2

shurd updated the diff for D17801: TSO inherently requires checksum offload. In the case where TSO is in use, force the checksum offload on as well for that packet..

Move setting CSUM_IP_TCP into the correct block. Also set CSUM_IP.

Fri, Nov 2, 9:13 PM

Thu, Nov 1

shurd created D17801: TSO inherently requires checksum offload. In the case where TSO is in use, force the checksum offload on as well for that packet..
Thu, Nov 1, 1:41 PM

Mon, Oct 29

shurd committed rS339861: Drain grouptaskqueue of the gtask before detaching it..
Drain grouptaskqueue of the gtask before detaching it.
Mon, Oct 29, 2:36 PM
shurd closed D17674: Drain grouptaskqueue of the gtask before detaching it..
Mon, Oct 29, 2:36 PM

Wed, Oct 24

shurd updated the diff for D17674: Drain grouptaskqueue of the gtask before detaching it..

Add missing semi-colon.

Wed, Oct 24, 5:29 PM
shurd updated the diff for D17674: Drain grouptaskqueue of the gtask before detaching it..

Add gtaskqueue_drain_locked() to hold common code for gtaskqueue_drain()
and grouptask_block().

Wed, Oct 24, 5:18 PM

Tue, Oct 23

shurd created D17674: Drain grouptaskqueue of the gtask before detaching it..
Tue, Oct 23, 8:04 PM

Mon, Oct 22

shurd accepted D17404: iflib: drain enqueued tasks before detaching from taskqgroup.

lgtm

Mon, Oct 22, 2:22 PM

Oct 18 2018

shurd added inline comments to D17404: iflib: drain enqueued tasks before detaching from taskqgroup.
Oct 18 2018, 5:17 PM

Oct 17 2018

shurd added a comment to D17404: iflib: drain enqueued tasks before detaching from taskqgroup.

My opinion is that mtx_owned() would just make this all more complex. Releasing a lock for a short period isn't a problem at all.

Oct 17 2018, 2:16 PM

Oct 11 2018

shurd added a comment to D17404: iflib: drain enqueued tasks before detaching from taskqgroup.

iflib_admin_intr_deferred() called with STATE_LOCK() in a few places.

Oct 11 2018, 5:25 PM

Oct 9 2018

shurd committed rS339267: Use mbuf defines to construct csum offload masks rather than literals.
Use mbuf defines to construct csum offload masks rather than literals
Oct 9 2018, 8:16 PM
shurd closed D17442: Fix egregious magic number constants.
Oct 9 2018, 8:16 PM

Oct 5 2018

shurd added a comment to D17404: iflib: drain enqueued tasks before detaching from taskqgroup.

Hrm, I don't think we can obtain CTX_LOCK() in those functions.

Oct 5 2018, 9:53 PM
shurd added a comment to D17404: iflib: drain enqueued tasks before detaching from taskqgroup.
In D17404#371990, @erj wrote:

Is there a reason not to do this in taskqgroup_detach()?

I don't see any obvious thing which prevents something being enqueued between the gtaskqueue_drain() and taskqgroup_detach() calls.

For the latter statement, should iflib_admin_intr_deferred() then add a check to see if iflib is in detach before calling GROUPTASK_ENQUEUE()? I don't see other places where it's enqueued.

Oct 5 2018, 9:30 PM
shurd abandoned D17393: Attempt to fix PR231416 (UDP BPF VLAN checksum errors).

"Abandoning" because I put the wrong URL in the commit message.

Oct 5 2018, 9:12 PM
shurd added a comment to D17404: iflib: drain enqueued tasks before detaching from taskqgroup.

Bah, sorry... looks like I just grabbed whatever URL I had open at the time. :(

Oct 5 2018, 9:06 PM
shurd created D17442: Fix egregious magic number constants.
Oct 5 2018, 8:48 PM
shurd committed rS339207: Fix igb corrupting checksums with BPF and VLAN.
Fix igb corrupting checksums with BPF and VLAN
Oct 5 2018, 8:16 PM
shurd closed D17404: iflib: drain enqueued tasks before detaching from taskqgroup.
Oct 5 2018, 8:16 PM
shurd added a comment to D17404: iflib: drain enqueued tasks before detaching from taskqgroup.

Is there a reason not to do this in taskqgroup_detach()?

Oct 5 2018, 7:07 PM

Oct 3 2018

shurd added a comment to D17393: Attempt to fix PR231416 (UDP BPF VLAN checksum errors).
In D17393#371122, @lev wrote:

This patch (first version) breaks my I210 completely.

Oct 3 2018, 8:45 PM
shurd updated the diff for D17393: Attempt to fix PR231416 (UDP BPF VLAN checksum errors).

Explicitly set E1000_TXD_POPTS_TXSM when setting the checksum type.

Oct 3 2018, 8:44 PM
shurd created D17393: Attempt to fix PR231416 (UDP BPF VLAN checksum errors).
Oct 3 2018, 6:04 PM

Sep 20 2018

shurd closed D17242: Add IFCAP_TSO6 for igb.
Sep 20 2018, 8:07 PM
shurd committed rS338840: Add IFCAP_TSO6 for igb.
Add IFCAP_TSO6 for igb
Sep 20 2018, 8:06 PM
shurd updated the diff for D17242: Add IFCAP_TSO6 for igb.

Remove trailing semicolon while we're here.

Sep 20 2018, 7:44 PM
shurd committed rS338838: Fix capabilities handling for iflib drivers.
Fix capabilities handling for iflib drivers
Sep 20 2018, 7:35 PM
shurd closed D17158: Fix capabilities handling for iflib drivers.
Sep 20 2018, 7:35 PM
shurd committed rS338834: Add iflib.4 manpage.
Add iflib.4 manpage
Sep 20 2018, 6:24 PM
shurd closed D16920: Add an iflib manpage to section 4.
Sep 20 2018, 6:24 PM

Sep 19 2018

shurd created D17242: Add IFCAP_TSO6 for igb.
Sep 19 2018, 4:03 PM

Sep 14 2018

shurd accepted D16808: fix vlan locking to permit sx acquisition in ioctl calls.

lgtm

Sep 14 2018, 4:46 PM

Sep 13 2018

shurd created D17158: Fix capabilities handling for iflib drivers.
Sep 13 2018, 8:21 PM

Sep 6 2018

shurd committed rS338505: Clean up iflib sysctls.
Clean up iflib sysctls
Sep 6 2018, 6:52 PM
shurd closed D16733: iflib sysctl cleanup.
Sep 6 2018, 6:52 PM

Aug 29 2018

shurd committed rS338373: Fix compile error due to missing parenthesis in r338372.
Fix compile error due to missing parenthesis in r338372
Aug 29 2018, 4:21 PM
shurd closed D16882: Handle case where mbuf == &txq when IFC_QFLUSH is set.
Aug 29 2018, 3:55 PM
shurd committed rS338372: Fix potential data corruption in iflib.
Fix potential data corruption in iflib
Aug 29 2018, 3:55 PM

Aug 28 2018

shurd added a comment to D16882: Handle case where mbuf == &txq when IFC_QFLUSH is set.

Sorry, having the ring pointer in the ring is just so odd.. Can you explain why it is there? Maybe it would be better to just not have the ring pointer in the ring and not have to have all these special cases.

I'm fighting an iflib bug myself, and every time I have to dig into the code, i'm irritated at what seems to be complexity driven by premature optimization...

Aug 28 2018, 11:45 PM
shurd added a comment to D16882: Handle case where mbuf == &txq when IFC_QFLUSH is set.

What keeps the normal, non-IFC_QFLUSH from hitting this condition? Is the txq pointer included in r->size?

Aug 28 2018, 8:58 PM
shurd updated the diff for D16882: Handle case where mbuf == &txq when IFC_QFLUSH is set.

mp_ring->items is void *, not struct mbuf *.

Aug 28 2018, 5:22 PM
shurd updated the diff for D16882: Handle case where mbuf == &txq when IFC_QFLUSH is set.

Fix test for txq, and cast to the appropriate type before comparison

Aug 28 2018, 5:21 PM

Aug 27 2018

shurd updated the diff for D16920: Add an iflib manpage to section 4.

Run through igor and mandoc -Tlint

Aug 27 2018, 6:34 PM
shurd updated the diff for D16920: Add an iflib manpage to section 4.

Remove iflib.c patch.

Aug 27 2018, 3:16 PM
shurd created D16920: Add an iflib manpage to section 4.
Aug 27 2018, 3:16 PM

Aug 24 2018

shurd updated the diff for D16402: Add TIOCFBAUD UART ioctl to allow fractional baudrates.

Fix builds on GCC targets

Aug 24 2018, 4:21 PM
shurd created D16882: Handle case where mbuf == &txq when IFC_QFLUSH is set.
Aug 24 2018, 3:38 PM
shurd added a comment to D16875: Possible fix for "desc avail = " dmesg spam and igb breakage.

Looking at iflib_txq_drain_free() more, we likely want to just extract the free loop and put it in a LINK_ACTIVE() block in iflib_txq_drain.

Aug 24 2018, 3:26 PM
shurd added a comment to D16875: Possible fix for "desc avail = " dmesg spam and igb breakage.

Possibly the easiest way to ensure we don't enter the STALLED state while link is down is to have iflib_link_state_change() set txq->ift_br->drain = iflib_txq_drain_free when link goes down, and then txq->ift_br->drain = iflib_txq_can_drain when it comes back up... which would mean stopping and resetting the callout timer on link changes.

Aug 24 2018, 3:21 PM
shurd added a comment to D16875: Possible fix for "desc avail = " dmesg spam and igb breakage.
In D16875#359599, @erj wrote:

The in-tree igb never sets IFLIB_ADMIN_ALWAYS_RUN. Is this for a modified version of igb?

Aug 24 2018, 3:00 PM

Aug 23 2018

shurd created D16875: Possible fix for "desc avail = " dmesg spam and igb breakage.
Aug 23 2018, 7:44 PM

Aug 22 2018

shurd updated the diff for D16733: iflib sysctl cleanup.

Address feedback.

Aug 22 2018, 7:43 PM
shurd added a reviewer for D16808: fix vlan locking to permit sx acquisition in ioctl calls: sbruno.

Add Sean since he's being asked to setup a test system.

Aug 22 2018, 7:30 PM

Aug 21 2018

shurd added a comment to D16808: fix vlan locking to permit sx acquisition in ioctl calls.

Aside from the VLAN_XUNLOCK() on return at at 1366, the rest are comment churn.

Aug 21 2018, 6:58 PM

Aug 17 2018

shurd committed rP477436: Fix LoTW integration again..
Fix LoTW integration again.
Aug 17 2018, 5:01 PM

Aug 15 2018

shurd added inline comments to D16733: iflib sysctl cleanup.
Aug 15 2018, 8:28 PM
shurd updated the diff for D16733: iflib sysctl cleanup.

Remove bnxt.4 changes from review.

Aug 15 2018, 8:25 PM
shurd created D16733: iflib sysctl cleanup.
Aug 15 2018, 8:24 PM
shurd committed rP477211: Disable extra warnings and especially -Werror.
Disable extra warnings and especially -Werror
Aug 15 2018, 2:26 AM

Aug 11 2018

shurd committed rP476948: Add patch to fix potential crash on startup.
Add patch to fix potential crash on startup
Aug 11 2018, 11:32 PM

Aug 8 2018

shurd committed rP476626: Update unixcw and xcwcp to latest release..
Update unixcw and xcwcp to latest release.
Aug 8 2018, 4:36 AM

Aug 7 2018

shurd committed rP476606: Update to latest version, it's on github now.
Update to latest version, it's on github now
Aug 7 2018, 5:35 PM
shurd committed rP476556: Fix MASTER_SITES for new version.
Fix MASTER_SITES for new version
Aug 7 2018, 12:19 AM
shurd committed rP476555: Update to latest release.
Update to latest release
Aug 7 2018, 12:17 AM

Jul 26 2018

shurd updated the diff for D16402: Add TIOCFBAUD UART ioctl to allow fractional baudrates.

Allow preventing RTS/DTR from being asserted on open()

Jul 26 2018, 12:40 AM

Jul 25 2018

shurd updated the diff for D16402: Add TIOCFBAUD UART ioctl to allow fractional baudrates.

After changing the baud rate, we need to update the watermarks it seems.

Jul 25 2018, 9:29 AM
shurd updated the diff for D16402: Add TIOCFBAUD UART ioctl to allow fractional baudrates.

Since MCR bit 7 is used for the prescaler, we need to update the
cached copy of the MCR after a call to SERDEV_ADJUST_RCLK.

Jul 25 2018, 8:34 AM

Jul 24 2018

shurd updated the diff for D16402: Add TIOCFBAUD UART ioctl to allow fractional baudrates.

Clean up some bad bits in the past update.

Jul 24 2018, 2:28 AM
shurd updated the diff for D16402: Add TIOCFBAUD UART ioctl to allow fractional baudrates.

Fix up puc(4) abuse... add new method to serdev, update the termios info.
Adjust rclk again when using tcsetattr() so we don't get stuck with a
weird rclk.
Add a TIOCGFBAUD to get the current exact baudrate.
Use a struct instead of an array of integers.
Various bug fixes.

Jul 24 2018, 2:18 AM

Jul 23 2018

shurd added inline comments to D16402: Add TIOCFBAUD UART ioctl to allow fractional baudrates.
Jul 23 2018, 5:14 PM
shurd created D16402: Add TIOCFBAUD UART ioctl to allow fractional baudrates.
Jul 23 2018, 4:58 AM

Jul 20 2018

shurd committed rS336560: Add knob to control tx ring abdication..
Add knob to control tx ring abdication.
Jul 20 2018, 5:45 PM
shurd closed D16302: Add knob to control tx ring abdication..
Jul 20 2018, 5:45 PM
shurd committed rS336559: Improve netmap TX handling when TX IRQs are not used/supported.
Improve netmap TX handling when TX IRQs are not used/supported
Jul 20 2018, 5:24 PM
shurd closed D16300: Improve netmap TX handling when TX IRQs are not used/supported.
Jul 20 2018, 5:24 PM

Jul 19 2018

shurd added a comment to D16300: Improve netmap TX handling when TX IRQs are not used/supported.

One other thing maybe not related to this but what happened to TSO4 option? It is no longer visible in ifconfig output...

Jul 19 2018, 4:24 PM

Jul 18 2018

shurd added a comment to D16300: Improve netmap TX handling when TX IRQs are not used/supported.

OK, switching TX/RX between I128LM and I219LM makes no difference, still 5 Kpps. iperf between the two machine measure +900 Mbps.

Jul 18 2018, 9:49 PM