[PATCH v10 0/3] net: can: isotp-fixes
Oliver Hartkopp via B4 Relay <[email protected]>
| Newsgroups | org.kernel.vger.linux-can,org.kernel.feeds.b4-sent |
|---|---|
| Message-ID | <[email protected]> |
As sashiko-bot was not able to check the second patch this bundle is re-posted with b4 preparation. Fixed the remarks reported by sashiko-bot of V9 patchset. Signed-off-by: Oliver Hartkopp <[email protected]> --- Changes in v10: - patch 3: add so->rx_lock support to sendmsg() and remove the former cmpxchg() concept to have so->tx.state's of relevant path's under lock - formerly patch 4: removed as separate patch: integrated in patch 3 - Link to v9: https://patch.msgid.link/[email protected] Changes in v9: - patch 3: fix two reported issues and explain why issue 3&4 (-ECOMM sk_err handling) will not be changed - Link to v8: https://patch.msgid.link/[email protected] Changes in v8: - patch 3: properly terminate the former transmission before starting - patch 4: formerly patch 5 as the former patch 4 is squashed into patch 3 - Link to v7: https://patch.msgid.link/[email protected] Changes in v7: - patch 3: add helper so->tx_gen to monitor new ISOTP_SENDING attempts - patch 4: prevent missasignment of sk_err report with new so->tx_gen - Link to v6: https://patch.msgid.link/[email protected] Changes in v6: - patch 2: check for rx state and tx state to be IDLE in isotp_bind() (sashiko-bot) - patch 3: double check rx/tx states after all hrtimer_cancel() calls (sashiko-bot) move ISOTP_IDLE in err_event_drop for the same reason - patch 4: use READ_ONCE() to prevent compiler load tearing as remarked by sashiko-bot - Link to v5: https://patch.msgid.link/[email protected] Changes in v5: - patch 3: new: state change re-check after hrtimer_cancel() - patch 4: new: handle state transistion with cmpxchg() - Link to v4: https://patch.msgid.link/[email protected] Changes in v4: - patch 2: use a simpler method to reject a re-binding that can be implemented inside the lock: No waitqueue waiting just exit. - Link to v3: https://patch.msgid.link/[email protected] Changes in v3: - patch 2: go back to initial idea without hard resetting the state machine and timers but let these come to a graceful end. Even a new bind() at netdev shutdown now leads to this graceful statemachine shutdown via the wait queue. - Link to v2: https://patch.msgid.link/[email protected] Changes in v2: - patch 2: shutdown state machine to fix sashiko-bot complains Link: https://lore.kernel.org/linux-can/[email protected]/ - Link to v1: https://patch.msgid.link/[email protected] --- Oliver Hartkopp (3): can: isotp: use unconditional synchronize_rcu() in isotp_release() can: isotp: fix use-after-free race with concurrent NETDEV_UNREGISTER can: isotp: serialize TX state transitions under so->rx_lock net/can/isotp.c | 298 ++++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 227 insertions(+), 71 deletions(-) --- base-commit: dd3210c47e8d3ac6b4e9141fc68acc03b38c0ba3 change-id: 20260710-isotp-fixes-ead7480d67bf Best regards, -- Oliver Hartkopp <[email protected]>