shurd (Stephen Hurd)
User

Projects

User Details

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

Recent Activity

Today

shurd updated the diff for D15143: MFC bnxt changes to 11-STABLE.

Pull in man page changes as well.

Wed, Apr 25, 9:48 PM

Fri, Apr 20

shurd added a dependent revision for D15142: Merge iflib to 11-STABLE: D15143: MFC bnxt changes to 11-STABLE.
Fri, Apr 20, 4:41 PM
shurd added a dependency for D15143: MFC bnxt changes to 11-STABLE: D15142: Merge iflib to 11-STABLE.
Fri, Apr 20, 4:41 PM
shurd created D15143: MFC bnxt changes to 11-STABLE.
Fri, Apr 20, 4:40 PM
shurd updated the diff for D15142: Merge iflib to 11-STABLE.

netmap nm_intr changes have not been MFCd to 11-STABLE yet

Fri, Apr 20, 4:10 PM
shurd updated the diff for D15142: Merge iflib to 11-STABLE.

Looks like I missed r324318 in last update

Fri, Apr 20, 3:57 PM
shurd updated the diff for D15142: Merge iflib to 11-STABLE.

Add unmerged bits of 312698 into iflib.c

Fri, Apr 20, 3:31 PM
shurd created D15142: Merge iflib to 11-STABLE.
Fri, Apr 20, 2:06 PM

Wed, Apr 18

shurd committed rS332734: MFC r332388:.
MFC r332388:
Wed, Apr 18, 6:45 PM
shurd committed rS332729: iflib: Fix queue distribution when there are no threads.
iflib: Fix queue distribution when there are no threads
Wed, Apr 18, 3:34 PM
shurd closed D15120: Fix queue distribution when there are no threads.
Wed, Apr 18, 3:34 PM

Tue, Apr 17

shurd added a comment to D15120: Fix queue distribution when there are no threads.

Patch updated.

Tue, Apr 17, 9:41 PM
shurd updated the diff for D15120: Fix queue distribution when there are no threads.

Re-copy the CPU mask before selecting the core.

Tue, Apr 17, 9:40 PM
shurd created D15120: Fix queue distribution when there are no threads.
Tue, Apr 17, 7:16 PM

Fri, Apr 13

shurd committed rS332481: Move 1-second spin into ixgbe_netmap_reg().
Move 1-second spin into ixgbe_netmap_reg()
Fri, Apr 13, 5:46 PM

Thu, Apr 12

shurd committed rS332447: Work around netmap issue with ixgbe.
Work around netmap issue with ixgbe
Thu, Apr 12, 7:06 PM

Wed, Apr 11

shurd committed rS332419: Properly initialize ifc_nhwtxqs..
Properly initialize ifc_nhwtxqs.
Wed, Apr 11, 9:42 PM

Tue, Apr 10

shurd committed rS332389: Split out flag manipulation from general context manipulation in iflib.
Split out flag manipulation from general context manipulation in iflib
Tue, Apr 10, 7:48 PM
shurd closed D14967: split out flag manipulation from general context manipulation in iflib.
Tue, Apr 10, 7:48 PM
shurd committed rS332388: Make BPF global lock an SX.
Make BPF global lock an SX
Tue, Apr 10, 7:43 PM
shurd closed D14982: Make BPF global lock an SX to allow NIC drivers to sleep on polling config operations.
Tue, Apr 10, 7:43 PM

Mon, Apr 9

shurd requested changes to D14983: Allow NIC drivers to sleep rather than busy wait.

This patch doesn't apply after the dependencies are applied.

Mon, Apr 9, 5:07 PM
shurd added a comment to D14967: split out flag manipulation from general context manipulation in iflib.

Minor nit... I'm not sure if a race is actually possible here though.

Mon, Apr 9, 5:04 PM
shurd added a comment to D14984: Sleep rather than spin in e1000 when doing long running config operations.

Minor nitpick

Mon, Apr 9, 4:56 PM
shurd added inline comments to D14983: Allow NIC drivers to sleep rather than busy wait.
Mon, Apr 9, 4:36 PM
shurd accepted D14982: Make BPF global lock an SX to allow NIC drivers to sleep on polling config operations.

lgtm

Mon, Apr 9, 4:14 PM

Mar 21 2018

shurd committed rS331310: Update copyright per Matthew Macy.
Update copyright per Matthew Macy
Mar 21 2018, 3:57 PM
shurd closed D14766: Update copyright attribution.
Mar 21 2018, 3:57 PM
shurd accepted D14766: Update copyright attribution.

lgtm

Mar 21 2018, 3:46 PM

Mar 2 2018

shurd committed rS330289: iflib: stop timer callout when stopping.
iflib: stop timer callout when stopping
Mar 2 2018, 6:48 PM

Feb 21 2018

shurd committed rS329742: IFLIB: Make isc_magic unsigned.
IFLIB: Make isc_magic unsigned
Feb 21 2018, 6:57 PM
shurd abandoned D14270: Make isc_magic unsigned.

Committed without review.

Feb 21 2018, 6:57 PM

Feb 20 2018

shurd closed D14060: IFLIB: do not remove dmamap on buffer unload.
Feb 20 2018, 6:34 PM
shurd committed rS329651: IFLIB: do not remove dmamap on buffer unload.
IFLIB: do not remove dmamap on buffer unload
Feb 20 2018, 6:34 PM

Feb 15 2018

shurd committed rS329335: bnxt: Update man page with newly supported devices, options, etc.
bnxt: Update man page with newly supported devices, options, etc
Feb 15 2018, 6:40 PM
shurd closed D13982: bnxt: Update man page with newly supported devices, options, ect.
Feb 15 2018, 6:40 PM

Feb 8 2018

shurd accepted D13982: bnxt: Update man page with newly supported devices, options, ect.

stlgtm

Feb 8 2018, 8:14 PM
shurd created D14270: Make isc_magic unsigned.
Feb 8 2018, 6:01 PM

Jan 26 2018

shurd updated the diff for D14060: IFLIB: do not remove dmamap on buffer unload.

Fix build

Jan 26 2018, 8:37 PM
shurd added a comment to D14060: IFLIB: do not remove dmamap on buffer unload.

Note, this is an update to D13950

Jan 26 2018, 6:37 PM
shurd created D14060: IFLIB: do not remove dmamap on buffer unload.
Jan 26 2018, 6:35 PM

Jan 22 2018

shurd requested changes to D13950: IFLIB: do not remove dmamap on buffer unload.

With this change, the RX map is never destroyed. Won't they need to be destroyed in iflib_rx_sds_free() before bus_dma_tag_destroy() is called?

Jan 22 2018, 7:16 PM
shurd added a comment to D13982: bnxt: Update man page with newly supported devices, options, ect.

Stephen Hurd did do a fair bit on this driver, so shouldn't have his name removed. :-)

Jan 22 2018, 4:59 AM

Jan 11 2018

shurd accepted D13837: Wider adoption of mallocarray(9)..

Looks good to me as far as bnxt and iflib are concerned.

Jan 11 2018, 10:57 PM

Dec 27 2017

shurd committed rS327247: Don't pass rids to taskqgroup_attach().
Don't pass rids to taskqgroup_attach()
Dec 27 2017, 8:42 PM
shurd committed rS327244: Remove assertion that's not true for !EARLY_AP_STARTUP.
Remove assertion that's not true for !EARLY_AP_STARTUP
Dec 27 2017, 7:14 PM
shurd committed rS327242: Fix indentation..
Fix indentation.
Dec 27 2017, 7:12 PM

Dec 21 2017

shurd closed D13561: Don't call tcp_lro_rx() unless hardware verified TCP/UDP csum.
Dec 21 2017, 1:23 AM
shurd committed rS327052: Don't call tcp_lro_rx() unless hardware verified TCP/UDP csum.
Don't call tcp_lro_rx() unless hardware verified TCP/UDP csum
Dec 21 2017, 1:22 AM

Dec 20 2017

shurd created D13561: Don't call tcp_lro_rx() unless hardware verified TCP/UDP csum.
Dec 20 2017, 7:56 PM
shurd closed D12446: Support attaching tx queues to cpus.
Dec 20 2017, 1:03 AM
shurd committed rS327013: Support attaching tx queues to cpus.
Support attaching tx queues to cpus
Dec 20 2017, 1:03 AM

Dec 19 2017

shurd closed D13358: bnxt: Correct the logic to report supported speeds.
Dec 19 2017, 10:16 PM
shurd committed rS327003: Add log messages for unknown and unhandled phy types.
Add log messages for unknown and unhandled phy types
Dec 19 2017, 10:16 PM
shurd committed rS327001: On Link up & down, update media types.
On Link up & down, update media types
Dec 19 2017, 10:06 PM
shurd closed D13269: bnxt: Add SR-IOV support for Stratus 100G NIC.
Dec 19 2017, 9:08 PM
shurd committed rS327000: Support short HWRM commands.
Support short HWRM commands
Dec 19 2017, 9:08 PM
shurd committed rS326999: Don't populate NVRAM sysctls for VFs.
Don't populate NVRAM sysctls for VFs
Dec 19 2017, 8:33 PM
shurd committed rS326985: Add byte swapping in bnxt_cfg_async_cr() request.
Add byte swapping in bnxt_cfg_async_cr() request
Dec 19 2017, 6:12 PM
shurd closed D13537: Update Matthew Macy contact details.
Dec 19 2017, 5:59 PM
shurd committed rS326984: Update Matthew Macy contact info.
Update Matthew Macy contact info
Dec 19 2017, 5:59 PM
shurd added a comment to D12446: Support attaching tx queues to cpus.

@olivier, this should work now.

Dec 19 2017, 12:15 AM
shurd created D13537: Update Matthew Macy contact details.
Dec 19 2017, 12:11 AM

Dec 18 2017

shurd updated the diff for D12446: Support attaching tx queues to cpus.

We can't call smp_topo() more than once.

Dec 18 2017, 11:32 PM

Dec 11 2017

shurd committed rS326775: Increment encap_pad_mbuf_fail when m_dup() fails in padding.
Increment encap_pad_mbuf_fail when m_dup() fails in padding
Dec 11 2017, 8:01 PM

Dec 8 2017

shurd committed rS326706: Free mbuf chain when m_dup fails.
Free mbuf chain when m_dup fails
Dec 8 2017, 7:50 PM
shurd committed rS326702: Handle read-only mbufs in iflib ether pad function.
Handle read-only mbufs in iflib ether pad function
Dec 8 2017, 6:43 PM
shurd closed D13414: Handle read-only mbufs in ether pad function.
Dec 8 2017, 6:43 PM

Dec 7 2017

shurd created D13414: Handle read-only mbufs in ether pad function.
Dec 7 2017, 7:29 PM

Dec 6 2017

shurd abandoned D13397: Exit critical section before calling cpu_spinwait().

This is by design. We won't have two rings on the same CPU waiting for each other... we're only waiting for other CPUs to catch up.

Dec 6 2017, 5:39 PM
shurd created D13397: Exit critical section before calling cpu_spinwait().
Dec 6 2017, 5:32 PM

Dec 5 2017

shurd closed D13324: Add support to pad Ethernet frames to a minimum size.

Committed as r326578 (which had the wrong Differential Revision of D13269 specified).

Dec 5 2017, 9:03 PM
shurd reopened D13269: bnxt: Add SR-IOV support for Stratus 100G NIC.

Wrong URL pasted in D13324 commit. :-(

Dec 5 2017, 9:02 PM
shurd closed D13269: bnxt: Add SR-IOV support for Stratus 100G NIC.
Dec 5 2017, 9:00 PM
shurd committed rS326578: iflib: Support to padding Ethernet frames to a min size.
iflib: Support to padding Ethernet frames to a min size
Dec 5 2017, 9:00 PM
shurd committed rS326577: Avoid calling CURVNET_[SET|RESTORE] for each packet.
Avoid calling CURVNET_[SET|RESTORE] for each packet
Dec 5 2017, 8:43 PM
shurd closed D13368: Avoid calling CURVNET_[SET|RESTORE] up to twice per packet.
Dec 5 2017, 8:43 PM
shurd added a comment to D13368: Avoid calling CURVNET_[SET|RESTORE] up to twice per packet.

Updated, thanks.

Dec 5 2017, 6:48 PM
shurd updated the diff for D13368: Avoid calling CURVNET_[SET|RESTORE] up to twice per packet.

Integrate feedback from ae and cem

Dec 5 2017, 6:48 PM
shurd added inline comments to D13358: bnxt: Correct the logic to report supported speeds.
Dec 5 2017, 6:36 PM

Dec 4 2017

shurd created D13368: Avoid calling CURVNET_[SET|RESTORE] up to twice per packet.
Dec 4 2017, 8:37 PM
shurd updated the diff for D13324: Add support to pad Ethernet frames to a minimum size.

Mark iflib_ether_pad() as noinline and move device_printf() into it

Dec 4 2017, 7:51 PM
shurd updated the diff for D13324: Add support to pad Ethernet frames to a minimum size.

Move ether padding into spearate function, predict_false() the length test

Dec 4 2017, 7:43 PM
shurd added inline comments to D13358: bnxt: Correct the logic to report supported speeds.
Dec 4 2017, 7:10 PM
shurd added a comment to D13269: bnxt: Add SR-IOV support for Stratus 100G NIC.

Looks good, but I don't really like the title. I'm thinking of a commit message more like the following:

Dec 4 2017, 6:58 PM
shurd updated the diff for D13324: Add support to pad Ethernet frames to a minimum size.

Return an error of m_append() fails, not success.

Dec 4 2017, 6:38 PM

Dec 1 2017

shurd added a comment to D12446: Support attaching tx queues to cpus.

Without witness it panics too:

#11 linux_queue_work_on (cpu=256, wq=0x202000000000002, work=0xfffff80200000058) at /usr/src/sys/compat/linuxkpi/common/src/linux_work.c:139
#12 0xffffffff80cdf95d in inetaddr_event (this=<optimized out>, event=<optimized out>, ptr=0xfffff801c7ff6800) at /usr/src/sys/compat/linuxkpi/common/include/asm/atomic.h:75
Dec 1 2017, 7:49 PM
shurd updated the diff for D13324: Add support to pad Ethernet frames to a minimum size.

Move BNXT_MIN_FRAME_SIZE into bnxt.h where D13269 defined BNXT_MIN_PKT_SIZE

Dec 1 2017, 7:44 PM
shurd added a comment to D13269: bnxt: Add SR-IOV support for Stratus 100G NIC.

I just thought of another possibility... the hardware may only be able to pad frames that are 52 bytes or larger, but it still pads them out to 64 bytes... so basically the "padding offload" feature is broken on these chips. This would mean that legal minimum sized frames can be transmitted etc, just that they need special preparation. This still means an iflib quirk thing, and additional processing when transmitting small packets (where it hurts the worst), but at least all legal frames can still be sent. This seems to match up with your patch too.

Dec 1 2017, 6:58 PM
shurd created D13324: Add support to pad Ethernet frames to a minimum size.
Dec 1 2017, 6:55 PM
shurd added a comment to D12897: bnxt: Workaround for ifconfig showing media as 'Other'.

So with D13312 committed, is there still a need for a change? If not, please abandon this review.

Dec 1 2017, 5:59 PM
shurd closed D13312: Add support for SIOCGIFXMEDIA to iflib.
Dec 1 2017, 5:58 PM
shurd committed rS326432: Add support for SIOCGIFXMEDIA to iflib.
Add support for SIOCGIFXMEDIA to iflib
Dec 1 2017, 5:58 PM
shurd added a comment to D13269: bnxt: Add SR-IOV support for Stratus 100G NIC.

How are you testing this padding?

<Chenna> ARP response pkt is less than 60 bytes, right? I'm able to repro using ARP response pkt only.

The ARP packet itself is 28 bytes, yes... but the Ethernet packet which contains it will pad the payload out to 46 bytes (42 if there's a single VLAN tag), making the Ethernet frame 64 bytes and the Ethernet packet will be 72 bytes. Are you saying the Ethernet *payload* has a minimum limit of 52 bytes on some controllers? Or is it that there's a minimum frame size of 70 bytes?

Dec 1 2017, 5:57 AM
shurd added a comment to D13269: bnxt: Add SR-IOV support for Stratus 100G NIC.

How are you testing this padding?

<Chenna> ARP response pkt is less than 60 bytes, right? I'm able to repro using ARP response pkt only.

Dec 1 2017, 5:41 AM

Nov 30 2017

shurd added inline comments to D13269: bnxt: Add SR-IOV support for Stratus 100G NIC.
Nov 30 2017, 9:56 PM
shurd added a comment to D12897: bnxt: Workaround for ifconfig showing media as 'Other'.

In brief: I still see the problem as ifconfig still displaying "Other"

ifmr->ifm_current: 0x3f

Nov 30 2017, 7:57 PM
shurd created D13312: Add support for SIOCGIFXMEDIA to iflib.
Nov 30 2017, 7:51 PM

Nov 29 2017

shurd updated the diff for D12446: Support attaching tx queues to cpus.

Fix non-SMP build

Nov 29 2017, 7:32 PM
shurd updated the diff for D12446: Support attaching tx queues to cpus.

Add missing #ifdef

Nov 29 2017, 6:23 PM