fix(split): Use managed queue for input report to avoid deadlock#3110
fix(split): Use managed queue for input report to avoid deadlock#3110tomori-k wants to merge 1 commit intozmkfirmware:mainfrom
Conversation
petejohanson
left a comment
There was a problem hiding this comment.
Code seems very reasonable. I want to test this locally before merging though. Thanks for the PR. See my one note about missing docs.
Thanks!
|
|
||
| if ZMK_INPUT_SPLIT | ||
|
|
||
| config ZMK_INPUT_SPLIT_MSG_QUEUE_SIZE |
There was a problem hiding this comment.
This should get documented in one of our config docs pages please.
There was a problem hiding this comment.
Are you interested in continuing on this? If not, no worries, I can take over the PR and finish up the last testing and docs work. Thanks again.
There was a problem hiding this comment.
Sorry, I missed your comments. I’ll update the PR shortly. 🫡
- Use our service work queue to process input report to avoid deadlock on the system work queue - Add config `CONFIG_ZMK_INPUT_SPLIT_MSG_QUEUE_SIZE`
f060e3f to
b6633bb
Compare
tomori-k
left a comment
There was a problem hiding this comment.
I've added the docs, please review it!
petejohanson
left a comment
There was a problem hiding this comment.
LGTM! Thanks for working on this!
|
Please address the pre-commit failure: https://github.com/zmkfirmware/zmk/actions/runs/23350310818/job/71582545485?pr=3110 |
I found that sometimes peripheral stops working when I use a trackball while holding down a key. When I put a trackball on central, this is not occurred.
As a result of my debug, the issue seems to come from deadlock on system work queue, so we should also use our managed work queue for peripheral's input report.
PR check-list