Page MenuHomeFreeBSD

chuck (Chuck Tuffli)
User

Projects

User Details

User Since
Dec 7 2017, 1:03 PM (120 w, 2 d)

Recent Activity

Fri, Mar 27

chuck committed rS359367: bhyve: fix NVMe emulation update of SQHD.
bhyve: fix NVMe emulation update of SQHD
Fri, Mar 27, 3:34 PM
chuck closed D24083: bhyve: fix NVMe emulation update of SQHD.
Fri, Mar 27, 3:28 PM
chuck closed D24082: bhyve: fix NVMe emulation missed interrupts.
Fri, Mar 27, 3:28 PM
chuck committed rS359366: bhyve: fix NVMe emulation missed interrupts.
bhyve: fix NVMe emulation missed interrupts
Fri, Mar 27, 3:28 PM
chuck closed D24081: bhyve: use STAILQ in NVMe emulation.
Fri, Mar 27, 3:28 PM
chuck closed D21839: bhyve: implement NVMe deallocate command.
Fri, Mar 27, 3:28 PM
chuck committed rS359365: bhyve: use STAILQ in NVMe emulation.
bhyve: use STAILQ in NVMe emulation
Fri, Mar 27, 3:28 PM
chuck closed D21838: bhyve: refactor NVMe namespace initialization.
Fri, Mar 27, 3:28 PM
chuck committed rS359364: bhyve: implement NVMe deallocate command.
bhyve: implement NVMe deallocate command
Fri, Mar 27, 3:28 PM
chuck committed rS359363: bhyve: refactor NVMe namespace initialization.
bhyve: refactor NVMe namespace initialization
Fri, Mar 27, 3:28 PM
chuck committed rS359362: bhyve: refactor NVMe PRP memcpy.
bhyve: refactor NVMe PRP memcpy
Fri, Mar 27, 3:28 PM
chuck closed D21837: bhyve: refactor NVMe PRP memcpy.
Fri, Mar 27, 3:28 PM

Thu, Mar 26

chuck added inline comments to D24081: bhyve: use STAILQ in NVMe emulation.
Thu, Mar 26, 6:49 PM
chuck added inline comments to D24083: bhyve: fix NVMe emulation update of SQHD.
Thu, Mar 26, 6:18 PM

Tue, Mar 24

chuck updated the diff for D21839: bhyve: implement NVMe deallocate command.

Version 3 of patch adds the following:

Tue, Mar 24, 3:01 PM

Fri, Mar 20

chuck added a comment to D24124: bhyve: implement NVMe flush command.

Thank you for working on this. I have work-in-progress that significantly restructures the I/O path and includes support for missing commands such as Write Zeros and Flush. Once some of the previous reviews are finished, I will post reviews for that work as well and would appreciate your feedback and testing.

Fri, Mar 20, 1:06 AM

Thu, Mar 19

chuck added inline comments to D21839: bhyve: implement NVMe deallocate command.
Thu, Mar 19, 5:55 PM

Sun, Mar 15

chuck created D24083: bhyve: fix NVMe emulation update of SQHD.
Sun, Mar 15, 11:54 PM
chuck created D24082: bhyve: fix NVMe emulation missed interrupts.
Sun, Mar 15, 11:49 PM
chuck created D24081: bhyve: use STAILQ in NVMe emulation.
Sun, Mar 15, 11:40 PM
chuck updated the diff for D21839: bhyve: implement NVMe deallocate command.

Version 2 of this patch addresses review feedback plus fixes a bug discovered during testing a Linux guest.

Sun, Mar 15, 11:36 PM

Tue, Mar 10

chuck accepted D24008: Various cleanups: remove unused / under-used stuff..
Tue, Mar 10, 3:52 PM
chuck added inline comments to D24008: Various cleanups: remove unused / under-used stuff..
Tue, Mar 10, 3:52 PM
chuck added a comment to D24008: Various cleanups: remove unused / under-used stuff..

Looks OK to me

Tue, Mar 10, 3:21 PM

Dec 13 2019

chuck added a comment to D22785: Add IOCTL to get device ID.

While I don't have an issue with this change per se, if the goal is to support nvme-cli, I'd argue that it would be better to provide an emulated device node via the Linux compatibility layer. The main concern is nvme-cli assumes it operates under Linux which exposes NVMe devices to the system in a very different way to what FreeBSD does (e.g. device node naming differences, device nodes are block devices, etc). Thus to better support nvme-cli, there would probably be additional IOCTL's added here to support / work-around Linux-isms. And these additions would look odd as nothing in base would use them.

Dec 13 2019, 3:10 PM

Nov 7 2019

chuck added a comment to D22249: Show HBA path in 'diskinfo -v'..

I have the same problem - the most factually correct way would be "newbus parent node", but that would be completely unparseable to most of the users.
Any thoughts on merging those two attributes into a single string? I've mimicked the fields from struct ccb_pathinq, but I'm not sure if that's the right thing to do.

Nov 7 2019, 2:27 PM

Nov 6 2019

chuck added a comment to D22249: Show HBA path in 'diskinfo -v'..

Overall, the changes look good to me, but I am having a twinge over "HBA". HBA completely makes sense for SCSI but doesn't at all for NVMe. SATA falls in the middle depending on whether this is a proprietary thing or AHCI.

Nov 6 2019, 6:42 PM

Oct 19 2019

chuck added inline comments to D21839: bhyve: implement NVMe deallocate command.
Oct 19 2019, 4:40 PM

Sep 29 2019

chuck created D21839: bhyve: implement NVMe deallocate command.
Sep 29 2019, 3:29 PM
chuck created D21838: bhyve: refactor NVMe namespace initialization.
Sep 29 2019, 3:26 PM
chuck created D21837: bhyve: refactor NVMe PRP memcpy.
Sep 29 2019, 3:23 PM

Sep 9 2019

chuck committed rS352061: MFC r350077.
MFC r350077
Sep 9 2019, 2:17 PM

Jul 27 2019

chuck committed rS350382: MFC r349969.
MFC r349969
Jul 27 2019, 5:59 PM
chuck committed rS350381: MFC r348781.
MFC r348781
Jul 27 2019, 5:52 PM
chuck committed rS350380: MFC r345956.
MFC r345956
Jul 27 2019, 5:48 PM
chuck committed rS350379: MFC r345957.
MFC r345957
Jul 27 2019, 5:44 PM

Jul 21 2019

chuck accepted D20999: Move to using bool instead of boolean_t.
Jul 21 2019, 6:14 PM

Jul 18 2019

D20979: Provide macros to extract the sub-fields of the CAP_LO and CAP_HI registers. is now accepted and ready to land.

LGTM

Jul 18 2019, 2:41 PM

Jul 17 2019

chuck closed D20945: bhyve: update the NVMe CQ based on the status.
Jul 17 2019, 3:19 AM
chuck committed rS350077: bhyve: update the NVMe CQ based on the status.
bhyve: update the NVMe CQ based on the status
Jul 17 2019, 3:19 AM

Jul 14 2019

chuck committed rS349981: Fix a typo in r349969.
Fix a typo in r349969
Jul 14 2019, 3:50 AM

Jul 13 2019

chuck created D20945: bhyve: update the NVMe CQ based on the status.
Jul 13 2019, 2:31 PM
chuck closed D19905: bhyve: Add EUI64 to NVMe device.
Jul 13 2019, 12:48 PM
chuck committed rS349969: bhyve: Create EUI64 for NVMe namespaces.
bhyve: Create EUI64 for NVMe namespaces
Jul 13 2019, 12:48 PM

Jul 12 2019

chuck added a comment to D19905: bhyve: Add EUI64 to NVMe device.

Updated based on jhb's feedback

Jul 12 2019, 5:42 PM

Jun 9 2019

chuck committed rS348824: Fix uninitialized variable in camdd.
Fix uninitialized variable in camdd
Jun 9 2019, 2:06 AM

Jun 8 2019

chuck closed D12141: Add NVMe support to camdd.

Committed https://svnweb.freebsd.org/changeset/base/348806

Jun 8 2019, 5:20 PM
chuck committed rS348806: Add NVMe support to camdd(8).
Add NVMe support to camdd(8)
Jun 8 2019, 5:17 PM

Jun 7 2019

chuck committed rS348786: Fix nda(4) PCIe link status output.
Fix nda(4) PCIe link status output
Jun 7 2019, 6:35 PM
chuck closed D20282: Fix nda(4) PCIe link status output.
Jun 7 2019, 6:35 PM
chuck committed rS348781: bhyve: Add PCIe Integrated Endpoint capability.
bhyve: Add PCIe Integrated Endpoint capability
Jun 7 2019, 5:12 PM
chuck closed D19904: bhyve: Add Integrated Endpoint to PCIe Capability.
Jun 7 2019, 5:12 PM

Jun 4 2019

chuck added a comment to D19746: Introduce sim_dev and cam_sim_alloc_dev()..

The change looks reasonable to me. Are there any ABI issues with changing the size of struct cam_sim?

Jun 4 2019, 5:08 PM

May 18 2019

chuck updated the diff for D20282: Fix nda(4) PCIe link status output.

Convert to using sbuf to avoid log messages from being interleaved once the discovery is done in parallel

May 18 2019, 2:47 AM
chuck updated the diff for D19905: bhyve: Add EUI64 to NVMe device.

Fixed copyright attribution

May 18 2019, 1:24 AM
chuck added a comment to D20282: Fix nda(4) PCIe link status output.
In D20282#437333, @imp wrote:

This looks good. The multiple printfs give me heart-burn, but that's for another day. This part of the code they should be safe, but they aren't safe in a future where we do device discovery in parallel.

May 18 2019, 12:31 AM

May 17 2019

chuck created D20282: Fix nda(4) PCIe link status output.
May 17 2019, 12:45 AM

May 16 2019

chuck updated the diff for D19905: bhyve: Add EUI64 to NVMe device.

Updated patch to define OUI range specifically for NVMe
Fixed typo while I was in ieee_oui.h (reviewed by kevans)
Use NVMe OUI macro when creating the EUI64 value. Feeds the vmname + the PCI BDF into crc16 to make the low 16 bits "unique"

May 16 2019, 7:07 PM

May 15 2019

chuck added a comment to D19904: bhyve: Add Integrated Endpoint to PCIe Capability.

From my reading of the virtio specification, virtio devices must conform to the bus spec they are emulating. So if our virtio devices don't say PCIe, they shouldn't need the PCIe CAP.

May 15 2019, 7:30 PM
chuck updated the diff for D19904: bhyve: Add Integrated Endpoint to PCIe Capability.

Update to incorporate feedback from Rod and John

May 15 2019, 6:23 PM

May 1 2019

chuck added a comment to D14835: Enhance support for Linux mremap system call.

Ping

May 1 2019, 1:32 PM

Apr 14 2019

chuck created D19905: bhyve: Add EUI64 to NVMe device.
Apr 14 2019, 1:30 AM
chuck created D19904: bhyve: Add Integrated Endpoint to PCIe Capability.
Apr 14 2019, 1:24 AM

Apr 13 2019

chuck closed D19580: Fix bhyve PCIe capability emulation.
Apr 13 2019, 11:38 PM
chuck committed rS346194: Revert r345171 pending review.
Revert r345171 pending review
Apr 13 2019, 11:37 PM

Apr 7 2019

chuck removed a reviewer for D19841: bhyve NVMe emulation locking: bhyve.
Apr 7 2019, 7:14 PM
chuck created D19841: bhyve NVMe emulation locking.
Apr 7 2019, 7:13 PM

Apr 5 2019

chuck closed D19695: bhyve(8): Fix NVMe data structure copy to guest.
Apr 5 2019, 4:54 PM
chuck committed rS345957: bhyve: Fix NVMe data structure copy to guest.
bhyve: Fix NVMe data structure copy to guest
Apr 5 2019, 4:54 PM
chuck committed rS345956: bhyve: Fix NVMe BAR size calculation.
bhyve: Fix NVMe BAR size calculation
Apr 5 2019, 4:54 PM
chuck closed D19676: bhyve: Fix NVMe BAR size calculation.
Apr 5 2019, 4:54 PM
chuck added a comment to D19695: bhyve(8): Fix NVMe data structure copy to guest.
In D19695#423813, @imp wrote:

This looks good to me. It's the right thing to do.
Do we need to expand it more generally (in a different commit) for any time we have to copy data out, or is the I/O path good?

Apr 5 2019, 4:00 PM

Apr 4 2019

chuck added a comment to D19676: bhyve: Fix NVMe BAR size calculation.
In D19676#423809, @imp wrote:

one quick Q. if you know the windows versions, document it in the comment.

Apr 4 2019, 3:30 PM

Mar 26 2019

chuck added a comment to D19580: Fix bhyve PCIe capability emulation.
In D19580#422125, @jhb wrote:

Hmm, due to what this bit actually does, I'd probably be inclined to not set it if we don't need it. When the role based error reporting is set, it means we also support at least one other register to configure the mask of fatal vs non-fatal errors IIRC which I'm pretty sure we don't do. I had assumed Windows was failing to boot without this bit set. If Windows is actually fine then I think I'd prefer we drop it until we find a need for it. A PCIe 1.0 device can have this bit clear and still be compliant. The other thing about being a special endpoint when directly hung off the RC would be required even for 1.0 compliance.

Mar 26 2019, 1:18 PM

Mar 24 2019

chuck resigned from D14703: nvme: Revert to using the old API..
Mar 24 2019, 10:02 PM
chuck created D19695: bhyve(8): Fix NVMe data structure copy to guest.
Mar 24 2019, 5:18 PM

Mar 23 2019

chuck added a comment to D19580: Fix bhyve PCIe capability emulation.

One of @jhb requests was a comment on why the RBER change was needed. Here is the thought process:

Mar 23 2019, 5:38 PM
chuck reopened D19580: Fix bhyve PCIe capability emulation.
Mar 23 2019, 5:21 PM
chuck committed rS345454: MFC r345170:.
MFC r345170:
Mar 23 2019, 4:46 PM
chuck committed rS345453: MFC r342761:.
MFC r342761:
Mar 23 2019, 4:42 PM
chuck committed rS345451: MFC r342762:.
MFC r342762:
Mar 23 2019, 4:30 PM
chuck updated the diff for D19676: bhyve: Fix NVMe BAR size calculation.

Updated based on feedback

Mar 23 2019, 2:30 AM

Mar 22 2019

chuck created D19676: bhyve: Fix NVMe BAR size calculation.
Mar 22 2019, 5:22 AM

Mar 15 2019

chuck committed rS345171: Fix bhyve PCIe capability emulation.
Fix bhyve PCIe capability emulation
Mar 15 2019, 2:12 AM
chuck closed D19580: Fix bhyve PCIe capability emulation.
Mar 15 2019, 2:12 AM
chuck committed rS345170: Fix bhyve's NVMe Identify Namespace data.
Fix bhyve's NVMe Identify Namespace data
Mar 15 2019, 2:11 AM
chuck closed D19579: Fix bhyve's NVMe Identify Namespace data.
Mar 15 2019, 2:11 AM
chuck added inline comments to D19580: Fix bhyve PCIe capability emulation.
Mar 15 2019, 12:47 AM

Mar 14 2019

chuck updated the diff for D19580: Fix bhyve PCIe capability emulation.

added wrong diff

Mar 14 2019, 10:11 AM
chuck created D19580: Fix bhyve PCIe capability emulation.
Mar 14 2019, 9:55 AM
chuck added reviewers for D19579: Fix bhyve's NVMe Identify Namespace data: imp, ken, araujo.
Mar 14 2019, 9:50 AM
chuck updated the diff for D19579: Fix bhyve's NVMe Identify Namespace data.

style(9)

Mar 14 2019, 9:49 AM
chuck created D19579: Fix bhyve's NVMe Identify Namespace data.
Mar 14 2019, 9:48 AM

Mar 3 2019

chuck accepted D19431: Don't print all the I/O we abort on a reset, unless we're out of retries..

LGTM

Mar 3 2019, 4:38 PM

Jan 8 2019

chuck added a comment to D18772: Add NVMe drive to NOIOB quirk list.
In D18772#400655, @imp wrote:

This works for me. There is a newer way to cope with this, but I don't think the 4600 implements this, so this change is appropriate.

Jan 8 2019, 3:35 PM
chuck committed rS342862: Add NVMe drive to NOIOB quirk list.
Add NVMe drive to NOIOB quirk list
Jan 8 2019, 3:31 PM
chuck closed D18772: Add NVMe drive to NOIOB quirk list.
Jan 8 2019, 3:31 PM

Jan 7 2019

chuck added a comment to D18772: Add NVMe drive to NOIOB quirk list.
In D18772#400520, @mav wrote:

I have no objections, if its true.

Jan 7 2019, 5:20 PM
chuck added reviewers for D18772: Add NVMe drive to NOIOB quirk list: imp, ken, mav.
Jan 7 2019, 3:41 PM
chuck created D18772: Add NVMe drive to NOIOB quirk list.
Jan 7 2019, 3:41 PM