Since many structures will use timespec type variables to record time stamp in uapi/asound.h, which are not year 2038 safe on 32bit system. This patchset tries to introduce new structures removing timespec type to compatible native mode and compat mode.
Moreover this patchset also converts the internal structrures to use timespec64 type and related APIs.
Arnd Bergmann (2): ALSA: move snd_pcm_ioctl_sync_ptr_compat into pcm_native.c ALSA: add new 32-bit layout for snd_pcm_mmap_status/control
Baolin Wang (6): ALSA: Replace timespec with timespec64 ALSA: Avoid using timespec for struct snd_timer_status ALSA: Avoid using timespec for struct snd_ctl_elem_value ALSA: Avoid using timespec for struct snd_pcm_status ALSA: Avoid using timespec for struct snd_rawmidi_status ALSA: Avoid using timespec for struct snd_timer_tread
include/sound/pcm.h | 74 +++++++++-- include/sound/timer.h | 4 +- include/uapi/sound/asound.h | 114 ++++++++++++++-- sound/core/pcm.c | 12 +- sound/core/pcm_compat.c | 261 ++++++++----------------------------- sound/core/pcm_lib.c | 38 ++++-- sound/core/pcm_native.c | 224 +++++++++++++++++++++++++++---- sound/core/rawmidi.c | 131 +++++++++++++++---- sound/core/rawmidi_compat.c | 87 ++++--------- sound/core/timer.c | 224 +++++++++++++++++++++++-------- sound/core/timer_compat.c | 59 +-------- sound/pci/hda/hda_controller.c | 10 +- sound/soc/intel/skylake/skl-pcm.c | 4 +- 13 files changed, 766 insertions(+), 476 deletions(-)