Re: [PATCH] nvdimm/btt: add endian conversion in dev_err in btt_log_read

From: Ben Dooks

Date: Wed Jun 24 2026 - 11:16:49 EST


On 24/06/2026 00:51, Alison Schofield wrote:
On Mon, Jun 22, 2026 at 03:20:11PM +0100, Ben Dooks wrote:
The dev_err() call in btt_log_read() is passing a seq value
into dev_err() which is a __le32 without any conversion.

Fix the following (prototype) sparse warnings:
drivers/nvdimm/btt.c:342:17: warning: incorrect type in argument 5 (different base types)
drivers/nvdimm/btt.c:342:17: expected int
drivers/nvdimm/btt.c:342:17: got restricted __le32 [usertype] seq
drivers/nvdimm/btt.c:342:17: warning: incorrect type in argument 6 (different base types)
drivers/nvdimm/btt.c:342:17: expected int
drivers/nvdimm/btt.c:342:17: got restricted __le32 [usertype] seq

Hi Ben,

Please revise the commit log.

The commit log is a message to all future readers, not a place to
paste static analysis warnings and leave the user visible impact
assumed, or as an exercise for the reader.

Prefer something like this:

When BTT log corruption is detected, btt_log_read() reports the
sequence numbers of the two log entries. Those values are stored
little-endian, so printing them without conversion can report
byte-swapped sequence numbers on big-endian systems.

Convert the sequence numbers to CPU endianness before passing
them to dev_err().

Issue reported by sparse.


(There is no need for the sparse pastings.)

Thanks, I've posted a v2, with a reworded patch commit log.

The only comment is that I like the sparse warnings as it makes it
easier to search if there is a patch in flight for this.

--
Ben Dooks http://www.codethink.co.uk/
Senior Engineer Codethink - Providing Genius

https://www.codethink.co.uk/privacy.html