Hi,
Oscar Carter works for Control Flow Integrity build. Any cast of function callback is inconvenient for the work. Unfortunately, current code of firewire-core driver includes the cast[1] and Oscar posted some patches to remove it[2]. The patch is itself good. However, it includes changes existent kernel API and all of drivers as user of the API get affects from the change.
This patchset is an alternative idea to add a new kernel API specific for multichannel isoc context. The existent kernel API and drivers is left as is.
Practically, no in-kernel drivers use the additional API. Although the API is exported in the patchset, it's better to discuss about unexporting the API.
[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/driv... [2] https://lore.kernel.org/lkml/20200519173425.4724-1-oscar.carter@gmx.com/
Regards
Takashi Sakamoto (2): firewire-core: add kernel API to construct multichannel isoc context firewire-core: obsolete cast of function callback
drivers/firewire/core-cdev.c | 44 +++++++++++++++++++----------------- drivers/firewire/core-iso.c | 17 ++++++++++++++ include/linux/firewire.h | 3 +++ 3 files changed, 43 insertions(+), 21 deletions(-)