[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1498239488.24295.20.camel@perches.com>
Date: Fri, 23 Jun 2017 10:38:08 -0700
From: Joe Perches <joe@...ches.com>
To: Rob Herring <robh@...nel.org>,
Frank Rowand <frowand.list@...il.com>,
Mark Rutland <mark.rutland@....com>,
Randy Dunlap <rdunlap@...radead.org>,
Grant Likely <glikely@...retlab.ca>
Cc: Pantelis Antoniou <pantelis.antoniou@...sulko.com>,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3] vsprintf: Add %p extension "%pOF" for device tree
On Fri, 2017-06-23 at 12:30 -0500, Rob Herring wrote:
> From: Pantelis Antoniou <pantelis.antoniou@...sulko.com>
>
> 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@...sulko.com>
> Signed-off-by: Rob Herring <robh@...nel.org>
> ---
> 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@...ches.com>
cheers, Joe
Powered by blists - more mailing lists