ALSA: core: fix 64-bit SNDRV_PCM_IOCTL_STATUS ABI breakage
authorClemens Ladisch <clemens@ladisch.de>
Sat, 27 Oct 2012 19:55:27 +0000 (21:55 +0200)
committerTakashi Iwai <tiwai@suse.de>
Sun, 28 Oct 2012 08:52:37 +0000 (09:52 +0100)
commit9c7066aef4a5eb8e4063de28f06c508bf6f2963a
tree845a0f48868cf4b2917afe6582b1c4b15080d80b
parent7dd7a2fd7eb147a610506f6c6f871c03908fc58a
ALSA: core: fix 64-bit SNDRV_PCM_IOCTL_STATUS ABI breakage

Commit 4eeaaeaea (ALSA: core: add hooks for audio timestamps) added the
new audio_tstamp field to struct snd_pcm_status.  However, struct
timespec requires 64-bit alignment, so the 64-bit compiler would insert
32 bits of padding before this field, which broke SNDRV_PCM_IOCTL_STATUS
with error messages like this:

  kernel: unknown ioctl = 0x80984120

To solve this, insert the padding explicitly so that it can be taken
into account when calculating the ABI structure size.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
include/uapi/sound/asound.h
sound/core/pcm_compat.c