The new framing mode causes the user space regression, because the alsa-lib code does not initialize the reserved space in the params structure when the device is opened. This change adds SNDRV_RAWMIDI_IOCTL_USER_PVERSION like we do for the PCM interface for the protocol acknowledgment.
Showing the changes to include/uapi (1 of 3 files). Show all
Unified · Split
| @@ -784,6 +784,7 @@ struct snd_rawmidi_status { · 783 unmodified lines | ||
| 784 | 784 | |
| 785 | 785 | #define SNDRV_RAWMIDI_IOCTL_PVERSION _IOR('W', 0x00, int) |
| 786 | 786 | #define SNDRV_RAWMIDI_IOCTL_INFO _IOR('W', 0x01, struct snd_rawmidi_info) |
| 787 | +#define SNDRV_RAWMIDI_IOCTL_USER_PVERSION _IOW('W', 0x02, int) | |
| 787 | 788 | #define SNDRV_RAWMIDI_IOCTL_PARAMS _IOWR('W', 0x10, struct snd_rawmidi_params) |
| 788 | 789 | #define SNDRV_RAWMIDI_IOCTL_STATUS _IOWR('W', 0x20, struct snd_rawmidi_status) |
| 789 | 790 | #define SNDRV_RAWMIDI_IOCTL_DROP _IOW('W', 0x30, int) |