Hi Greg,
On Sat, May 23, 2020 at 08:10:33AM +0200, Greg KH wrote:
On Fri, May 22, 2020 at 07:43:08PM +0200, Oscar Carter wrote:
Hi,
On Wed, May 20, 2020 at 03:16:24PM +0900, Takashi Sakamoto wrote:
Hi,
I'm an author of ALSA firewire stack and thanks for the patch. I agree with your intention to remove the cast of function callback toward CFI build.
Practically, the isochronous context with FW_ISO_CONTEXT_RECEIVE_MULTICHANNEL is never used by in-kernel drivers. Here, I propose to leave current kernel API (fw_iso_context_create() with fw_iso_callback_t) as is.
If it's not used by anyone, why is it still there? Can't we just delete it?
For this patchset, I followed to the theory to keep backward compatibility when adding any change, and it's what I'd like to discuss.
The isoc context of multichannel mode is also available for userspace applications, and libhinoko[1] uses it. In a point of backward compatibility for userspace, we can't delete the mode.
(Practically, the mode is useful for the purpose of packet sniffing in bus and helpful to my work for development of ALSA firewire stack[2].)
On the other hand, there's no unit driver to use the mode in upstream kernel. It's unlikely to use the mode for unit driver since the mode is not specific to unit functionality. In my opinion, it's reasonable to lose backward compatibility slightly by hiding the multichannel mode from in-kernel unit driver.
I'll post v2 patchset later and I'd like you to merge them if no objections from the others for the loss of backward compatibility.
[1] https://github.com/takaswie/libhinoko [2] https://mailman.alsa-project.org/pipermail/alsa-devel/2019-April/147862.html
Regards
Takashi Sakamoto