• Baolin Wang's avatar
    ALSA: Avoid using timespec for struct snd_rawmidi_status · d9e5582c
    Baolin Wang authored
    The struct snd_rawmidi_status will use 'timespec' type variables to record
    timestamp, which is not year 2038 safe on 32bits system.
    
    Thus we introduced 'struct snd_rawmidi_status32' and 'struct snd_rawmidi_status64'
    to handle 32bit time_t and 64bit time_t in native mode, which replace
    timespec with s64 type.
    
    In compat mode, we renamed or introduced new structures to handle 32bit/64bit
    time_t in compatible mode. The 'struct snd_rawmidi_status32' and
    snd_rawmidi_ioctl_status32() are used to handle 32bit time_t in compat mode.
    'struct compat_snd_rawmidi_status64' is used to handle 64bit time_t.
    
    When glibc changes time_t to 64-bit, any recompiled program will issue ioctl
    commands that the kernel does not understand without this patch.
    Signed-off-by: default avatarBaolin Wang <baolin.wang@linaro.org>
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    d9e5582c
asound.h 46.4 KB