Re: [RFC 0/2] of: Add whitelist

From: Frank Rowand
Date: Wed Nov 29 2017 - 19:59:11 EST


On 11/29/17 04:20, Frank Rowand wrote:
> On 11/27/17 15:58, Alan Tull wrote:
>> Here's a proposal for a whitelist to lock down the dynamic device tree.
>>
>> For an overlay to be accepted, all of its targets are required to be
>> on a target node whitelist.
>>
>> Currently the only way I have to get on the whitelist is calling a
>> function to add a node. That works for fpga regions, but I think
>> other uses will need a way of having adding specific nodes from the
>> base device tree, such as by adding a property like 'allow-overlay;'
>> or 'allow-overlay = "okay";' If that is acceptable, I could use some
>> advice on where that particular code should go.
>>
>> Alan
>>
>> Alan Tull (2):
>> of: overlay: add whitelist
>> fpga: of region: add of-fpga-region to whitelist
>>
>> drivers/fpga/of-fpga-region.c | 9 ++++++
>> drivers/of/overlay.c | 73 +++++++++++++++++++++++++++++++++++++++++++
>> include/linux/of.h | 12 +++++++
>> 3 files changed, 94 insertions(+)
>>
>
> The plan was to use connectors to restrict where an overlay could be applied.
> I would prefer not to have multiple methods for accomplishing the same thing
> unless there is a compelling reason to do so.

Going back one level in my thinking, I don't think that having a driver mark
a node as a location where an overlay fragment can be applied is serving a
useful purpose. Any driver, including any driver loaded as a module,
could mark a node as ok. I don't see how this is providing any meaningful
restriction on where an overlay fragment can be applied.

-Frank