[RFC PATCH v2 0/3] Add testable code specifications

Gabriele Paoloni posted 3 patches 4 hours ago
.../doc-guide/code-specifications.rst         | 208 +++++++
Documentation/doc-guide/index.rst             |   1 +
drivers/char/mem.c                            | 231 ++++++-
tools/testing/selftests/Makefile              |   1 +
tools/testing/selftests/devmem/Makefile       |  13 +
tools/testing/selftests/devmem/debug.c        |  25 +
tools/testing/selftests/devmem/debug.h        |  14 +
tools/testing/selftests/devmem/devmem.c       | 200 ++++++
tools/testing/selftests/devmem/ram_map.c      | 250 ++++++++
tools/testing/selftests/devmem/ram_map.h      |  38 ++
tools/testing/selftests/devmem/secret.c       |  46 ++
tools/testing/selftests/devmem/secret.h       |  13 +
tools/testing/selftests/devmem/tests.c        | 569 ++++++++++++++++++
tools/testing/selftests/devmem/tests.h        |  45 ++
tools/testing/selftests/devmem/utils.c        | 379 ++++++++++++
tools/testing/selftests/devmem/utils.h        | 119 ++++
16 files changed, 2146 insertions(+), 6 deletions(-)
create mode 100644 Documentation/doc-guide/code-specifications.rst
create mode 100644 tools/testing/selftests/devmem/Makefile
create mode 100644 tools/testing/selftests/devmem/debug.c
create mode 100644 tools/testing/selftests/devmem/debug.h
create mode 100644 tools/testing/selftests/devmem/devmem.c
create mode 100644 tools/testing/selftests/devmem/ram_map.c
create mode 100644 tools/testing/selftests/devmem/ram_map.h
create mode 100644 tools/testing/selftests/devmem/secret.c
create mode 100644 tools/testing/selftests/devmem/secret.h
create mode 100644 tools/testing/selftests/devmem/tests.c
create mode 100644 tools/testing/selftests/devmem/tests.h
create mode 100644 tools/testing/selftests/devmem/utils.c
create mode 100644 tools/testing/selftests/devmem/utils.h
[RFC PATCH v2 0/3] Add testable code specifications
Posted by Gabriele Paoloni 4 hours ago
[1] was an initial proposal defining testable code specifications for
some functions in /drivers/char/mem.c.
However a Guideline to write such specifications was missing and test
cases tracing to such specifications were missing.
This patchset represents a next step and is organised as follows:
- patch 1/3 contains the Guideline for writing code specifications
- patch 2/3 contains examples of code specfications defined for some
  functions of drivers/char/mem.c
- patch 3/3 contains examples of selftests that map to some code
  specifications of patch 2/3

[1] https://lore.kernel.org/all/20250821170419.70668-1-gpaoloni@redhat.com/
---
Changes from v1:
1) Added a Guideline to write code specifications in the Linux Kernel
Documentation
2) Addressed Greg KH comments in /drivers/char/mem.c
3) Added example of test cases mapping to the code specifications in
/drivers/char/mem.c
---
Alessandro Carminati (1):
  selftests/devmem: initial testset

Gabriele Paoloni (2):
  Documentation: add guidelines for writing testable code specifications
  /dev/mem: Add initial documentation of memory_open() and mem_fops

 .../doc-guide/code-specifications.rst         | 208 +++++++
 Documentation/doc-guide/index.rst             |   1 +
 drivers/char/mem.c                            | 231 ++++++-
 tools/testing/selftests/Makefile              |   1 +
 tools/testing/selftests/devmem/Makefile       |  13 +
 tools/testing/selftests/devmem/debug.c        |  25 +
 tools/testing/selftests/devmem/debug.h        |  14 +
 tools/testing/selftests/devmem/devmem.c       | 200 ++++++
 tools/testing/selftests/devmem/ram_map.c      | 250 ++++++++
 tools/testing/selftests/devmem/ram_map.h      |  38 ++
 tools/testing/selftests/devmem/secret.c       |  46 ++
 tools/testing/selftests/devmem/secret.h       |  13 +
 tools/testing/selftests/devmem/tests.c        | 569 ++++++++++++++++++
 tools/testing/selftests/devmem/tests.h        |  45 ++
 tools/testing/selftests/devmem/utils.c        | 379 ++++++++++++
 tools/testing/selftests/devmem/utils.h        | 119 ++++
 16 files changed, 2146 insertions(+), 6 deletions(-)
 create mode 100644 Documentation/doc-guide/code-specifications.rst
 create mode 100644 tools/testing/selftests/devmem/Makefile
 create mode 100644 tools/testing/selftests/devmem/debug.c
 create mode 100644 tools/testing/selftests/devmem/debug.h
 create mode 100644 tools/testing/selftests/devmem/devmem.c
 create mode 100644 tools/testing/selftests/devmem/ram_map.c
 create mode 100644 tools/testing/selftests/devmem/ram_map.h
 create mode 100644 tools/testing/selftests/devmem/secret.c
 create mode 100644 tools/testing/selftests/devmem/secret.h
 create mode 100644 tools/testing/selftests/devmem/tests.c
 create mode 100644 tools/testing/selftests/devmem/tests.h
 create mode 100644 tools/testing/selftests/devmem/utils.c
 create mode 100644 tools/testing/selftests/devmem/utils.h

-- 
2.48.1