media: Fix locking issues in rc core
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v5 Latest20 patches 4 repliesIn review
- v419 patches 6 repliesSuperseded
- v317 patches 0 repliesSuperseded
Earlier versions · 2
| Version | Posted | Patches | Replies | Status |
|---|---|---|---|---|
| v2 | 6 patches | 0 replies | Superseded | |
| v1 | 4 patches | 0 replies | Superseded |
Changes in v5 from the cover letter
- Split keymap locking into two commits: one for krealloc rewrite and one for the locking
- Fixed meson-ir-tx: Validate carrier and duty_cycle to actually fix divide by zero
- Improved commit messages
- imon calls usb_driver_claim_interface() before using it
- Ensure lirc_unregister() is always called with registered = false else any polling fds never get triggered
Patches in v5 No applies recorded yet
Reviews trailers per patch
1 of 20 patches has a Reviewed-by or Acked-by.
| Patch | Hans Verkuil |
|---|---|
| 1/20 | |
| 2/20 | |
| 3/20 | |
| 4/20 | A-b |
| 5/20 | |
| 6/20 | |
| 7/20 | |
| 8/20 | |
| 9/20 | |
| 10/20 | |
| 11/20 | |
| 12/20 | |
| 13/20 | |
| 14/20 | |
| 15/20 | |
| 16/20 | |
| 17/20 | |
| 18/20 | |
| 19/20 | |
| 20/20 |
Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.
Cover letter [PATCH v5 00/20] media: Fix locking issues in rc core
Fix issues found by Sashiko and claude, and other cleanups.
Changes since v4:
- Split keymap locking into two commits: one for krealloc rewrite and one for the locking
- Fixed meson-ir-tx: Validate carrier and duty_cycle to actually fix divide by zero
- Improved commit messages
- imon calls usb_driver_claim_interface() before using it
- Ensure lirc_unregister() is always called with registered = false else any polling fds never get triggered
Changes since v3:
- serial_ir: Fix race condition where timer can be re-armed This introduced a new race condition; reworked
- rc: After rc_unregister_device() timers can be re-armed Sashiko suggested a simpler implementation with timer_shutdown_sync()
- Add meson-ir-tx: Validate carrier and duty_cycle
- Add ir_toy: Validate the maximum tx carrier
Changes since v2:
- Cosmetic changes in: Add missing locking for keymap
- Patch 7 to 17 are new issues found
Changes since v1:
- Fix issue where input device was still leaked
- Add: Fix race between bpf(BPG_PROG_ATTACH) and device unregister
- Add: Fix inconsistent locking of keylock
Sean Young (20):
media: rc: Ensure registered is cleared in error path
media: rc: Ensure that rc_unregister_device() does not free input
device
media: rc: Fix ABBA deadlock by making locks more fine grained
media: rc: Replace open coded krealloc() for keymap
media: rc: Add missing locking for keymap
media: rc: Fix race between bpf(BPG_PROG_ATTACH) and device unregister
media: rc: mce_kbd: Fix inconsistent locking of keylock
media: ene_ir: Ensure teardown is done in the correct order
media: rc: Use binary search for adding or updating a scancode
media: rc: imon: Bind both interfaces via usb_driver_claim_interface()
media: ir_toy: Remove unused struct field
media: nuvoton-cir: Remove unused struct field
media: ite-cir: Removed unused struct field
media: fintek-cir: Remove unused fields
media: mceusb: Remove unused field
media: serial_ir: Fix race condition where timer can be re-armed
media: rc: After rc_unregister_device() timers can be re-armed
media: rc: Validate carrier range in LIRC_SET_REC_CARRIER ioctl
media: ir_toy: Validate the maximum tx carrier
media: meson-ir-tx: Prevent divide by zero in
meson_irtx_prepare_pulse()
drivers/media/rc/ene_ir.c | 4 +- drivers/media/rc/fintek-cir.c | 13 -- drivers/media/rc/fintek-cir.h | 22 --- drivers/media/rc/imon.c | 164 ++++++++++------------- drivers/media/rc/ir-mce_kbd-decoder.c | 5 +- drivers/media/rc/ir_toy.c | 4 +- drivers/media/rc/ite-cir.c | 1 - drivers/media/rc/ite-cir.h | 1 - drivers/media/rc/lirc_dev.c | 2 + drivers/media/rc/mceusb.c | 1 - drivers/media/rc/meson-ir-tx.c | 3 + drivers/media/rc/nuvoton-cir.h | 3 - drivers/media/rc/rc-ir-raw.c | 39 +++--- drivers/media/rc/rc-loopback.c | 5 - drivers/media/rc/rc-main.c | 186 ++++++++++++++++---------- drivers/media/rc/serial_ir.c | 2 +- include/media/rc-map.h | 2 - 17 files changed, 222 insertions(+), 235 deletions(-)
Signature · 1 line
2.55.0