Page MenuHomeFreeBSD

mmacy (Matthew Macy)
User

Projects

User Details

User Since
May 4 2018, 7:26 PM (50 w, 9 h)

Recent Activity

Wed, Apr 17

mmacy added a comment to D19946: allow iflib drivers to pass their own ifmedia.

Makes sense ... you mean call the ifdi_init method directly? If so, it looks like init_locked does a bunch of queue/iflib management ... is all of that unnecessary on reset?

Wed, Apr 17, 11:20 PM
mmacy added a comment to D19946: allow iflib drivers to pass their own ifmedia.

the custom media would have to call the wrappers, especially if restart is necessary

Wed, Apr 17, 10:43 PM
mmacy added a comment to D19946: allow iflib drivers to pass their own ifmedia.

As is, the patch works.
I would still suggest exposing the iflib_media_* because init_locked is unavailable in the case of reset and I think the locks in the wrapper are useful?

Wed, Apr 17, 10:42 PM
mmacy added a comment to D19946: allow iflib drivers to pass their own ifmedia.

@aryeeteygerald_rogers.com can you test with this patch and let me know? It should be a no-op for current drivers so can probably go in quickly.

Wed, Apr 17, 9:30 PM
mmacy updated the diff for D19946: allow iflib drivers to pass their own ifmedia.

don't call ifmedia_init for user provided ifmedia

Wed, Apr 17, 9:29 PM
mmacy added a comment to D19946: allow iflib drivers to pass their own ifmedia.

I can just skip the iflib_media_init if we can just trust that the phy is correctly inited. Those two routines are just wrappers to drive user callbacks:

static int
iflib_media_change(if_t ifp)
{
	if_ctx_t ctx = if_getsoftc(ifp);
	int err;
Wed, Apr 17, 9:13 PM
mmacy updated the diff for D19946: allow iflib drivers to pass their own ifmedia.

missed change

Wed, Apr 17, 8:36 PM
mmacy created D19946: allow iflib drivers to pass their own ifmedia.
Wed, Apr 17, 8:31 PM
mmacy added a comment to D19622: Fix panic in network stack due memory use after free in relation to fragmented packets.

So in a Previous Project a Long Long Time Ago we solved this by having the receive/send state being an ifindex into an array of "ifnet" pointers, and a gencount so you can see if it's stale. Then all the code had to handle that the interface ifindex was stale (ie, a NULL pointer versus a garbage pointer) and decide at each point how to make forward progress. In some cases it wasn't needed for forward progress - eg it was already on a transmit queue, so the fact the receive interface went away wasn't a huge deal. But sometimes it was - eg tunnel (l2tp in one case) went away.
I agree this isn't the best solution, but it beats the heck out of panicking. It's panicing because SOME (interesting) state is being dereferenced through rcvif at some very late stage point in the stack. Maybe finding/tidying those up would also help things but this at least gets the panic out of the way.

Wed, Apr 17, 6:51 PM

Tue, Apr 16

mmacy added a comment to D19622: Fix panic in network stack due memory use after free in relation to fragmented packets.

So without delving in to the specifics of this issue I'd like to point out a couple of things:

  • When an interface is taken down, freeing all unprocessed inbound and outbound is standard protocol as we have no idea how long the device will be down for, if it's more than 500ms the packets are good as dead
  • inbound mbufs have a non refcounted pointer to their ifp - this would be easy to fix, but extremely invasive
Tue, Apr 16, 8:48 PM
mmacy added inline comments to D19886: Fix refcount issue in in_getmulti.
Tue, Apr 16, 3:48 AM
mmacy added inline comments to D19886: Fix refcount issue in in_getmulti.
Tue, Apr 16, 3:29 AM

Mon, Apr 15

mmacy added a comment to D19886: Fix refcount issue in in_getmulti.
if ((error = in6_joingroup(ifp, &in6, NULL, &in6m, 0)) != 0) {
        in6_leavegroup(im6o->im6o_membership[0], NULL);
        free(im6o->im6o_membership, M_CARP);
        break;
}
in6m_acquire(in6m);
Mon, Apr 15, 6:01 PM

Sat, Apr 13

mmacy added a comment to D17933: add NUMA support to powerpc.

Cool. +1

Sat, Apr 13, 7:55 PM

Thu, Apr 11

mmacy updated the diff for D19886: Fix refcount issue in in_getmulti.
  • fix case where failure path could lead to ref leak
Thu, Apr 11, 11:46 PM
mmacy created D19886: Fix refcount issue in in_getmulti.
Thu, Apr 11, 11:43 PM

Sun, Mar 24

mmacy abandoned D18520: Update opencrypto for ZFS crypto.

All changes have gone in and been MFC’d through smaller reviews.

Sun, Mar 24, 7:22 PM

Mar 20 2019

mmacy committed rS345328: MFC r342747 - zfsboot: support newer ZFS versions.
MFC r342747 - zfsboot: support newer ZFS versions
Mar 20 2019, 3:37 PM
mmacy committed rS345327: MFC r342793 - selectively disable ZFS without disabling loader.
MFC r342793 - selectively disable ZFS without disabling loader
Mar 20 2019, 3:34 PM

Mar 15 2019

mmacy committed rS345169: bump version to reflect MFC of CCM for the benefit of the ZoF port.
bump version to reflect MFC of CCM for the benefit of the ZoF port
Mar 15 2019, 1:26 AM

Mar 9 2019

mmacy added a comment to D19516: powerpc64: Implement Radix MMU for POWER9 CPUs.

FWIW ZFS works fine on the POWER9 branch. However, there are a few things needed to make it play nice with HPT. Have you tracked them down?

Mar 9 2019, 4:47 AM

Mar 7 2019

mmacy committed rS344869: add GPL text in addition to SPDX tags as requested by core.
add GPL text in addition to SPDX tags as requested by core
Mar 7 2019, 3:54 AM
mmacy committed rS344868: add gcov to LINT build.
add gcov to LINT build
Mar 7 2019, 3:50 AM
mmacy committed rS344867: Add build time GPL warning when GCOV is enabled.
Add build time GPL warning when GCOV is enabled
Mar 7 2019, 3:47 AM

Feb 23 2019

mmacy committed rS344487: gcov support.
gcov support
Feb 23 2019, 9:14 PM
mmacy closed D19260: gcov support.
Feb 23 2019, 9:14 PM
mmacy committed rS344486: Change seq_read to seq_load to avoid namespace conflicts with lkpi.
Change seq_read to seq_load to avoid namespace conflicts with lkpi
Feb 23 2019, 9:05 PM
mmacy committed rS344485: import linux debugfs support.
import linux debugfs support
Feb 23 2019, 8:56 PM
mmacy closed D19258: import linux debugfs support.
Feb 23 2019, 8:56 PM
mmacy committed rS344484: linux/fs: simplify interop and correct definition of loff_t.
linux/fs: simplify interop and correct definition of loff_t
Feb 23 2019, 8:46 PM
mmacy closed D19274: simplify interop with file_operations.
Feb 23 2019, 8:46 PM

Feb 22 2019

mmacy committed rS344478: lkpi: allow late binding of linux_alloc_current.
lkpi: allow late binding of linux_alloc_current
Feb 22 2019, 11:15 PM
mmacy closed D19257: allow late binding of linux_alloc_current.
Feb 22 2019, 11:15 PM
mmacy updated the diff for D19274: simplify interop with file_operations.
  • update to fix LINT
Feb 22 2019, 11:06 PM
mmacy added a comment to D19274: simplify interop with file_operations.

If you grep for llseek you'll see it is used a couple of places in sys/ofed .

Feb 22 2019, 10:11 PM
mmacy added a comment to D19274: simplify interop with file_operations.

@hselasky ping

Feb 22 2019, 9:15 PM
mmacy added a comment to D19257: allow late binding of linux_alloc_current.

@hselasky ping

Feb 22 2019, 9:14 PM

Feb 20 2019

mmacy created D19274: simplify interop with file_operations.
Feb 20 2019, 10:45 PM
mmacy updated the diff for D19258: import linux debugfs support.
  • incorporate feedback printing file/line on failure
Feb 20 2019, 9:31 PM
mmacy updated the diff for D19257: allow late binding of linux_alloc_current.
  • incorporate feedback
Feb 20 2019, 9:10 PM
mmacy committed rS344385: PFS: Bump NAMELEN and don't require clients to be sleepable.
PFS: Bump NAMELEN and don't require clients to be sleepable
Feb 20 2019, 8:55 PM
mmacy closed D19256: PFS: Bump NAMELEN and don't require clients to be sleepable.
Feb 20 2019, 8:55 PM
mmacy committed rS344384: Add non-sleepable strdup variant strdup_flags.
Add non-sleepable strdup variant strdup_flags
Feb 20 2019, 8:48 PM
mmacy closed D19259: make _flags variant of strdup.
Feb 20 2019, 8:48 PM

Feb 19 2019

mmacy added inline comments to D19260: gcov support.
Feb 19 2019, 11:54 PM
mmacy added inline comments to D19260: gcov support.
Feb 19 2019, 11:40 PM
mmacy added inline comments to D19260: gcov support.
Feb 19 2019, 11:39 PM
mmacy added a reviewer for D19260: gcov support: ngie.
Feb 19 2019, 11:31 PM
mmacy added reviewers for D19260: gcov support: bdrewery, lwhsu.
Feb 19 2019, 11:01 PM
mmacy updated the summary of D19256: PFS: Bump NAMELEN and don't require clients to be sleepable.
Feb 19 2019, 10:57 PM
mmacy added a child revision for D19259: make _flags variant of strdup: D19256: PFS: Bump NAMELEN and don't require clients to be sleepable.
Feb 19 2019, 10:57 PM
mmacy added a child revision for D19260: gcov support: D19256: PFS: Bump NAMELEN and don't require clients to be sleepable.
Feb 19 2019, 10:56 PM
mmacy updated the summary of D19256: PFS: Bump NAMELEN and don't require clients to be sleepable.
Feb 19 2019, 10:56 PM
mmacy added a child revision for D19256: PFS: Bump NAMELEN and don't require clients to be sleepable: D19258: import linux debugfs support.
Feb 19 2019, 10:55 PM
mmacy updated the summary of D19258: import linux debugfs support.
Feb 19 2019, 10:55 PM
mmacy added a child revision for D19257: allow late binding of linux_alloc_current: D19258: import linux debugfs support.
Feb 19 2019, 10:55 PM
mmacy added a reviewer for D19260: gcov support: hselasky.
Feb 19 2019, 10:54 PM
mmacy created D19260: gcov support.
Feb 19 2019, 10:54 PM
mmacy created D19259: make _flags variant of strdup.
Feb 19 2019, 10:52 PM
mmacy created D19258: import linux debugfs support.
Feb 19 2019, 10:49 PM
mmacy created D19257: allow late binding of linux_alloc_current.
Feb 19 2019, 10:47 PM
mmacy created D19256: PFS: Bump NAMELEN and don't require clients to be sleepable.
Feb 19 2019, 10:45 PM

Feb 5 2019

mmacy committed rS343758: Fix deterministic builds by sorting input to fts in jevents.
Fix deterministic builds by sorting input to fts in jevents
Feb 5 2019, 12:31 AM

Jan 9 2019

mmacy accepted D18753: Fix getsockopt(..., IPPROTO_IP, IP_OPTIONS, ..., ...).
Jan 9 2019, 3:48 AM

Jan 5 2019

mmacy committed rS342793: MK_ZFS -> {MK_ZFS|MK_LOADER_ZFS}, this is so we can diable userland / kernel.
MK_ZFS -> {MK_ZFS|MK_LOADER_ZFS}, this is so we can diable userland / kernel
Jan 5 2019, 10:45 PM
mmacy closed D18739: add separate knob for zfs support in bootloader .
Jan 5 2019, 10:45 PM

Jan 4 2019

mmacy added a comment to D14599: Implement kernel code coverage (kcov).

The interfaces are similar but not identical - for example I chose to expose the number of buffer items as an ioctl rather than at the beginning of the buffer as they do in the Linux patch. Conveniently, it is not required that they match exactly as syzkaller has specific executor code per OS which we can adjust to fit this one.

Jan 4 2019, 11:58 PM

Jan 3 2019

mmacy committed rS342749: mp_ring: avoid items offset difference between iflib and mp_ring.
mp_ring: avoid items offset difference between iflib and mp_ring
Jan 3 2019, 11:06 PM
mmacy updated the diff for D18739: add separate knob for zfs support in bootloader .
  • update build knob docs
Jan 3 2019, 10:55 PM
mmacy committed rS342747: zfsboot: support newer ZFS versions.
zfsboot: support newer ZFS versions
Jan 3 2019, 10:49 PM
mmacy updated the diff for D18739: add separate knob for zfs support in bootloader .
  • MK_ZFSBOOT -> MK_LOADER_ZFS
Jan 3 2019, 10:06 PM
mmacy created D18739: add separate knob for zfs support in bootloader .
Jan 3 2019, 9:45 PM

Dec 14 2018

mmacy updated the diff for D18520: Update opencrypto for ZFS crypto.

fix build

Dec 14 2018, 1:53 AM

Dec 13 2018

mmacy updated the diff for D18520: Update opencrypto for ZFS crypto.

replace GMAC_DIGEST_LEN with CCM_CBC_MAX_DIGEST_LEN

Dec 13 2018, 5:41 AM
mmacy added a comment to D18520: Update opencrypto for ZFS crypto.

I think I've incorporated all feedback but the MAC len name change.

Dec 13 2018, 5:35 AM
mmacy updated the diff for D18520: Update opencrypto for ZFS crypto.
  • incorporate two missing bits of feedback
Dec 13 2018, 5:34 AM
mmacy added inline comments to D18520: Update opencrypto for ZFS crypto.
Dec 13 2018, 5:26 AM
mmacy updated the diff for D18520: Update opencrypto for ZFS crypto.
  • rebase post D18522 commit
  • incorporate some of cem's feedback
Dec 13 2018, 5:26 AM
mmacy committed rS342024: Generalize AES iov optimization.
Generalize AES iov optimization
Dec 13 2018, 4:43 AM
mmacy closed D18522: AES iov optimization.
Dec 13 2018, 4:43 AM

Dec 12 2018

mmacy added a reviewer for D18522: AES iov optimization: cem.
Dec 12 2018, 5:07 AM

Dec 11 2018

mmacy updated the diff for D18520: Update opencrypto for ZFS crypto.
  • fix numbering
  • pull in cryptocheck change
Dec 11 2018, 11:58 PM
mmacy added reviewers for D18520: Update opencrypto for ZFS crypto: allanjude, cperciva.
Dec 11 2018, 11:06 PM
mmacy created D18520: Update opencrypto for ZFS crypto.
Dec 11 2018, 10:59 PM

Nov 27 2018

mmacy added a comment to D17862: emulators/qemu-powernv: rename emulators/qemu-ppcnv and update to POWER9.

@krion @timur poke

Nov 27 2018, 4:18 AM

Nov 25 2018

mmacy added a comment to D18327: graphics/drm-next-kmod: Add hack to help make AMD drivers usable.

it's a last resort mechanism, as opposed to the regular PID-controller pagedaemons

It should run regularly (with a 10s period) whenever the pagedaemon is attempting to reclaim pages.

Is there a specific application you're using to trigger this problem? I've never seen a large number of pages be wired by the TTM; maybe there's a GEM object leak? Are you using amdgpu or radeonkms?

Nov 25 2018, 11:00 PM

Nov 21 2018

mmacy added a reviewer for D18041: LKPI updates for drm-v4.18: bwidawsk.
Nov 21 2018, 9:21 PM
mmacy updated the diff for D18041: LKPI updates for drm-v4.18.
  • respond to feedback
  • further changes for 4.18
Nov 21 2018, 7:44 PM
mmacy added a reviewer for D17982: Add support for newer DWARF fields to ldscript: dim.
Nov 21 2018, 6:20 AM
mmacy committed rS340718: hwpmc: new counters and bug fix MFCs.
hwpmc: new counters and bug fix MFCs
Nov 21 2018, 1:24 AM

Nov 19 2018

mmacy accepted D18052: Summary: linuxkpi: Add some basic swap functions These are used by kms-drm to determine various heuristics related to low memory conditions..

+1 I was just observing the need for this last night.

Nov 19 2018, 11:56 PM
mmacy accepted D18026: Enable evdev on ppc64.

LGTM

Nov 19 2018, 6:52 AM · PowerPC
mmacy created D18041: LKPI updates for drm-v4.18.
Nov 19 2018, 2:11 AM

Nov 14 2018

mmacy committed rS340420: epoch(9) revert r340097 - no longer a need for multiple sections per cpu.
epoch(9) revert r340097 - no longer a need for multiple sections per cpu
Nov 14 2018, 12:12 AM

Nov 13 2018

mmacy created D17982: Add support for newer DWARF fields to ldscript.
Nov 13 2018, 11:27 PM
mmacy committed rS340414: Add ZFS to amd64 NOTES to catch future breakage of static linking.
Add ZFS to amd64 NOTES to catch future breakage of static linking
Nov 13 2018, 11:09 PM
mmacy added a comment to D17860: <<Two NVMe Bootup hang>.

Why isn’t this hit elsewhere? Are you compiling without EARLY_AP ?

Nov 13 2018, 9:36 PM
mmacy accepted D17901: Use busdma unconditionally in iflib.
Nov 13 2018, 9:25 PM

Nov 9 2018

mmacy updated the summary of D17933: add NUMA support to powerpc.
Nov 9 2018, 9:53 PM
mmacy created D17933: add NUMA support to powerpc.
Nov 9 2018, 9:46 PM