Page MenuHomeFreeBSD

shurd (Stephen Hurd)
User

Projects

User Details

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

Recent Activity

Fri, Sep 14

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

lgtm

Fri, Sep 14, 4:46 PM

Thu, Sep 13

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

Thu, Sep 6

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

Wed, Aug 29

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

Tue, Aug 28

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...

Tue, Aug 28, 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?

Tue, Aug 28, 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 *.

Tue, Aug 28, 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

Tue, Aug 28, 5:21 PM

Mon, Aug 27

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

Run through igor and mandoc -Tlint

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

Remove iflib.c patch.

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

Fri, Aug 24

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

Fix builds on GCC targets

Fri, Aug 24, 4:21 PM
shurd created D16882: Handle case where mbuf == &txq when IFC_QFLUSH is set.
Fri, Aug 24, 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.

Fri, Aug 24, 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.

Fri, Aug 24, 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?

Fri, Aug 24, 3:00 PM

Thu, Aug 23

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

Wed, Aug 22

shurd updated the diff for D16733: iflib sysctl cleanup.

Address feedback.

Wed, Aug 22, 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.

Wed, Aug 22, 7:30 PM

Tue, Aug 21

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.

Tue, Aug 21, 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
shurd updated the diff for D16300: Improve netmap TX handling when TX IRQs are not used/supported.

Use the same callout reset logic in the admin task as the txq timer.

Jul 18 2018, 7:20 PM
shurd added inline comments to D16300: Improve netmap TX handling when TX IRQs are not used/supported.
Jul 18 2018, 6:10 PM
shurd updated the diff for D16300: Improve netmap TX handling when TX IRQs are not used/supported.

Restore const declaration for head pointer in txsync

Jul 18 2018, 6:10 PM

Jul 17 2018

shurd added a comment to D16302: Add knob to control tx ring abdication..

I'm not actually sure where the best place to document this new sysctl is... I'm open to suggestions.

Jul 17 2018, 5:57 PM
shurd created D16302: Add knob to control tx ring abdication..
Jul 17 2018, 5:56 PM
shurd created D16300: Improve netmap TX handling when TX IRQs are not used/supported.
Jul 17 2018, 4:56 PM

Jul 11 2018

shurd committed rP474421: Update to latest release, use preferred OpenSSL libs..
Update to latest release, use preferred OpenSSL libs.
Jul 11 2018, 4:18 AM

Jun 11 2018

shurd added a comment to D15720: Assorted TSO fixes for em(4)/iflib(9) and dead code removal from em(4).

On the bottom line, a front-end driver has to supply both the maximum TSO size and the maximum DMA transfer size to iflib(9). The cleanest approach for that would be to have a separate member for the maximum DMA transfer size in struct if_softc_ctx.

Jun 11 2018, 11:27 PM
shurd committed rP472215: Much better way to ensure a UTF-8 CODESET in the locale.
Much better way to ensure a UTF-8 CODESET in the locale
Jun 11 2018, 10:57 PM
shurd committed rP472212: Fix unicode for 'C' locale..
Fix unicode for 'C' locale.
Jun 11 2018, 10:21 PM
shurd added a comment to D15720: Assorted TSO fixes for em(4)/iflib(9) and dead code removal from em(4).

I think that if the size of the DMA tag needs to be larger than the MACs max, iflib should handle that itself rather than have every driver need to add a non-obvious value for non-obvious reasons.

Jun 11 2018, 6:00 PM

Jun 8 2018

shurd committed rS334862: Remove tx task spinning added in r333686.
Remove tx task spinning added in r333686
Jun 8 2018, 9:49 PM

Jun 7 2018

shurd committed rP471932: Update to latest release.
Update to latest release
Jun 7 2018, 4:25 PM
shurd committed rP471931: Update to latest release..
Update to latest release.
Jun 7 2018, 4:24 PM

May 29 2018

shurd committed rS334358: iflib: mark irq allocation name parameter as constant.
iflib: mark irq allocation name parameter as constant
May 29 2018, 9:57 PM
shurd closed D15343: iflib: mark irq allocation name parameter as constant.
May 29 2018, 9:57 PM
shurd accepted D15343: iflib: mark irq allocation name parameter as constant.

Looks good.

May 29 2018, 9:52 PM
shurd accepted D15558: iflib: Record TCP checksum info in iflib for ixl(4).

lgtm

May 29 2018, 4:42 PM · Intel Networking

May 25 2018

shurd added a comment to D15558: iflib: Record TCP checksum info in iflib for ixl(4).

Looks good, but not forcing CSUM_TCP_IPV6 for TSO6 may need a closer look.

May 25 2018, 7:34 PM · Intel Networking

May 24 2018

shurd added inline comments to D15558: iflib: Record TCP checksum info in iflib for ixl(4).
May 24 2018, 7:13 PM · Intel Networking
shurd committed rS334178: MFC: r333792.
MFC: r333792
May 24 2018, 6:53 PM

May 16 2018

shurd committed rS333686: Work around lack of TX IRQs in iflib for netmap.
Work around lack of TX IRQs in iflib for netmap
May 16 2018, 9:03 PM
shurd closed D15455: Work around lack of TX queues in iflib for netmap.
May 16 2018, 9:03 PM
shurd created D15455: Work around lack of TX queues in iflib for netmap.
May 16 2018, 4:36 PM

May 15 2018

shurd committed rS333637: Check that ifma_protospec != NULL in inm_lookup.
Check that ifma_protospec != NULL in inm_lookup
May 15 2018, 4:55 PM
shurd closed D15440: Check that ifma_protospec != NULL in inm_lookup.
May 15 2018, 4:55 PM
shurd created D15440: Check that ifma_protospec != NULL in inm_lookup.
May 15 2018, 2:14 AM

May 14 2018

shurd committed rS333612: Replace rmlock with epoch in lagg.
Replace rmlock with epoch in lagg
May 14 2018, 8:06 PM
shurd closed D15355: lagg: Remove redundant rmlock.
May 14 2018, 8:06 PM
shurd updated the diff for D15355: lagg: Remove redundant rmlock.

Update patch to latest head

May 14 2018, 6:28 PM

May 11 2018

shurd closed D15393: Fix LORs in in*_leave_group().
May 11 2018, 9:42 PM
shurd committed rS333505: Fix LORs in in6?_leave_group().
Fix LORs in in6?_leave_group()
May 11 2018, 9:42 PM
shurd closed D15354: MFC iflib bugfixes.
May 11 2018, 8:40 PM
shurd committed rS333503: MFC r333329, r333366, r333373.
MFC r333329, r333366, r333373
May 11 2018, 8:40 PM
shurd committed rS333501: Fix mld6query(8) and add a new -g option.
Fix mld6query(8) and add a new -g option
May 11 2018, 7:37 PM
shurd closed D15384: Fix mld6query(8) and add a new -g option.
May 11 2018, 7:37 PM
shurd accepted D15347: Add support for cloning pseudo interfaces.

lgtm

May 11 2018, 7:26 PM
shurd updated the diff for D15393: Fix LORs in in*_leave_group().

Remove lagg fix

May 11 2018, 6:48 PM
shurd created D15393: Fix LORs in in*_leave_group().
May 11 2018, 6:47 PM

May 10 2018

shurd updated the diff for D15355: lagg: Remove redundant rmlock.

Use the new epoch based reclamation API. Now the hot paths will not
block at all, and the sx lock is used for the softc data.

May 10 2018, 7:48 PM
shurd updated the diff for D15384: Fix mld6query(8) and add a new -g option.

Leave the same group we joined.

May 10 2018, 5:23 PM
shurd added a reviewer for D15384: Fix mld6query(8) and add a new -g option: ume.

Add ume since he's the last one to actually touch this code (14 years ago).

May 10 2018, 5:09 PM
shurd created D15384: Fix mld6query(8) and add a new -g option.
May 10 2018, 5:06 PM

May 9 2018

shurd accepted D15365: simple preempt safe epoch API.
May 9 2018, 10:30 PM
shurd added a comment to D15365: simple preempt safe epoch API.

stlgtm

May 9 2018, 10:21 PM
shurd updated the diff for D15355: lagg: Remove redundant rmlock.

Destroy rm lock, clean up spurious changes.

May 9 2018, 9:49 PM
shurd added inline comments to D15355: lagg: Remove redundant rmlock.
May 9 2018, 9:41 PM
shurd updated the diff for D15355: lagg: Remove redundant rmlock.

Address feedback.

May 9 2018, 9:39 PM
shurd accepted D15365: simple preempt safe epoch API.

lgtm

May 9 2018, 7:39 PM
shurd added inline comments to D15365: simple preempt safe epoch API.
May 9 2018, 6:45 PM
shurd updated the diff for D15355: lagg: Remove redundant rmlock.

Use bool and true/false rather than _Bool and 1/0

May 9 2018, 5:26 PM

May 8 2018

shurd updated the diff for D15355: lagg: Remove redundant rmlock.

Protect against multiple slowpath entries.

May 8 2018, 10:43 PM
shurd updated the diff for D15355: lagg: Remove redundant rmlock.

Ressurect the rwlock, but only to protect the new sc_slowpath boolean.
If the slowpath is currently running, DELAY(1) until it's not. Still a
bit of a hack, but now it doesn't (shouldn't) cause LORs.

May 8 2018, 10:36 PM
shurd added a comment to D15355: lagg: Remove redundant rmlock.

Yeah, all the LAGG_RLOCK -> LAGG_SLOCK conversions need to be fixed up... right now it's a LOR generator for sure.

May 8 2018, 8:00 PM