Re: [PATCH v3] vsprintf: Add %p extension "%pOF" for device tree

From: Joe Perches
Date: Fri Jun 23 2017 - 13:38:23 EST


On Fri, 2017-06-23 at 12:30 -0500, Rob Herring wrote:
> From: Pantelis Antoniou <pantelis.antoniou@xxxxxxxxxxxx>
>
> 90% of the usage of device node's full_name is printing it out in a
> kernel message. However, storing the full path for every node is
> wasteful and redundant. With a custom format specifier, we can generate
> the full path at run-time and eventually remove the full path from every
> node.
>
> For instance typical use is:
> pr_info("Frobbing node %s\n", node->full_name);
>
> Which can be written now as:
> pr_info("Frobbing node %pOF\n", node);
>
> '%pO' is the base specifier to represent kobjects with '%pOF'
> representing struct device_node. Currently, struct device_node is the
> only supported type of kobject.
>
> More fine-grained control of formatting includes printing the name,
> flags, path-spec name and others, explained in the documentation entry.
>
> Originally written by Pantelis, but pretty much rewrote the core
> function using existing string/number functions. The 2 passes were
> unnecessary and have been removed. Also, updated the checkpatch.pl
> check. The unittest code was written by Grant Likely.
>
> Signed-off-by: Pantelis Antoniou <pantelis.antoniou@xxxxxxxxxxxx>
> Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
> ---
> v3:
> - Fix missing documentation updates using '%pOF' as the device_node
> specifier.
> - Update the commit msg and documentation to clearly define '%pO' is the
> base specifier for kobjects.
> - Rework device_node_gen_full_name() to avoid creating an array of node
> pointers on the stack.

Thanks Rob.

This all seems sensible to me now.

If you want:

Acked-by: Joe Perches <joe@xxxxxxxxxxx>

cheers, Joe