lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210901194549.3999-1-wsa+renesas@sang-engineering.com>
Date:   Wed,  1 Sep 2021 21:45:48 +0200
From:   Wolfram Sang <wsa+renesas@...g-engineering.com>
To:     linux-gpio@...r.kernel.org
Cc:     linux-renesas-soc@...r.kernel.org, linux-kernel@...r.kernel.org,
        Linus Walleij <linus.walleij@...aro.org>,
        Wolfram Sang <wsa+renesas@...g-engineering.com>
Subject: [PATCH 0/1] gpio: add simple logic analyzer using polling

The bravery continues with the next update and first non-RFC version of
the in-kernel logic analyzer based on GPIO polling with local irqs
disabled. It has been been tested locally and remotely. It provided
satisfactory results. Besides the driver, there is also a script which
isolates a CPU to achieve the best possible result. I am aware of the
latency limitations. However, the intention is for debugging only, not
mass production. Especially for remote debugging and to get a first
impression, this has already been useful. Documentation is within the
patch, to get a better idea what this is all about.

Changes since RFC v2:

* took most of the suggestions from Andy's review. For the things I did
  not take, I added comments when appropriate.
* A *lot* of cleanups to the shell script guided by checkers, mainly
  'shellcheck'. This is mainly to ensure that the scripts works on most
  minimal shells. Tested are 'busybox ash', 'dash', and 'bash'.
* a *lot* more error checking and reporting in the script
* I found fatal_signal_pending(), so the sampling process is now
  finally killable \o/
* script sets CPUfreq now to "performance" for the isolated CPU
* the acquisition_delay is now measured before each sampling and not
  only during probe because the probing core is likely not the one
  used for sampling later

Thanks to Andy for many suggestions.

A branch with preparation for the Renesas Salvator-XS (R-Car H3 ES2.0
and M3-N tested) and Falcon boards (R-Car V3U) is here:

git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git renesas/gpio-logic-analyzer-v3

The documentation is also available online on the elinux wiki:
https://elinux.org/Kernel_GPIO_Logic_analyzer

Looking forward to comments and especially further tests with different
use cases than mine.

Thanks and all the best,

   Wolfram


Wolfram Sang (1):
  gpio: add sloppy logic analyzer using polling

 .../dev-tools/gpio-sloppy-logic-analyzer.rst  |  71 ++++
 Documentation/dev-tools/index.rst             |   1 +
 drivers/gpio/Kconfig                          |  17 +
 drivers/gpio/Makefile                         |   1 +
 drivers/gpio/gpio-sloppy-logic-analyzer.c     | 340 ++++++++++++++++++
 tools/gpio/gpio-sloppy-logic-analyzer         | 214 +++++++++++
 6 files changed, 644 insertions(+)
 create mode 100644 Documentation/dev-tools/gpio-sloppy-logic-analyzer.rst
 create mode 100644 drivers/gpio/gpio-sloppy-logic-analyzer.c
 create mode 100755 tools/gpio/gpio-sloppy-logic-analyzer

-- 
2.30.2

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ