Messages in this thread | | | Date | Fri, 6 Oct 2017 19:24:42 -0400 (EDT) | From | Nicolas Pitre <> | Subject | Re: [PATCH 0/6] Shrinking DT memory usage |
| |
On Fri, 6 Oct 2017, Rob Herring wrote:
> On Fri, Oct 6, 2017 at 4:30 PM, Nicolas Pitre <nicolas.pitre@linaro.org> wrote: > > On Thu, 5 Oct 2017, Rob Herring wrote: > > > >> On kernels with a minimal config and a RAM target in the 100s of KB, DT > >> is quite a hog of runtime memory usage. How much is dependent on how many > >> nodes and properties in the DT which have a corresponding struct device_node > >> and struct property in the kernel. Just skipping disabled nodes saves a > >> lot by not creating the device_nodes in the first place[1], but there's > >> more low hanging fruit by making some of the fields in struct property and > >> struct device_node optional. With the changes here, the memory usage goes > >> from 17KB to under 8KB on QEMU's ARM virt machine which is a relatively > >> small DT. > > > > My test case went from 118072 bytes ddown to 21548 bytes with this > > series. > > Did that include the changes for FDT skipping status=disabled and to > stop storing the full path of every node? With those 2 alone you said > it dropped to 25K.
No -- that's with those 6 patches only.
Adding the other 2 patches on top and it is down to 11732 bytes.
Nicolas
| |