From: Umang Jain <umang.jain@ideasonboard.com>
To: linux-staging@lists.linux.dev
Cc: Stefan Wahren <stefan.wahren@i2se.com>,
Dan Carpenter <error27@gmail.com>,
Kieran Bingham <kieran.bingham@ideasonboard.com>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Dave Stevenson <dave.stevenson@raspberrypi.com>,
Phil Elwell <phil@raspberrypi.com>, Greg KH <greg@kroah.com>,
Umang Jain <umang.jain@ideasonboard.com>
Subject: [PATCH v2 0/5] staging: vc04_services: vchiq_core: Stop kthreads on shutdown
Date: Thu, 21 Mar 2024 18:37:32 +0530 [thread overview]
Message-ID: <20240321130737.898154-1-umang.jain@ideasonboard.com> (raw)
The series addresses the following TODO item:
```
* Fix kernel module support
Even the VPU firmware doesn't support a VCHI re-connect, the driver
should properly handle a module unload. This also includes that all
resources must be freed (kthreads, debugfs entries, ...) and global
variables avoided.
```
Patch 1/5 to 3/5 are log cleanups spotted during the reading of the
driver.
Patch 4/5 implements .remove() function vptr so that individual
devices(bcm2835-audio, bcm2835-camera, bcm2835-isp etc.)
can run their cleanup when removed from the vchiq_bus, during their
own module unload.
Patch 5/5 stops the kthreads started by vchiq - on shutdown path.
Rest of the module cleanup (debugfs entries, deregister char device
etc.) is already done as part of vchiq_remove().
Testing on RPi4 for vchiq module unload:
```
uajain@ATX:~$ uname -r
6.8.0-rc1-00128-gab2b09f632fa-dirty
uajain@ATX:~$ dmesg | grep vchiq
[ 21.401426] vchiq: module is from the staging directory, the quality is unknown, you have been warned.
uajain@ATX:~$ sudo modprobe bcm2835_mmal_vchiq
sudo: unable to resolve host ATX: Temporary failure in name resolution
uajain@ATX:~$ dmesg | grep vchiq
[ 21.401426] vchiq: module is from the staging directory, the quality is unknown, you have been warned.
[ 96.388148] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned.
uajain@ATX:~$ lsmod | grep vchiq
bcm2835_mmal_vchiq 40960 0
vchiq 581632 1 bcm2835_mmal_vchiq
uajain@ATX:~$ sudo rmmod bcm2835_mmal_vchiq vchiq
sudo: unable to resolve host ATX: Temporary failure in name resolution
uajain@ATX:~$ lsmod | grep vchiq
uajain@ATX:~$ dmesg | grep vchiq
[ 21.401426] vchiq: module is from the staging directory, the quality is unknown, you have been warned.
[ 96.388148] bcm2835_mmal_vchiq: module is from the staging directory, the quality is unknown, you have been warned.
uajain@ATX:~$
```
changes in v2:
- Drop one of WARN_ON from patch 2/5 (will be handled separately)
- Remove curly braces for single statement in 3/5
- null-check driver->remove in 4/5
Umang Jain (5):
staging: vc04_services: Remove unused function declarations
staging: vc04_services: vchiq_arm: Use appropriate dev_* log helpers
staging: vc04_services: Do not log error on kzalloc()
staging: vc04_services: Implement vchiq_bus .remove
staging: vc04_services: vchiq_core: Stop kthreads on shutdown
drivers/staging/vc04_services/interface/TODO | 7 -------
.../interface/vchiq_arm/vchiq_arm.c | 19 ++++++++++---------
.../interface/vchiq_arm/vchiq_bus.c | 10 ++++++++++
.../interface/vchiq_arm/vchiq_core.c | 10 +++++++---
.../interface/vchiq_arm/vchiq_core.h | 6 ------
5 files changed, 27 insertions(+), 25 deletions(-)
base-commit: 68bb540b1aefded1d58a9f956568d5316643d291
--
2.43.0
next reply other threads:[~2024-03-21 13:07 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-21 13:07 Umang Jain [this message]
2024-03-21 13:07 ` [PATCH v2 1/5] staging: vc04_services: Remove unused function declarations Umang Jain
2024-03-21 13:07 ` [PATCH v2 2/5] staging: vc04_services: vchiq_arm: Use appropriate dev_* log helpers Umang Jain
2024-03-21 13:07 ` [PATCH v2 3/5] staging: vc04_services: Do not log error on kzalloc() Umang Jain
2024-03-21 17:41 ` Kieran Bingham
2024-03-21 13:07 ` [PATCH v2 4/5] staging: vc04_services: Implement vchiq_bus .remove Umang Jain
2024-03-21 17:18 ` Kieran Bingham
2024-03-22 4:21 ` Umang Jain
2024-03-21 13:07 ` [PATCH v2 5/5] staging: vc04_services: vchiq_core: Stop kthreads on shutdown Umang Jain
2024-03-26 21:22 ` Stefan Wahren
2024-03-27 2:52 ` Umang Jain
2024-03-27 18:19 ` Stefan Wahren
2024-03-27 20:00 ` Umang Jain
2024-03-27 20:40 ` Stefan Wahren
2024-03-28 5:18 ` Umang Jain
2024-03-28 10:45 ` Dave Stevenson
2024-03-28 14:53 ` Mark Brown
2024-03-28 15:29 ` Stefan Wahren
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240321130737.898154-1-umang.jain@ideasonboard.com \
--to=umang.jain@ideasonboard.com \
--cc=dave.stevenson@raspberrypi.com \
--cc=error27@gmail.com \
--cc=greg@kroah.com \
--cc=kieran.bingham@ideasonboard.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-staging@lists.linux.dev \
--cc=phil@raspberrypi.com \
--cc=stefan.wahren@i2se.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).