Sr329824 changed a couple of data structures in dev/nvme/nvme.h. This revision chases the changes made in Sr329824 allowing sysutils/smartmontools to build again under -CURRENT.
Details
Details
builds OK.
Tests pass on my infrastructure at home. However additional testing by others with nvme controller would be appreciated.
Diff Detail
Diff Detail
- Repository
- rP FreeBSD ports repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Comment Actions
Unfortunately I'm not able to test this today and provide a patch but I think what needs to be done is:
- include <sys/endian.h>
- add htole32() for in.nsid and also for every cdwXX field
- call nvme_completion_swapbytes() before reading cdw0
Comment Actions
I disagree. What you are suggesting should be a separate revision and a separate commit. Do not mix fixing a little endian build with adding big endian capability. They are two separate issues.
The steps must be:
- Fix the port's build as broken by Sr329824.
- Create a new revision to support big endian architectures.
Let's go ahead and commit this break fix and create a new big endian revision.
Comment Actions
Still waiting for maintainer (samm@os2.kiev.ua) approval. I sent an email Feb 22. No reply yet.
Comment Actions
The fix has nothing to do with endianness and does not break anything that was was not broken before. Please commit.