On Wed, 2020-04-01 at 01:49 -0700, Dan Williams wrote: > On Sun, Mar 29, 2020 at 10:23 PM Alastair D'Silva <alastair@xxxxxxxxxxx> wrote: > > This patch emits a message showing how much LPC memory & special purpose > > memory was detected on an OCXL device. [] > > diff --git a/drivers/misc/ocxl/config.c b/drivers/misc/ocxl/config.c [] > > @@ -568,6 +568,10 @@ static int read_afu_lpc_memory_info(struct pci_dev *dev, > > afu->special_purpose_mem_size = > > total_mem_size - lpc_mem_size; > > } > > + > > + dev_info(&dev->dev, "Probed LPC memory of %#llx bytes and special purpose memory of %#llx bytes\n", > > + afu->lpc_mem_size, afu->special_purpose_mem_size); > > A patch for a single log message is too fine grained for my taste, > let's squash this into another patch in the series. Is the granularity of lpc_mem_size actually bytes? Might this be better as KiB or something using functions Maybe something like: unsigned long si_val(unsigned long val) { static const char units[] = "BKMGTPE"; const char *unit = units; while (!(val & 1023) && unit[1]) { val >>= 10; unit++; } return val; } char si_type(unsigned long val) { static const char units[] = "BKMGTPE"; const char *unit = units; while (!(val & 1023) && unit[1]) { val >>= 10; unit++; } return *unit; } so this could be something like: dev_info(&dev->dev, "Probed LPC memory of %#llu%c and special purpose memory of %#llu%c\n", si_val(afu->lpc_mem_size), si_type(afu->lpc_mem_size), si_val(afu->special_purpose_mem_size), si_type(afu->special_purpose_mem_size));