[PATCH 0/7] of: unittest: new node lifecycle tests

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Create new devicetree node lifecycle tests.

The tests introduce use of EXPECT_NOT messages, similar to EXPECT
messages.  This requires updating scripts/dtc/of_unittest_expect
to process EXPECT_NOT messages.

The new tests revealed an issue in printk formatting when using
format "%pOF" on a node with a reference count of zero.  A patch
is included to the fix the caller which revealed the issue.

Update kconfig unittest help to further explain that unittests
should only be enabled for developer kernels.  Also add info
about using scripts/dtc/of_unittest_expect to process the output
of unittests.

Add an additional consistency check to of_node_release(), which
is the function that potentially frees node related memory when
the node's reference count is decremented to zero.

Add docbook documentation to the devicetree node creation functions
about caller responsibility to call of_node_put() and how the
memory free process works.

Frank Rowand (7):
  of: prepare to add processing of EXPECT_NOT to of_unittest_expect
  of: add processing of EXPECT_NOT to of_unittest_expect
  of: update kconfig unittest help
  of: unittest: add node lifecycle tests
  of: do not use "%pOF" printk format on node with refcount of zero
  of: add consistency check to of_node_release()
  of: dynamic: add lifecycle docbook info to node creation functions

 drivers/of/Kconfig                            |  14 +-
 drivers/of/dynamic.c                          |  31 ++-
 .../of/unittest-data/testcases_common.dtsi    |   1 +
 drivers/of/unittest-data/tests-lifecycle.dtsi |   8 +
 drivers/of/unittest.c                         | 148 +++++++++++++-
 include/linux/of.h                            |  11 ++
 scripts/dtc/of_unittest_expect                | 183 +++++++++++++++---
 7 files changed, 365 insertions(+), 31 deletions(-)
 create mode 100644 drivers/of/unittest-data/tests-lifecycle.dtsi

-- 
Frank Rowand <frowand.list@xxxxxxxxx>




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux