On Jun 27 2017 20:58, Takashi Iwai wrote:
On Tue, 27 Jun 2017 13:43:43 +0200, Takashi Sakamoto wrote:
Hi,
On Jun 27 2017 19:29, Takashi Iwai wrote:
Hi,
this is a revised patchset that is applied on top of the current for-next branch, in order to optimize the appl_ptr sync on x86-64, adapting the alsa-lib side change by Sakamoto-san's patchset.
Basically it adds a new ioctl for receiving the supported PCM protocol version from user-space side, and change the mmap code to allow only disabling the PCM status record depending on the supported protocol version. The former patch is identical with the previous version, only the latter one differs.
The corresponding alsa-lib patch will follow.
thanks,
Takashi
===
Takashi Iwai (2): ALSA: pcm: Add an ioctl to specify the supported protocol version ALSA: pcm: Disable only control mmap for explicit appl_ptr sync
include/sound/pcm.h | 1 + include/uapi/sound/asound.h | 3 ++- sound/core/pcm_compat.c | 1 + sound/core/pcm_native.c | 29 ++++++++++++++++++++++++----- 4 files changed, 28 insertions(+), 6 deletions(-)
Reviewed-by: Takashi Sakamoto o-takashi@sakamocchi.jp
I note that the idea of USER_PVERSION ioctl is itself worth for the other interfaces/protocols such as control. In the interfaces/protocols, many structures have reserved members. As Iwai-san described in the first patch, when changing them to utilize these reserved members, this idea is a solution to balance compatibility and extensibility.
OK, let's go with this. I'll merge this and also the alsa-lib patchsets.
Good work, Takashi ;)
I have rest of my work for alsa-lib to optimize SYNC_PTR ioctl. Within a few days, I'll post it.
Thanks
Takashi Sakamoto