On Wed, 14 Jun 2023 21:20:43 +0200, Stephan Gerhold wrote: > sort() in Linux is based on heapsort which is not a stable sort > algorithm - equal elements are being reordered. For reserved memory in > the device tree this happens mainly for dynamic allocations: They do not > have an address to sort with, so they are reordered somewhat randomly > when adding/removing other unrelated reserved memory nodes. > > Functionally this is not a big problem, but it's confusing during > development when all the addresses change after adding unrelated > reserved memory nodes. > > Make the order stable by sorting dynamic allocations according to > the node order in the device tree. Static allocations are not affected > by this because they are still sorted by their (fixed) address. > > Signed-off-by: Stephan Gerhold <stephan@xxxxxxxxxxx> > --- > drivers/of/of_reserved_mem.c | 5 +++++ > 1 file changed, 5 insertions(+) > Applied, thanks!