aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/tools/perf/scripts/python/export-to-postgresql.py
diff options
context:
space:
mode:
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>2024-10-18 11:10:14 +0200
committerBartosz Golaszewski <bartosz.golaszewski@linaro.org>2024-10-22 08:59:09 +0200
commit40b7c49950bd56c984b1f6722f865b922879260e (patch)
treed19a18490204a4047eec5e32ddeaaf085af0bef3 /tools/perf/scripts/python/export-to-postgresql.py
parentgpiolib: add a per-gpio_device line state notification workqueue (diff)
downloadwireguard-linux-40b7c49950bd56c984b1f6722f865b922879260e.tar.xz
wireguard-linux-40b7c49950bd56c984b1f6722f865b922879260e.zip
gpio: cdev: put emitting the line state events on a workqueue
In order to allow line state notifications to be emitted from atomic context (for instance: from gpiod_direction_input/output()), we must stop calling any sleeping functions in lineinfo_changed_notify(). To that end let's use the new workqueue. Let's atomically allocate small structures containing the required data and fill it with information immediately upon being notified about the change except for the pinctrl state which will be retrieved later from process context. We can pretty reliably do this as pin functions are typically set once per boot. Let's make sure to bump the reference count of GPIO device and the GPIO character device file descriptor to keep both alive until the event was queued. Reviewed-by: Kent Gibson <warthog618@gmail.com> Link: https://lore.kernel.org/r/20241018-gpio-notify-in-kernel-events-v5-6-c79135e58a1c@linaro.org Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Diffstat (limited to 'tools/perf/scripts/python/export-to-postgresql.py')
0 files changed, 0 insertions, 0 deletions