mbox series

[v4,0/4] memblock tests: add VERBOSE and MEMBLOCK_DEBUG Makefile options

Message ID cover.1656368930.git.remckee0@gmail.com (mailing list archive)
Headers show
Series memblock tests: add VERBOSE and MEMBLOCK_DEBUG Makefile options | expand

Message

Rebecca Mckeever June 27, 2022, 10:34 p.m. UTC
These patches add options VERBOSE and MEMBLOCK_DEBUG to Memblock
simulator, which can be specified when running make. These patches also
implement the functionality for these options.

VERBOSE
Usage:

$ make VERBOSE=1

Passing VERBOSE=1 will enable verbose output from Memblock simulator. For
each test, the verbose output includes the name of the memblock function
being tested, the name of the test, and whether the test passed or failed.
Since all the tests in Memblock simulator run as one monolithic test, this
output is a quick way to get a summary of test results.

MEMBLOCK_DEBUG
Usage:

$ make MEMBLOCK_DEBUG=1

Passing MEMBLOCK_DEBUG=1 will enable memblock_dbg() messages. These
are debug messages built into several functions in memblock that include
information such as the name of the function and the size and start and
end addresses of the memblock region.

---
Changes

v3 -> v4
PATCH 1:
- Update subject line to specifically mention verbosity, which encompasses
  both Makefile arguments
PATCH 2:
- tests/common.h, tests/*_api.c:
    - Define and use macro PREFIX_PUSH(), which runs prefix_push(__func__)
    - Define and use function test_pass_pop(), which runs test_pass(),
      then prefix_pop()
- tests/alloc_*api.c:
    - Remove static on constant func_testing
- tests/basic_api.c:
    - Display "memblock_add" instead of "memblock_add_node" in verbose
      output for memblock_add_node_simple_check()
- tests/alloc_helpers_api.c:
    - Add missing prefix_pop() in memblock_alloc_helpers_checks()
- Commit message:
    - Format function/macro descriptions, reword prefix_push() description,
      and update as needed to reflect the above changes

v2 -> v3
PATCH 1:
- Add Reviewed-by tag

v1 -> v2
PATCH 2:
- tests/common.c:
    - Remove #ifdef VERBOSE around prefixes and related constants
    - Add __maybe_unused to prefixes
    - Move PREFIXES_LEN_MAX, DELIM, and DELIM_LEN so that they are
      immediately after the other constants
    - Add #ifdef VERBOSE around definitions for test_*() and prefix_*()
---

Rebecca Mckeever (4):
  memblock tests: Makefile: add arguments to control verbosity
  memblock tests: add verbose output to memblock tests
  memblock tests: set memblock_debug to enable memblock_dbg() messages
  memblock tests: remove completed TODO items

 tools/testing/memblock/Makefile               |   4 +
 tools/testing/memblock/README                 |  10 +-
 tools/testing/memblock/TODO                   |  14 +-
 tools/testing/memblock/internal.h             |   7 +
 .../testing/memblock/scripts/Makefile.include |  10 +
 tools/testing/memblock/tests/alloc_api.c      | 225 +++++++----
 .../memblock/tests/alloc_helpers_api.c        | 129 ++++---
 tools/testing/memblock/tests/alloc_nid_api.c  | 351 +++++++++++-------
 tools/testing/memblock/tests/basic_api.c      | 337 +++++++++++------
 tools/testing/memblock/tests/common.c         |  58 +++
 tools/testing/memblock/tests/common.h         |  62 ++++
 11 files changed, 851 insertions(+), 356 deletions(-)