Page MenuHomeFreeBSD

chuck (Chuck Tuffli)
User

Projects

User Details

User Since
Dec 7 2017, 1:03 PM (146 w, 7 h)

Recent Activity

Sun, Sep 20

chuck added a comment to D25876: bhyve: Passthrough host's NVMe device health logpage to guests..

After thinking about this and talking it over with some of the other bhyve developers, the better approach would be to create a new device model specifically for passing commands and data between a real NVMe device and a guest. The new device model (perhaps pci_nvme_proxy.c) might have a small amount of overlap with the NVMe device model with respect to hooking PCI reads and writes and probably queue creation. But the majority of the functionality would be handled by either nvme(4) or cam(3) requests. Using nvme(4) ioctl's as you have is a good model for Admin commands, but you will want to experiment with how best to implement the I/O path. Let me if you have questions.

Sun, Sep 20, 2:52 PM

Fri, Sep 18

chuck accepted D26390: Honor the FWUG value of some drives in nvmecontrol.

I'd love to see the addition of a warning, but am happy with these changes.

Fri, Sep 18, 4:43 PM
chuck added a comment to D26390: Honor the FWUG value of some drives in nvmecontrol.

FWIW, I checked with our NVMe standards person who says:

Fri, Sep 18, 4:34 PM

Thu, Sep 10

chuck added inline comments to D26390: Honor the FWUG value of some drives in nvmecontrol.
Thu, Sep 10, 2:05 PM
chuck added reviewers for D26390: Honor the FWUG value of some drives in nvmecontrol: imp, mav, chuck.
Thu, Sep 10, 1:52 PM

Aug 24 2020

chuck closed D24202: bhyve: Initial some NVMe controller health log data..
Aug 24 2020, 1:51 AM
chuck committed rS364603: bhyve: NVMe queue create must init head/tail.
bhyve: NVMe queue create must init head/tail
Aug 24 2020, 1:51 AM
chuck committed rS364602: bhyve: NVMe set nominal health values.
bhyve: NVMe set nominal health values
Aug 24 2020, 1:51 AM

Aug 12 2020

chuck added a comment to D24202: bhyve: Initial some NVMe controller health log data..

I'm happy with this change but need to wait for maintainer approval before I commit it

Aug 12 2020, 1:36 PM
chuck added reviewers for D24202: bhyve: Initial some NVMe controller health log data.: jhb, grehan.
Aug 12 2020, 1:35 PM

Aug 10 2020

chuck added a comment to D26003: vmm: intel: Support rdtscp and rdpid.

We've successfully tested a slightly modified version this patch with a CentOS-based VM that used RDTSCP on 12.1-RELEASE. Without the patch, the appliance image core dumps. With this patch, it runs correctly. Checked that module unload works. Thank you for fixing this!

Aug 10 2020, 10:01 PM

Aug 2 2020

chuck added a comment to D25876: bhyve: Passthrough host's NVMe device health logpage to guests..

I totally agree with your opition. adding complexities code is worthy or not.

But I have reasons for these.

  1. FreeBSD is a suitable solution for NAS and VM host. but some users are using the comsumer hardware. In that case, VT-D is not available. we have to provide other solutions for SMART data.
Aug 2 2020, 10:02 PM
chuck accepted D24202: bhyve: Initial some NVMe controller health log data..

Looks good. Thank you for contributing this!

Aug 2 2020, 9:53 PM

Aug 1 2020

chuck added a comment to D25876: bhyve: Passthrough host's NVMe device health logpage to guests..

While this is an interesting approach, the fix you proposed in D24202 is more in line with the goal of emulating an NVMe device, and I'd be more comfortable committing those changes.

Aug 1 2020, 2:45 PM
chuck added a reviewer for D24202: bhyve: Initial some NVMe controller health log data.: chuck.
Aug 1 2020, 1:49 PM
chuck added a comment to D24202: bhyve: Initial some NVMe controller health log data..

This looks good to me. Please rebase against the latest and I'd be happy to commit this.

Aug 1 2020, 1:49 PM

Jul 31 2020

chuck added a comment to D25876: bhyve: Passthrough host's NVMe device health logpage to guests..

Thank you for determining why some guest OS's (I'm guessing Windows?) believe that the device isn't healthy!
A couple of observations:

  1. If the backing storage for the namespace isn't an NVMe device, what will this code do?
  2. Were you able to determine which fields are important to the OS in question? If so, a better approach might be to fix the missing fields in the current implementation. This would have the added benefit of working with a ZVol or file-based backing storage.
Jul 31 2020, 9:56 PM

Jul 20 2020

chuck committed rS363359: MFC r362766 bhyve: fix NVMe Active Namespace list.
MFC r362766 bhyve: fix NVMe Active Namespace list
Jul 20 2020, 12:44 AM
chuck committed rS363358: MFC r362765 bhyve: NVMe handle zero length DSM ranges.
MFC r362765 bhyve: NVMe handle zero length DSM ranges
Jul 20 2020, 12:42 AM
chuck committed rS363357: MFC r362764 bhyve: fix NVMe Get Features, Predictable Latency.
MFC r362764 bhyve: fix NVMe Get Features, Predictable Latency
Jul 20 2020, 12:40 AM
chuck committed rS363356: MFC r362763 bhyve: add NVMe Feature Interrupt Vector Config.
MFC r362763 bhyve: add NVMe Feature Interrupt Vector Config
Jul 20 2020, 12:38 AM
chuck committed rS363355: MFC r362762 bhyve: add basic NVMe Firmware Commit support.
MFC r362762 bhyve: add basic NVMe Firmware Commit support
Jul 20 2020, 12:35 AM
chuck committed rS363354: MFC r362761 bhyve: Add AER support to NVMe emulation.
MFC r362761 bhyve: Add AER support to NVMe emulation
Jul 20 2020, 12:33 AM
chuck committed rS363353: MFC r362760 bhyve: validate the NVMe LBA start and count.
MFC r362760 bhyve: validate the NVMe LBA start and count
Jul 20 2020, 12:21 AM

Jul 19 2020

chuck committed rS363349: MFC r362759 bhyve: implement NVMe SMART data I/O statistics.
MFC r362759 bhyve: implement NVMe SMART data I/O statistics
Jul 19 2020, 11:46 PM
chuck committed rS363348: MFC r362758 bhyve: validate NVMe deallocate range values.
MFC r362758 bhyve: validate NVMe deallocate range values
Jul 19 2020, 11:43 PM
chuck committed rS363347: MFC r362757 bhyve: base pci_nvme_ioreq size on advertised MDTS.
MFC r362757 bhyve: base pci_nvme_ioreq size on advertised MDTS
Jul 19 2020, 11:41 PM
chuck committed rS363346: MFC r362756 bhyve: refactor NVMe I/O read/write.
MFC r362756 bhyve: refactor NVMe I/O read/write
Jul 19 2020, 11:37 PM
chuck committed rS363344: MFC r362755 bhyve: implement NVMe Format NVM command.
MFC r362755 bhyve: implement NVMe Format NVM command
Jul 19 2020, 11:34 PM
chuck committed rS363343: MFC r362754 bhyve: make unsupported NVMe commands a debug message.
MFC r362754 bhyve: make unsupported NVMe commands a debug message
Jul 19 2020, 11:29 PM
chuck committed rS363342: MFC r362753 bhyve: add more compliant NVMe Get/Set Features.
MFC r362753 bhyve: add more compliant NVMe Get/Set Features
Jul 19 2020, 11:27 PM
chuck committed rS363341: MFC r362752 bhyve: fix NVMe queue creation and deletion.
MFC r362752 bhyve: fix NVMe queue creation and deletion
Jul 19 2020, 11:24 PM
chuck committed rS363340: MFC r362751 bhyve: fix NVMe Get Log Page command.
MFC r362751 bhyve: fix NVMe Get Log Page command
Jul 19 2020, 11:21 PM
chuck committed rS363338: MFC r362750 bhyve: implement NVMe Namespace Identification Descriptor.
MFC r362750 bhyve: implement NVMe Namespace Identification Descriptor
Jul 19 2020, 11:18 PM
chuck committed rS363337: MFC r362749 bhyve: Consolidate NVMe CQ update.
MFC r362749 bhyve: Consolidate NVMe CQ update
Jul 19 2020, 10:58 PM
chuck committed rS363336: MFC r362748 bhyve: add locks around NVMe queue accesses.
MFC r362748 bhyve: add locks around NVMe queue accesses
Jul 19 2020, 10:56 PM
chuck committed rS363335: MFC r362747 bhyve: add a comment explaining NVME dsm option.
MFC r362747 bhyve: add a comment explaining NVME dsm option
Jul 19 2020, 10:52 PM
chuck committed rS363334: MFC r362746 bhyve: implement NVMe Flush command.
MFC r362746 bhyve: implement NVMe Flush command
Jul 19 2020, 10:40 PM
chuck committed rS363333: MFC r362745 bhyve: refactor NVMe IO command handling.
MFC r362745 bhyve: refactor NVMe IO command handling
Jul 19 2020, 10:38 PM
chuck committed rS363332: MFC 362744 bhyve: convert NVMe logging statements.
MFC 362744 bhyve: convert NVMe logging statements
Jul 19 2020, 10:27 PM
chuck committed rS363331: MFC r362027 pci: loosen PCIe hot-plug requirements.
MFC r362027 pci: loosen PCIe hot-plug requirements
Jul 19 2020, 10:24 PM

Jul 6 2020

chuck added a comment to D25396: bhyve nvme controller will pass unknown config if using blockif backend.

As an update, there is work underway to significantly enhance bhyve configuration. Once that lands, it should make many of the concerns here easier to address.

Jul 6 2020, 3:49 PM
chuck added a member for bhyve: chuck.
Jul 6 2020, 3:44 PM

Jun 29 2020

chuck closed D24901: bhyve: fix NVMe Active Namespace list.
Jun 29 2020, 12:37 AM
chuck closed D24897: bhyve: add basic NVMe Firmware Commit support.
Jun 29 2020, 12:37 AM
chuck closed D24900: bhyve: NVMe handle zero length DSM ranges.
Jun 29 2020, 12:37 AM
chuck committed rS362766: bhyve: fix NVMe Active Namespace list.
bhyve: fix NVMe Active Namespace list
Jun 29 2020, 12:37 AM
chuck committed rS362765: bhyve: NVMe handle zero length DSM ranges.
bhyve: NVMe handle zero length DSM ranges
Jun 29 2020, 12:37 AM
chuck closed D24894: bhyve: implement NVMe SMART data I/O statistics.
Jun 29 2020, 12:37 AM
chuck closed D24888: bhyve: make unsupported NVMe commands a debug message.
Jun 29 2020, 12:37 AM
chuck committed rS362756: bhyve: refactor NVMe I/O read/write.
bhyve: refactor NVMe I/O read/write
Jun 29 2020, 12:37 AM
chuck committed rS362755: bhyve: implement NVMe Format NVM command.
bhyve: implement NVMe Format NVM command
Jun 29 2020, 12:37 AM
chuck closed D24887: bhyve: add more compliant NVMe Get/Set Features.
Jun 29 2020, 12:37 AM
chuck committed rS362754: bhyve: make unsupported NVMe commands a debug message.
bhyve: make unsupported NVMe commands a debug message
Jun 29 2020, 12:37 AM
chuck closed D24898: bhyve: add NVMe Feature Interrupt Vector Config.
Jun 29 2020, 12:32 AM
chuck closed D24893: bhyve: validate NVMe deallocate range values.
Jun 29 2020, 12:32 AM
chuck committed rS362762: bhyve: add basic NVMe Firmware Commit support.
bhyve: add basic NVMe Firmware Commit support
Jun 29 2020, 12:32 AM
chuck committed rS362764: bhyve: fix NVMe Get Features, Predictable Latency.
bhyve: fix NVMe Get Features, Predictable Latency
Jun 29 2020, 12:32 AM
chuck committed rS362763: bhyve: add NVMe Feature Interrupt Vector Config.
bhyve: add NVMe Feature Interrupt Vector Config
Jun 29 2020, 12:32 AM
chuck closed D24896: bhyve: Add AER support to NVMe emulation.
Jun 29 2020, 12:32 AM
chuck closed D24895: bhyve: validate the NVMe LBA start and count.
Jun 29 2020, 12:32 AM
chuck closed D24888: bhyve: make unsupported NVMe commands a debug message.
Jun 29 2020, 12:32 AM
chuck committed rS362761: bhyve: Add AER support to NVMe emulation.
bhyve: Add AER support to NVMe emulation
Jun 29 2020, 12:32 AM
chuck committed rS362760: bhyve: validate the NVMe LBA start and count.
bhyve: validate the NVMe LBA start and count
Jun 29 2020, 12:32 AM
chuck committed rS362759: bhyve: implement NVMe SMART data I/O statistics.
bhyve: implement NVMe SMART data I/O statistics
Jun 29 2020, 12:32 AM
chuck committed rS362757: bhyve: base pci_nvme_ioreq size on advertised MDTS.
bhyve: base pci_nvme_ioreq size on advertised MDTS
Jun 29 2020, 12:32 AM
chuck closed D24890: bhyve: refactor NVMe I/O read/write.
Jun 29 2020, 12:32 AM
chuck closed D24889: bhyve: implement NVMe Format NVM command.
Jun 29 2020, 12:32 AM
chuck closed D24886: bhyve: fix NVMe queue creation and deletion.
Jun 29 2020, 12:32 AM
chuck committed rS362753: bhyve: add more compliant NVMe Get/Set Features.
bhyve: add more compliant NVMe Get/Set Features
Jun 29 2020, 12:32 AM
chuck committed rS362752: bhyve: fix NVMe queue creation and deletion.
bhyve: fix NVMe queue creation and deletion
Jun 29 2020, 12:32 AM
chuck closed D24882: bhyve: Consolidate NVMe CQ update.
Jun 29 2020, 12:31 AM
chuck closed D24881: bhyve: add a comment explaining NVME dsm option.
Jun 29 2020, 12:31 AM
chuck closed D24884: bhyve: implement NVMe Namespace Identification Descriptor.
Jun 29 2020, 12:31 AM
chuck committed rS362750: bhyve: implement NVMe Namespace Identification Descriptor.
bhyve: implement NVMe Namespace Identification Descriptor
Jun 29 2020, 12:31 AM
chuck closed D19841: bhyve: add locks around NVMe queue accesses.
Jun 29 2020, 12:31 AM
chuck committed rS362749: bhyve: Consolidate NVMe CQ update.
bhyve: Consolidate NVMe CQ update
Jun 29 2020, 12:31 AM
chuck committed rS362748: bhyve: add locks around NVMe queue accesses.
bhyve: add locks around NVMe queue accesses
Jun 29 2020, 12:31 AM
chuck committed rS362747: bhyve: add a comment explaining NVME dsm option.
bhyve: add a comment explaining NVME dsm option
Jun 29 2020, 12:31 AM
chuck closed D24880: bhyve: implement NVMe Flush command.
Jun 29 2020, 12:31 AM
chuck committed rS362746: bhyve: implement NVMe Flush command.
bhyve: implement NVMe Flush command
Jun 29 2020, 12:31 AM
chuck committed rS362745: bhyve: refactor NVMe IO command handling.
bhyve: refactor NVMe IO command handling
Jun 29 2020, 12:31 AM
chuck closed D24879: bhyve: refactor NVMe IO command handling.
Jun 29 2020, 12:31 AM
chuck closed D24878: bhyve: convert NVMe logging statements.
Jun 29 2020, 12:31 AM
chuck committed rS362744: bhyve: convert NVMe logging statements.
bhyve: convert NVMe logging statements
Jun 29 2020, 12:31 AM

Jun 25 2020

chuck added a comment to D25396: bhyve nvme controller will pass unknown config if using blockif backend.

I like your suggestion of explicitly specifying devpath but need to think about the implications especially with regards to backwards compatibility.

Jun 25 2020, 2:37 PM
chuck added inline comments to D25399: bhyve NVMe controller will accept model/rev config..
Jun 25 2020, 2:29 PM

Jun 24 2020

chuck added inline comments to D24889: bhyve: implement NVMe Format NVM command.
Jun 24 2020, 4:26 PM

Jun 23 2020

chuck requested changes to D25396: bhyve nvme controller will pass unknown config if using blockif backend.

Thank you for this contribution!

Jun 23 2020, 3:02 PM
chuck requested changes to D25399: bhyve NVMe controller will accept model/rev config..

Overall, I like these changes but would prefer to keep the Controller Data initialization together.

Jun 23 2020, 1:47 PM
chuck closed D24877: pci: loosen PCIe hot-plug requirements.
Jun 23 2020, 3:26 AM
chuck requested review of D24901: bhyve: fix NVMe Active Namespace list.
Jun 23 2020, 3:25 AM
chuck requested review of D24899: bhyve: fix NVMe Get Features, Predictable Latency.
Jun 23 2020, 3:20 AM
chuck requested review of D24897: bhyve: add basic NVMe Firmware Commit support.
Jun 23 2020, 3:20 AM
chuck requested review of D24893: bhyve: validate NVMe deallocate range values.
Jun 23 2020, 3:20 AM
chuck requested review of D24888: bhyve: make unsupported NVMe commands a debug message.
Jun 23 2020, 3:20 AM
chuck requested review of D24881: bhyve: add a comment explaining NVME dsm option.
Jun 23 2020, 3:20 AM
chuck requested review of D24877: pci: loosen PCIe hot-plug requirements.
Jun 23 2020, 3:19 AM

Jun 10 2020

chuck committed rS362027: pci: loosen PCIe hot-plug requirements.
pci: loosen PCIe hot-plug requirements
Jun 10 2020, 8:13 PM
chuck added a comment to D24877: pci: loosen PCIe hot-plug requirements.

Changes made to the comments. Thanks for the reviews!

Jun 10 2020, 8:12 PM