summaryrefslogtreecommitdiff
path: root/ipc
diff options
context:
space:
mode:
authorBaolin Wang <baolin.wang@linaro.org>2018-04-24 15:06:13 +0300
committerArnd Bergmann <arnd@arndb.de>2019-12-13 13:25:57 +0300
commit07094ae6f9527279de6fd0c59e88f6d0423585b1 (patch)
treef16c82589808423b029add3f3fb426247f416141 /ipc
parentd9e5582c4bb219f3459e39f65410f0e5128fbe91 (diff)
downloadlinux-07094ae6f9527279de6fd0c59e88f6d0423585b1.tar.xz
ALSA: Avoid using timespec for struct snd_timer_tread
The struct snd_timer_tread will use 'timespec' type variables to record timestamp, which is not year 2038 safe on 32bits system. Since the struct snd_timer_tread is passed through read() rather than ioctl(), and the read syscall has no command number that lets us pick between the 32-bit or 64-bit version of this structure. Thus we introduced one new command SNDRV_TIMER_IOCTL_TREAD64 and new struct snd_timer_tread64 replacing timespec with s64 type to handle 64bit time_t. That means we will set tu->tread = TREAD_FORMAT_64BIT when user space has a 64bit time_t, then we will copy to user with struct snd_timer_tread64. Otherwise we will use 32bit time_t variables when copying to user. Moreover this patch replaces timespec type with timespec64 type and related y2038 safe APIs. Signed-off-by: Baolin Wang <baolin.wang@linaro.org> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'ipc')
0 files changed, 0 insertions, 0 deletions