linux-next.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* linux-next: build failure after merge of the sound tree
@ 2010-09-23  2:44 Stephen Rothwell
  2010-09-23  6:04 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2010-09-23  2:44 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: linux-next, linux-kernel, Mark Brown, Liam Girdwood

[-- Attachment #1: Type: text/plain, Size: 776 bytes --]

Hi Takashi,

After merging the sound tree, today's linux-next build (x86_64
allmodconfig) failed like this:

sound/soc/soc-cache.c: In function 'snd_soc_8_16_write':
sound/soc/soc-cache.c:207: error: 'struct snd_soc_codec' has no member named 'reg_cache_size'

Caused by commit 0077ca0b5c986477e33451b797b6e7dc92a8bbc0 ("ASoC: Fix
multi-componentism") which looks like it was fixing something that didn't
need fixing (or maybe fixed it incorrectly)?  This commit is not in the
sound-asoc tree (but the commit it purports to be fixing is in both the
sound and sound-asoc trees) ...

I have used the version of the sound tree from next-20100921 for today.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2025-06-16  3:01 Stephen Rothwell
  2025-06-16  5:29 ` Christophe Leroy
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2025-06-16  3:01 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Christophe Leroy, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 47556 bytes --]

Hi all,

After merging the sound tree, today's linux-next build (x86_64
allmodconfig) failed like this:

In file included from include/linux/uaccess.h:12,
                 from include/linux/sched/task.h:13,
                 from include/linux/sched/signal.h:9,
                 from include/linux/rcuwait.h:6,
                 from include/linux/percpu-rwsem.h:7,
                 from include/linux/fs.h:34,
                 from include/linux/compat.h:17,
                 from sound/core/pcm_native.c:7:
sound/core/pcm_compat.c: In function 'snd_pcm_ioctl_sync_ptr_x32':
sound/core/pcm_native.c:3081:60: error: 'struct snd_pcm_mmap_status_x32' has no member named 'tstamp'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |                                                            ^
arch/x86/include/asm/uaccess.h:234:22: note: in definition of macro '__put_user_size'
  234 |         __typeof__(*(ptr)) __x = (x); /* eval x once */                 \
      |                      ^~~
sound/core/pcm_native.c:3081:9: note: in expansion of macro 'unsafe_put_user'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3081:60: error: 'struct snd_pcm_mmap_status_x32' has no member named 'tstamp'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |                                                            ^
arch/x86/include/asm/uaccess.h:234:35: note: in definition of macro '__put_user_size'
  234 |         __typeof__(*(ptr)) __x = (x); /* eval x once */                 \
      |                                   ^
sound/core/pcm_native.c:3081:9: note: in expansion of macro 'unsafe_put_user'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3081:60: error: 'struct snd_pcm_mmap_status_x32' has no member named 'tstamp'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |                                                            ^
arch/x86/include/asm/uaccess.h:235:20: note: in definition of macro '__put_user_size'
  235 |         __typeof__(ptr) __ptr = (ptr); /* eval ptr once */              \
      |                    ^~~
sound/core/pcm_native.c:3081:9: note: in expansion of macro 'unsafe_put_user'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3081:60: error: 'struct snd_pcm_mmap_status_x32' has no member named 'tstamp'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |                                                            ^
arch/x86/include/asm/uaccess.h:235:34: note: in definition of macro '__put_user_size'
  235 |         __typeof__(ptr) __ptr = (ptr); /* eval ptr once */              \
      |                                  ^~~
sound/core/pcm_native.c:3081:9: note: in expansion of macro 'unsafe_put_user'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3081:60: error: 'struct snd_pcm_mmap_status_x32' has no member named 'tstamp'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |                                                            ^
arch/x86/include/asm/uaccess.h:237:17: note: in definition of macro '__put_user_size'
  237 |         switch (size) {                                                 \
      |                 ^~~~
sound/core/pcm_native.c:3081:9: note: in expansion of macro 'unsafe_put_user'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:239:17: note: in expansion of macro '__put_user_goto'
  239 |                 __put_user_goto(__x, __ptr, "b", "iq", label);          \
      |                 ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3081:9: note: in expansion of macro 'unsafe_put_user'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:242:17: note: in expansion of macro '__put_user_goto'
  242 |                 __put_user_goto(__x, __ptr, "w", "ir", label);          \
      |                 ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3081:9: note: in expansion of macro 'unsafe_put_user'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:245:17: note: in expansion of macro '__put_user_goto'
  245 |                 __put_user_goto(__x, __ptr, "l", "ir", label);          \
      |                 ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3081:9: note: in expansion of macro 'unsafe_put_user'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:146:9: note: in expansion of macro '__put_user_goto'
  146 |         __put_user_goto(x, ptr, "q", "er", label)
      |         ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:248:17: note: in expansion of macro '__put_user_goto_u64'
  248 |                 __put_user_goto_u64(__x, __ptr, label);                 \
      |                 ^~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3081:9: note: in expansion of macro 'unsafe_put_user'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/asm-generic/bitops/instrumented-atomic.h:14,
                 from arch/x86/include/asm/bitops.h:429,
                 from include/linux/bitops.h:67,
                 from include/linux/kernel.h:23,
                 from include/linux/cpumask.h:11,
                 from arch/x86/include/asm/paravirt.h:21,
                 from arch/x86/include/asm/cpuid/api.h:57,
                 from arch/x86/include/asm/processor.h:19,
                 from arch/x86/include/asm/timex.h:5,
                 from include/linux/timex.h:67,
                 from include/linux/time32.h:13,
                 from include/linux/time.h:60,
                 from include/linux/compat.h:10:
arch/x86/include/asm/uaccess.h:253:34: error: passing argument 1 of 'kmsan_copy_to_user' makes pointer from integer without a cast [-Wint-conversion]
  253 |         instrument_put_user(__x, __ptr, size);                          \
      |                                  ^~~~~
      |                                  |
      |                                  int
include/linux/instrumented.h:213:28: note: in definition of macro 'instrument_put_user'
  213 |         kmsan_copy_to_user(ptr, &from, sizeof(from), 0);        \
      |                            ^~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3081:9: note: in expansion of macro 'unsafe_put_user'
 3081 |         unsafe_put_user(__s.tstamp.tv_sec, &__src->s.status.tstamp.tv_sec, failed);             \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/instrumented.h:13:
include/linux/kmsan-checks.h:87:52: note: expected 'void *' but argument is of type 'int'
   87 | static inline void kmsan_copy_to_user(void __user *to, const void *from,
      |                                       ~~~~~~~~~~~~~^~
sound/core/pcm_native.c:3082:61: error: 'struct snd_pcm_mmap_status_x32' has no member named 'tstamp'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |                                                             ^
arch/x86/include/asm/uaccess.h:234:22: note: in definition of macro '__put_user_size'
  234 |         __typeof__(*(ptr)) __x = (x); /* eval x once */                 \
      |                      ^~~
sound/core/pcm_native.c:3082:9: note: in expansion of macro 'unsafe_put_user'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3082:61: error: 'struct snd_pcm_mmap_status_x32' has no member named 'tstamp'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |                                                             ^
arch/x86/include/asm/uaccess.h:234:35: note: in definition of macro '__put_user_size'
  234 |         __typeof__(*(ptr)) __x = (x); /* eval x once */                 \
      |                                   ^
sound/core/pcm_native.c:3082:9: note: in expansion of macro 'unsafe_put_user'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3082:61: error: 'struct snd_pcm_mmap_status_x32' has no member named 'tstamp'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |                                                             ^
arch/x86/include/asm/uaccess.h:235:20: note: in definition of macro '__put_user_size'
  235 |         __typeof__(ptr) __ptr = (ptr); /* eval ptr once */              \
      |                    ^~~
sound/core/pcm_native.c:3082:9: note: in expansion of macro 'unsafe_put_user'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3082:61: error: 'struct snd_pcm_mmap_status_x32' has no member named 'tstamp'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |                                                             ^
arch/x86/include/asm/uaccess.h:235:34: note: in definition of macro '__put_user_size'
  235 |         __typeof__(ptr) __ptr = (ptr); /* eval ptr once */              \
      |                                  ^~~
sound/core/pcm_native.c:3082:9: note: in expansion of macro 'unsafe_put_user'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3082:61: error: 'struct snd_pcm_mmap_status_x32' has no member named 'tstamp'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |                                                             ^
arch/x86/include/asm/uaccess.h:237:17: note: in definition of macro '__put_user_size'
  237 |         switch (size) {                                                 \
      |                 ^~~~
sound/core/pcm_native.c:3082:9: note: in expansion of macro 'unsafe_put_user'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:239:17: note: in expansion of macro '__put_user_goto'
  239 |                 __put_user_goto(__x, __ptr, "b", "iq", label);          \
      |                 ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3082:9: note: in expansion of macro 'unsafe_put_user'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:242:17: note: in expansion of macro '__put_user_goto'
  242 |                 __put_user_goto(__x, __ptr, "w", "ir", label);          \
      |                 ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3082:9: note: in expansion of macro 'unsafe_put_user'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:245:17: note: in expansion of macro '__put_user_goto'
  245 |                 __put_user_goto(__x, __ptr, "l", "ir", label);          \
      |                 ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3082:9: note: in expansion of macro 'unsafe_put_user'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:146:9: note: in expansion of macro '__put_user_goto'
  146 |         __put_user_goto(x, ptr, "q", "er", label)
      |         ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:248:17: note: in expansion of macro '__put_user_goto_u64'
  248 |                 __put_user_goto_u64(__x, __ptr, label);                 \
      |                 ^~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3082:9: note: in expansion of macro 'unsafe_put_user'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:253:34: error: passing argument 1 of 'kmsan_copy_to_user' makes pointer from integer without a cast [-Wint-conversion]
  253 |         instrument_put_user(__x, __ptr, size);                          \
      |                                  ^~~~~
      |                                  |
      |                                  int
include/linux/instrumented.h:213:28: note: in definition of macro 'instrument_put_user'
  213 |         kmsan_copy_to_user(ptr, &from, sizeof(from), 0);        \
      |                            ^~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3082:9: note: in expansion of macro 'unsafe_put_user'
 3082 |         unsafe_put_user(__s.tstamp.tv_nsec, &__src->s.status.tstamp.tv_nsec, failed);           \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/kmsan-checks.h:87:52: note: expected 'void *' but argument is of type 'int'
   87 | static inline void kmsan_copy_to_user(void __user *to, const void *from,
      |                                       ~~~~~~~~~~~~~^~
sound/core/pcm_native.c:3084:67: error: 'struct snd_pcm_mmap_status_x32' has no member named 'audio_tstamp'; did you mean 'audio_tstamp_sec'?
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |                                                                   ^~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:234:22: note: in definition of macro '__put_user_size'
  234 |         __typeof__(*(ptr)) __x = (x); /* eval x once */                 \
      |                      ^~~
sound/core/pcm_native.c:3084:9: note: in expansion of macro 'unsafe_put_user'
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3084:67: error: 'struct snd_pcm_mmap_status_x32' has no member named 'audio_tstamp'; did you mean 'audio_tstamp_sec'?
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |                                                                   ^~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:234:35: note: in definition of macro '__put_user_size'
  234 |         __typeof__(*(ptr)) __x = (x); /* eval x once */                 \
      |                                   ^
sound/core/pcm_native.c:3084:9: note: in expansion of macro 'unsafe_put_user'
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3084:67: error: 'struct snd_pcm_mmap_status_x32' has no member named 'audio_tstamp'; did you mean 'audio_tstamp_sec'?
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |                                                                   ^~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:235:20: note: in definition of macro '__put_user_size'
  235 |         __typeof__(ptr) __ptr = (ptr); /* eval ptr once */              \
      |                    ^~~
sound/core/pcm_native.c:3084:9: note: in expansion of macro 'unsafe_put_user'
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3084:67: error: 'struct snd_pcm_mmap_status_x32' has no member named 'audio_tstamp'; did you mean 'audio_tstamp_sec'?
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |                                                                   ^~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:235:34: note: in definition of macro '__put_user_size'
  235 |         __typeof__(ptr) __ptr = (ptr); /* eval ptr once */              \
      |                                  ^~~
sound/core/pcm_native.c:3084:9: note: in expansion of macro 'unsafe_put_user'
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3084:67: error: 'struct snd_pcm_mmap_status_x32' has no member named 'audio_tstamp'; did you mean 'audio_tstamp_sec'?
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |                                                                   ^~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:237:17: note: in definition of macro '__put_user_size'
  237 |         switch (size) {                                                 \
      |                 ^~~~
sound/core/pcm_native.c:3084:9: note: in expansion of macro 'unsafe_put_user'
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:239:17: note: in expansion of macro '__put_user_goto'
  239 |                 __put_user_goto(__x, __ptr, "b", "iq", label);          \
      |                 ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3084:9: note: in expansion of macro 'unsafe_put_user'
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:242:17: note: in expansion of macro '__put_user_goto'
  242 |                 __put_user_goto(__x, __ptr, "w", "ir", label);          \
      |                 ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3084:9: note: in expansion of macro 'unsafe_put_user'
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:245:17: note: in expansion of macro '__put_user_goto'
  245 |                 __put_user_goto(__x, __ptr, "l", "ir", label);          \
      |                 ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3084:9: note: in expansion of macro 'unsafe_put_user'
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:146:9: note: in expansion of macro '__put_user_goto'
  146 |         __put_user_goto(x, ptr, "q", "er", label)
      |         ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:248:17: note: in expansion of macro '__put_user_goto_u64'
  248 |                 __put_user_goto_u64(__x, __ptr, label);                 \
      |                 ^~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3084:9: note: in expansion of macro 'unsafe_put_user'
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:253:34: error: passing argument 1 of 'kmsan_copy_to_user' makes pointer from integer without a cast [-Wint-conversion]
  253 |         instrument_put_user(__x, __ptr, size);                          \
      |                                  ^~~~~
      |                                  |
      |                                  int
include/linux/instrumented.h:213:28: note: in definition of macro 'instrument_put_user'
  213 |         kmsan_copy_to_user(ptr, &from, sizeof(from), 0);        \
      |                            ^~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3084:9: note: in expansion of macro 'unsafe_put_user'
 3084 |         unsafe_put_user(__s.audio_tstamp.tv_sec, &__src->s.status.audio_tstamp.tv_sec, failed); \
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/kmsan-checks.h:87:52: note: expected 'void *' but argument is of type 'int'
   87 | static inline void kmsan_copy_to_user(void __user *to, const void *from,
      |                                       ~~~~~~~~~~~~~^~
sound/core/pcm_native.c:3085:68: error: 'struct snd_pcm_mmap_status_x32' has no member named 'audio_tstamp'; did you mean 'audio_tstamp_sec'?
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |                                                                    ^~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:234:22: note: in definition of macro '__put_user_size'
  234 |         __typeof__(*(ptr)) __x = (x); /* eval x once */                 \
      |                      ^~~
sound/core/pcm_native.c:3085:9: note: in expansion of macro 'unsafe_put_user'
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3085:68: error: 'struct snd_pcm_mmap_status_x32' has no member named 'audio_tstamp'; did you mean 'audio_tstamp_sec'?
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |                                                                    ^~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:234:35: note: in definition of macro '__put_user_size'
  234 |         __typeof__(*(ptr)) __x = (x); /* eval x once */                 \
      |                                   ^
sound/core/pcm_native.c:3085:9: note: in expansion of macro 'unsafe_put_user'
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3085:68: error: 'struct snd_pcm_mmap_status_x32' has no member named 'audio_tstamp'; did you mean 'audio_tstamp_sec'?
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |                                                                    ^~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:235:20: note: in definition of macro '__put_user_size'
  235 |         __typeof__(ptr) __ptr = (ptr); /* eval ptr once */              \
      |                    ^~~
sound/core/pcm_native.c:3085:9: note: in expansion of macro 'unsafe_put_user'
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3085:68: error: 'struct snd_pcm_mmap_status_x32' has no member named 'audio_tstamp'; did you mean 'audio_tstamp_sec'?
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |                                                                    ^~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:235:34: note: in definition of macro '__put_user_size'
  235 |         __typeof__(ptr) __ptr = (ptr); /* eval ptr once */              \
      |                                  ^~~
sound/core/pcm_native.c:3085:9: note: in expansion of macro 'unsafe_put_user'
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
sound/core/pcm_native.c:3085:68: error: 'struct snd_pcm_mmap_status_x32' has no member named 'audio_tstamp'; did you mean 'audio_tstamp_sec'?
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |                                                                    ^~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:237:17: note: in definition of macro '__put_user_size'
  237 |         switch (size) {                                                 \
      |                 ^~~~
sound/core/pcm_native.c:3085:9: note: in expansion of macro 'unsafe_put_user'
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:239:17: note: in expansion of macro '__put_user_goto'
  239 |                 __put_user_goto(__x, __ptr, "b", "iq", label);          \
      |                 ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3085:9: note: in expansion of macro 'unsafe_put_user'
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:242:17: note: in expansion of macro '__put_user_goto'
  242 |                 __put_user_goto(__x, __ptr, "w", "ir", label);          \
      |                 ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3085:9: note: in expansion of macro 'unsafe_put_user'
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:245:17: note: in expansion of macro '__put_user_goto'
  245 |                 __put_user_goto(__x, __ptr, "l", "ir", label);          \
      |                 ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3085:9: note: in expansion of macro 'unsafe_put_user'
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:472:18: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast]
  472 | #define __m(x) (*(struct __large_struct __user *)(x))
      |                  ^
arch/x86/include/asm/uaccess.h:483:36: note: in expansion of macro '__m'
  483 |                 : : ltype(x), "m" (__m(addr))                           \
      |                                    ^~~
arch/x86/include/asm/uaccess.h:146:9: note: in expansion of macro '__put_user_goto'
  146 |         __put_user_goto(x, ptr, "q", "er", label)
      |         ^~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:248:17: note: in expansion of macro '__put_user_goto_u64'
  248 |                 __put_user_goto_u64(__x, __ptr, label);                 \
      |                 ^~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3085:9: note: in expansion of macro 'unsafe_put_user'
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
arch/x86/include/asm/uaccess.h:253:34: error: passing argument 1 of 'kmsan_copy_to_user' makes pointer from integer without a cast [-Wint-conversion]
  253 |         instrument_put_user(__x, __ptr, size);                          \
      |                                  ^~~~~
      |                                  |
      |                                  int
include/linux/instrumented.h:213:28: note: in definition of macro 'instrument_put_user'
  213 |         kmsan_copy_to_user(ptr, &from, sizeof(from), 0);        \
      |                            ^~~
arch/x86/include/asm/uaccess.h:533:9: note: in expansion of macro '__put_user_size'
  533 |         __put_user_size((__typeof__(*(ptr)))(x), (ptr), sizeof(*(ptr)), label)
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_native.c:3085:9: note: in expansion of macro 'unsafe_put_user'
 3085 |         unsafe_put_user(__s.audio_tstamp.tv_nsec, &__src->s.status.audio_tstamp.tv_nsec, failed);\
      |         ^~~~~~~~~~~~~~~
sound/core/pcm_compat.c:451:13: note: in expansion of macro 'snd_pcm_sync_ptr_put_user'
  451 |         if (snd_pcm_sync_ptr_put_user(sstatus, scontrol, src))
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/kmsan-checks.h:87:52: note: expected 'void *' but argument is of type 'int'
   87 | static inline void kmsan_copy_to_user(void __user *to, const void *from,
      |                                       ~~~~~~~~~~~~~^~
cc1: all warnings being treated as errors

Caused by (sone of) commits

  2acd83beb4d3 ("ALSA: pcm: refactor copy from/to user in SNDRV_PCM_IOCTL_SYNC_PTR")
  de32a6120b80 ("ALSA: pcm: Convert snd_pcm_sync_ptr() to user_access_begin/user_access_end()")
  a0f3992ee86e ("ALSA: pcm: Replace [audio_]tstamp_[n]sec by struct __snd_timespec in struct snd_pcm_mmap_status32")
  a9b49bf8ad59 ("ALSA: pcm: Convert SNDRV_PCM_IOCTL_SYNC_PTR to user_access_begin/user_access_end()")

I have used the sound tree from next-20250613 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2025-02-12  1:09 Stephen Rothwell
  2025-02-12  7:22 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2025-02-12  1:09 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Jack Livingood, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 589 bytes --]

Hi all,

After merging the sound tree, today's linux-next build (x86_64
allmodconfig) failed like this:

sound/firewire/isight.c: In function 'isight_probe':
sound/firewire/isight.c:647:9: error: implicit declaration of function 'strspy'; did you mean 'strspn'? [-Wimplicit-function-declaration]
  647 |         strspy(card->mixername, "iSight");
      |         ^~~~~~
      |         strspn

Caused by commit

  2a91231a78a7 ("ALSA: firewire: isight: changed strcpy to strscpy")

I have used the sound tree from next-20250210 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2025-01-20  3:56 Stephen Rothwell
  2025-01-20  7:42 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2025-01-20  3:56 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Geoffrey D. Bennett, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 1775 bytes --]

Hi all,

After merging the sound tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:

sound/usb/fcp.c: In function 'fcp_hwdep_init':
sound/usb/fcp.c:889:22: error: assignment to 'long int (*)(struct snd_hwdep *, char *, long int,  loff_t *)' {aka 'long int (*)(struct snd_hwdep *, char *, long int,  long long int *)'} from incompatible pointer type 'ssize_t (*)(struct snd_hwdep *, char *, long int,  loff_t *)' {aka 'int (*)(struct snd_hwdep *, char *, long int,  long long int *)'} [-Wincompatible-pointer-types]
  889 |         hw->ops.read = fcp_hwdep_read;
      |                      ^

Caused by commit

  46757a3e7d50 ("ALSA: FCP: Add Focusrite Control Protocol driver")

I have applied the following patch for today.

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Mon, 20 Jan 2025 14:49:12 +1100
Subject: [PATCH] fixup for "ALSA: FCP: Add Focusrite Control Protocol driver"

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 sound/usb/fcp.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sound/usb/fcp.c b/sound/usb/fcp.c
index eb6a5c1f9b21..8e9ed9c4de08 100644
--- a/sound/usb/fcp.c
+++ b/sound/usb/fcp.c
@@ -815,13 +815,13 @@ static int fcp_hwdep_ioctl(struct snd_hwdep *hw, struct file *file,
 	/* not reached */
 }
 
-static ssize_t fcp_hwdep_read(struct snd_hwdep *hw, char __user *buf,
+static long fcp_hwdep_read(struct snd_hwdep *hw, char __user *buf,
 			      long count, loff_t *offset)
 {
 	struct usb_mixer_interface *mixer = hw->private_data;
 	struct fcp_data *private = mixer->private_data;
 	unsigned long flags;
-	ssize_t ret = 0;
+	long ret = 0;
 	u32 event;
 
 	if (count < sizeof(event))
-- 
2.45.2

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2024-10-11  2:10 Stephen Rothwell
  2024-10-11  7:22 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2024-10-11  2:10 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: Linux Kernel Mailing List, Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 6018 bytes --]

Hi all,

After merging the sound tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:

In file included from sound/pci/hda/patch_realtek.c:29:
sound/pci/hda/hda_local.h:312:58: error: 'const struct hda_quirk' has no member named 'name'
  312 |         { _SND_PCI_QUIRK_ID(vend, dev), .value = (val), .name = (xname),\
      |                                                          ^~~~
sound/pci/hda/patch_realtek.c:10759:9: note: in expansion of macro 'HDA_CODEC_QUIRK'
10759 |         HDA_CODEC_QUIRK(0x17aa, 0x3802, "DuetITL 2021", ALC287_FIXUP_YOGA7_14ITL_SPEAKERS),
      |         ^~~~~~~~~~~~~~~
sound/pci/hda/hda_local.h:312:65: warning: excess elements in struct initializer
  312 |         { _SND_PCI_QUIRK_ID(vend, dev), .value = (val), .name = (xname),\
      |                                                                 ^
sound/pci/hda/patch_realtek.c:10759:9: note: in expansion of macro 'HDA_CODEC_QUIRK'
10759 |         HDA_CODEC_QUIRK(0x17aa, 0x3802, "DuetITL 2021", ALC287_FIXUP_YOGA7_14ITL_SPEAKERS),
      |         ^~~~~~~~~~~~~~~
sound/pci/hda/hda_local.h:312:65: note: (near initialization for 'alc269_fixup_tbl[712]')
  312 |         { _SND_PCI_QUIRK_ID(vend, dev), .value = (val), .name = (xname),\
      |                                                                 ^
sound/pci/hda/patch_realtek.c:10759:9: note: in expansion of macro 'HDA_CODEC_QUIRK'
10759 |         HDA_CODEC_QUIRK(0x17aa, 0x3802, "DuetITL 2021", ALC287_FIXUP_YOGA7_14ITL_SPEAKERS),
      |         ^~~~~~~~~~~~~~~
sound/pci/hda/hda_local.h:312:58: error: 'const struct hda_quirk' has no member named 'name'
  312 |         { _SND_PCI_QUIRK_ID(vend, dev), .value = (val), .name = (xname),\
      |                                                          ^~~~
sound/pci/hda/patch_realtek.c:10764:9: note: in expansion of macro 'HDA_CODEC_QUIRK'
10764 |         HDA_CODEC_QUIRK(0x17aa, 0x3820, "IdeaPad 330-17IKB 81DM", ALC269_FIXUP_ASPIRE_HEADSET_MIC),
      |         ^~~~~~~~~~~~~~~
sound/pci/hda/hda_local.h:312:65: warning: excess elements in struct initializer
  312 |         { _SND_PCI_QUIRK_ID(vend, dev), .value = (val), .name = (xname),\
      |                                                                 ^
sound/pci/hda/patch_realtek.c:10764:9: note: in expansion of macro 'HDA_CODEC_QUIRK'
10764 |         HDA_CODEC_QUIRK(0x17aa, 0x3820, "IdeaPad 330-17IKB 81DM", ALC269_FIXUP_ASPIRE_HEADSET_MIC),
      |         ^~~~~~~~~~~~~~~
sound/pci/hda/hda_local.h:312:65: note: (near initialization for 'alc269_fixup_tbl[717]')
  312 |         { _SND_PCI_QUIRK_ID(vend, dev), .value = (val), .name = (xname),\
      |                                                                 ^
sound/pci/hda/patch_realtek.c:10764:9: note: in expansion of macro 'HDA_CODEC_QUIRK'
10764 |         HDA_CODEC_QUIRK(0x17aa, 0x3820, "IdeaPad 330-17IKB 81DM", ALC269_FIXUP_ASPIRE_HEADSET_MIC),
      |         ^~~~~~~~~~~~~~~
sound/pci/hda/hda_local.h:312:58: error: 'const struct hda_quirk' has no member named 'name'
  312 |         { _SND_PCI_QUIRK_ID(vend, dev), .value = (val), .name = (xname),\
      |                                                          ^~~~
sound/pci/hda/patch_realtek.c:10779:9: note: in expansion of macro 'HDA_CODEC_QUIRK'
10779 |         HDA_CODEC_QUIRK(0x17aa, 0x386e, "Legion Y9000X 2022 IAH7", ALC287_FIXUP_CS35L41_I2C_2),
      |         ^~~~~~~~~~~~~~~
sound/pci/hda/hda_local.h:312:65: warning: excess elements in struct initializer
  312 |         { _SND_PCI_QUIRK_ID(vend, dev), .value = (val), .name = (xname),\
      |                                                                 ^
sound/pci/hda/patch_realtek.c:10779:9: note: in expansion of macro 'HDA_CODEC_QUIRK'
10779 |         HDA_CODEC_QUIRK(0x17aa, 0x386e, "Legion Y9000X 2022 IAH7", ALC287_FIXUP_CS35L41_I2C_2),
      |         ^~~~~~~~~~~~~~~
sound/pci/hda/hda_local.h:312:65: note: (near initialization for 'alc269_fixup_tbl[732]')
  312 |         { _SND_PCI_QUIRK_ID(vend, dev), .value = (val), .name = (xname),\
      |                                                                 ^
sound/pci/hda/patch_realtek.c:10779:9: note: in expansion of macro 'HDA_CODEC_QUIRK'
10779 |         HDA_CODEC_QUIRK(0x17aa, 0x386e, "Legion Y9000X 2022 IAH7", ALC287_FIXUP_CS35L41_I2C_2),
      |         ^~~~~~~~~~~~~~~
sound/pci/hda/hda_local.h:312:58: error: 'const struct hda_quirk' has no member named 'name'
  312 |         { _SND_PCI_QUIRK_ID(vend, dev), .value = (val), .name = (xname),\
      |                                                          ^~~~
sound/pci/hda/patch_realtek.c:10781:9: note: in expansion of macro 'HDA_CODEC_QUIRK'
10781 |         HDA_CODEC_QUIRK(0x17aa, 0x386f, "Legion Pro 7 16ARX8H", ALC287_FIXUP_TAS2781_I2C),
      |         ^~~~~~~~~~~~~~~
sound/pci/hda/hda_local.h:312:65: warning: excess elements in struct initializer
  312 |         { _SND_PCI_QUIRK_ID(vend, dev), .value = (val), .name = (xname),\
      |                                                                 ^
sound/pci/hda/patch_realtek.c:10781:9: note: in expansion of macro 'HDA_CODEC_QUIRK'
10781 |         HDA_CODEC_QUIRK(0x17aa, 0x386f, "Legion Pro 7 16ARX8H", ALC287_FIXUP_TAS2781_I2C),
      |         ^~~~~~~~~~~~~~~
sound/pci/hda/hda_local.h:312:65: note: (near initialization for 'alc269_fixup_tbl[734]')
  312 |         { _SND_PCI_QUIRK_ID(vend, dev), .value = (val), .name = (xname),\
      |                                                                 ^
sound/pci/hda/patch_realtek.c:10781:9: note: in expansion of macro 'HDA_CODEC_QUIRK'
10781 |         HDA_CODEC_QUIRK(0x17aa, 0x386f, "Legion Pro 7 16ARX8H", ALC287_FIXUP_TAS2781_I2C),
      |         ^~~~~~~~~~~~~~~

Caused by commit

  5b1913a79c3e ("ALSA: hda: Use own quirk lookup helper")

This build has CONFIG_SND_DEBUG_VERBOSE not set.

I have used the sound tree from next-20241010 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2024-08-09  1:22 Stephen Rothwell
  2024-08-09  7:43 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2024-08-09  1:22 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Jerome Brunet, Linux Kernel Mailing List, Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 590 bytes --]

Hi all,

After merging the sound tree, today's linux-next build (x86_64
allmodconfig) failed like this:

sound/usb/caiaq/audio.c: In function 'snd_usb_caiaq_pcm_prepare':
sound/usb/caiaq/audio.c:179:41: error: unused variable 'i' [-Werror=unused-variable]
  179 |         int bytes_per_sample, bpp, ret, i;
      |                                         ^
cc1: all warnings being treated as errors

Caused by commit

  e95b9f7f2ee0 ("ALSA: snd-usb-caiaq: use snd_pcm_rate_to_rate_bit")

I used the sound tree from next-20240808 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2023-08-18  3:12 Stephen Rothwell
  2023-08-18 11:47 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2023-08-18  3:12 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Curtis Malainey, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 871 bytes --]

Hi all,

After merging the sound tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

sound/aoa/soundbus/i2sbus/pcm.c: In function 'i2sbus_attach_codec':
sound/aoa/soundbus/i2sbus/pcm.c:975:61: error: invalid type argument of '->' (have 'struct snd_pcm_str')
  975 |                 dev->pcm->streams[SNDRV_PCM_STREAM_PLAYBACK]->dev.parent =
      |                                                             ^~
sound/aoa/soundbus/i2sbus/pcm.c:992:60: error: invalid type argument of '->' (have 'struct snd_pcm_str')
  992 |                 dev->pcm->streams[SNDRV_PCM_STREAM_CAPTURE]->dev.parent =
      |                                                            ^~

Caused by commit

  bc41a7228ced ("ALSA: pcm: Don't embed device")

I have used the sound tree from next-20230817 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2023-05-24  3:54 Stephen Rothwell
  2023-05-24  7:14 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2023-05-24  3:54 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: Linux Kernel Mailing List, Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 1859 bytes --]

Hi all,

After merging the sound tree, today's linux-next build (powerpc
allyesconfig) failed like this:

In file included from sound/core/seq/seq_ump_convert.c:11:
include/sound/ump_msg.h:196:13: error: duplicate member 'reserved'
  196 |         u32 reserved:8;
      |             ^~~~~~~~
include/sound/ump_msg.h:197:13: error: duplicate member 'program'
  197 |         u32 program:8;
      |             ^~~~~~~
include/sound/ump_msg.h:198:13: error: duplicate member 'channel'
  198 |         u32 channel:4;
      |             ^~~~~~~
include/sound/ump_msg.h:199:13: error: duplicate member 'status'
  199 |         u32 status:4;
      |             ^~~~~~
include/sound/ump_msg.h:200:13: error: duplicate member 'group'
  200 |         u32 group:4;
      |             ^~~~~
include/sound/ump_msg.h:201:13: error: duplicate member 'type'
  201 |         u32 type:4;
      |             ^~~~

Caused by commit

  0b5288f5fe63 ("ALSA: ump: Add legacy raw MIDI support")

I have applied the following fix patch for today.

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Wed, 24 May 2023 13:39:38 +1000
Subject: [PATCH] fix up for "ALSA: ump: Add legacy raw MIDI support"

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 include/sound/ump_msg.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/sound/ump_msg.h b/include/sound/ump_msg.h
index c76c39944a5f..a594ef951b54 100644
--- a/include/sound/ump_msg.h
+++ b/include/sound/ump_msg.h
@@ -192,13 +192,13 @@ struct snd_ump_midi1_msg_program {
 	u32 program:8;
 	u32 reserved:8;
 #else
-#endif
 	u32 reserved:8;
 	u32 program:8;
 	u32 channel:4;
 	u32 status:4;
 	u32 group:4;
 	u32 type:4;
+#endif
 } __packed;
 
 /* MIDI 1.0 Channel Pressure (32bit) */
-- 
2.39.2

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2022-07-15 12:44 Stephen Rothwell
  2022-07-15 14:41 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2022-07-15 12:44 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Andy Shevchenko, Linux Kernel Mailing List,
	Linux Next Mailing List, Stefan Binding, Vitaly Rodionov

[-- Attachment #1: Type: text/plain, Size: 716 bytes --]

Hi all,

After merging the sound tree, today's linux-next build (powerpc
allyesconfig) failed like this:

sound/pci/hda/cs35l41_hda.c: In function 'cs35l41_get_acpi_sub_string':
sound/pci/hda/cs35l41_hda.c:693:43: error: invalid use of undefined type 'struct acpi_device'
  693 |         status = acpi_evaluate_object(adev->handle, "_SUB", NULL, &buffer);
      |                                           ^~

Caused by commit

  d60b05b4c780 ("ALSA: hda: cs35l41: Allow compilation test on non-ACPI configurations")

along with commit

  eef375960210 ("ALSA: hda: cs35l41: Support reading subsystem id from ACPI")

I have reverted commit d60b05b4c780 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2021-10-18  0:38 Stephen Rothwell
  2021-10-18  6:35 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2021-10-18  0:38 UTC (permalink / raw)
  To: Takashi Iwai
  Cc: Takashi Sakamoto, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 627 bytes --]

Hi all,

After merging the sound tree, today's linux-next build (x86_64
allmodconfig) failed like this:

In file included from <command-line>:32:
./usr/include/sound/firewire.h:71:16: error: C++ style comments are not allowed in ISO C90
   71 |  __u32 count;  // The number of changes.
      |                ^
./usr/include/sound/firewire.h:71:16: note: (this will be reported only once per input file)

Caused by commit

  634ec0b2906e ("ALSA: firewire-motu: notify event for parameter change in register DSP model")

I have used the sound tree from next-20211015 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2020-07-17  3:01 Stephen Rothwell
  2020-07-17  5:33 ` Christoph Hellwig
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2020-07-17  3:01 UTC (permalink / raw)
  To: Takashi Iwai, Christoph Hellwig
  Cc: Linux Next Mailing List, Linux Kernel Mailing List

[-- Attachment #1: Type: text/plain, Size: 1720 bytes --]

Hi all,

After merging the sound tree, today's linux-next build (x86_64
allmodconfig) failed like this:

sound/core/pcm_memory.c: In function 'do_alloc_pages':
sound/core/pcm_memory.c:47:7: error: implicit declaration of function 'dma_is_direct'; did you mean 'd_is_dir'? [-Werror=implicit-function-declaration]
   47 |      !dma_is_direct(get_dma_ops(dev))) {
      |       ^~~~~~~~~~~~~
      |       d_is_dir

Caused by commit

  3ad796cbc36a ("ALSA: pcm: Use SG-buffer only when direct DMA is available")

interacting with commit

  d3fa60d7bfdc ("dma-mapping: move the remaining DMA API calls out of line")

from the dma-mapping tree.

I am not sure of the best fix here, so I just added this hack to make
it build for now.  Suggestions welcome.

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Fri, 17 Jul 2020 12:57:38 +1000
Subject: [PATCH] merge fix for dma_is_direct() removal

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 sound/core/pcm_memory.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sound/core/pcm_memory.c b/sound/core/pcm_memory.c
index 795af1b88051..89480f12086a 100644
--- a/sound/core/pcm_memory.c
+++ b/sound/core/pcm_memory.c
@@ -44,7 +44,7 @@ static int do_alloc_pages(struct snd_card *card, int type, struct device *dev,
 
 #ifdef CONFIG_SND_DMA_SGBUF
 	if ((type == SNDRV_DMA_TYPE_DEV_SG || type == SNDRV_DMA_TYPE_DEV_UC_SG) &&
-	    !dma_is_direct(get_dma_ops(dev))) {
+	    1 /* !dma_is_direct(get_dma_ops(dev)) */) {
 		/* mutate to continuous page allocation */
 		dev_dbg(dev, "Use continuous page allocator\n");
 		if (type == SNDRV_DMA_TYPE_DEV_SG)
-- 
2.27.0

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2019-08-09  2:54 Stephen Rothwell
  2019-08-09  5:55 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2019-08-09  2:54 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: Linux Next Mailing List, Linux Kernel Mailing List

[-- Attachment #1: Type: text/plain, Size: 1400 bytes --]

Hi all,

After merging the sound tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:

sound/hda/hdac_bus.c: In function 'snd_hdac_aligned_read':
sound/hda/hdac_bus.c:228:6: error: implicit declaration of function 'readl'; did you mean 'd_real'? [-Werror=implicit-function-declaration]
  v = readl(aligned_addr);
      ^~~~~
      d_real
sound/hda/hdac_bus.c: In function 'snd_hdac_aligned_write':
sound/hda/hdac_bus.c:244:2: error: implicit declaration of function 'writel' [-Werror=implicit-function-declaration]
  writel(v, aligned_addr);
  ^~~~~~

Caused by commit

  19abfefd4c76 ("ALSA: hda: Direct MMIO accesses")

I have applied the following patch for today:

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Fri, 9 Aug 2019 12:50:25 +1000
Subject: [PATCH] ALSA: hda: readl/writel need linux/io.h

Fixes: 19abfefd4c76 ("ALSA: hda: Direct MMIO accesses")
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 sound/hda/hdac_bus.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sound/hda/hdac_bus.c b/sound/hda/hdac_bus.c
index dc2523ef7d98..cd25e2b3f7f2 100644
--- a/sound/hda/hdac_bus.c
+++ b/sound/hda/hdac_bus.c
@@ -4,6 +4,7 @@
  */
 
 #include <linux/init.h>
+#include <linux/io.h>
 #include <linux/device.h>
 #include <linux/module.h>
 #include <linux/export.h>
-- 
2.20.1

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2017-05-17  1:29 Stephen Rothwell
  2017-05-17  5:30 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2017-05-17  1:29 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: Linux-Next Mailing List, Linux Kernel Mailing List

Hi Takashi,

After merging the sound tree, today's linux-next build (x86_64
allmodconfig) failed like this:

In file included from include/linux/delay.h:21:0,
                 from sound/pcmcia/vx/vxp_ops.c:23:
sound/pcmcia/vx/vxp_ops.c: In function 'vxp_dma_read':
sound/pcmcia/vx/vxp_ops.c:406:43: error: '_chip' undeclared (first use in this function)
  struct snd_vxpocket *pchip = to_vxpocket(_chip);
                                           ^
include/linux/kernel.h:854:49: note: in definition of macro 'container_of'
  const typeof( ((type *)0)->member ) *__mptr = (ptr); \
                                                 ^
sound/pcmcia/vx/vxp_ops.c:406:31: note: in expansion of macro 'to_vxpocket'
  struct snd_vxpocket *pchip = to_vxpocket(_chip);
                               ^
sound/pcmcia/vx/vxp_ops.c:406:43: note: each undeclared identifier is reported only once for each function it appears in
  struct snd_vxpocket *pchip = to_vxpocket(_chip);
                                           ^
include/linux/kernel.h:854:49: note: in definition of macro 'container_of'
  const typeof( ((type *)0)->member ) *__mptr = (ptr); \
                                                 ^
sound/pcmcia/vx/vxp_ops.c:406:31: note: in expansion of macro 'to_vxpocket'
  struct snd_vxpocket *pchip = to_vxpocket(_chip);
                               ^
sound/pcmcia/vx/vxp_ops.c: In function 'vx_set_mic_boost':
sound/pcmcia/vx/vxp_ops.c:470:43: error: '_chip' undeclared (first use in this function)
  struct snd_vxpocket *pchip = to_vxpocket(_chip);
                                           ^
include/linux/kernel.h:854:49: note: in definition of macro 'container_of'
  const typeof( ((type *)0)->member ) *__mptr = (ptr); \
                                                 ^
sound/pcmcia/vx/vxp_ops.c:470:31: note: in expansion of macro 'to_vxpocket'
  struct snd_vxpocket *pchip = to_vxpocket(_chip);
                               ^
sound/pcmcia/vx/vxp_ops.c: In function 'vx_set_mic_level':
sound/pcmcia/vx/vxp_ops.c:512:43: error: '_chip' undeclared (first use in this function)
  struct snd_vxpocket *pchip = to_vxpocket(_chip);
                                           ^
include/linux/kernel.h:854:49: note: in definition of macro 'container_of'
  const typeof( ((type *)0)->member ) *__mptr = (ptr); \
                                                 ^
sound/pcmcia/vx/vxp_ops.c:512:31: note: in expansion of macro 'to_vxpocket'
  struct snd_vxpocket *pchip = to_vxpocket(_chip);
                               ^

Caused by commit

  7c46696e8fef ("ALSA: vxpocket: Use container_of()")

I have used the sound tree from next-20170516 for today.
-- 
Cheers,
Stephen Rothwell

^ permalink raw reply	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2011-09-23  2:49 Stephen Rothwell
  2011-09-23  5:21 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2011-09-23  2:49 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: linux-next, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 920 bytes --]

Hi Takashi,

After merging the sound tree, today's linux-next build ()
failed like this:

sound/pci/fm801.c: In function 'snd_fm801_tea575x_get_pins':
sound/pci/fm801.c:759:2: error: expected ',' or ';' before 'return'
sound/pci/fm801.c:757:32: warning: unused variable 'gpio'
sound/pci/fm801.c:756:17: warning: unused variable 'reg'
sound/pci/fm801.c:761:1: warning: no return statement in function returning non-void
sound/pci/fm801.c: In function 'snd_fm801_create':
sound/pci/fm801.c:1251:5: error: implicit declaration of function 'get_tea57x_gpio'
sound/pci/fm801.c:1251:5: error: invalid type argument of '->' (have 'int')

Caused by commit c51a94adef4c ("ALSA: fm801 - Clean up redundant reference to snd_fm801_tea575x_gpios[]").

I have used the sound tree from next-20110922 for today.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2011-05-19  1:15 Stephen Rothwell
  0 siblings, 0 replies; 42+ messages in thread
From: Stephen Rothwell @ 2011-05-19  1:15 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: linux-next, linux-kernel, Ben Gardiner

[-- Attachment #1: Type: text/plain, Size: 740 bytes --]

Hi Takashi,

After merging the sound tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

sound/core/pcm_lib.c:333:40: error: macro "xrun_log" passed 3 arguments, but takes just 2
sound/core/pcm_lib.c: In function 'snd_pcm_update_hw_ptr0':
sound/core/pcm_lib.c:333: error: 'xrun_log' undeclared (first use in this function)

Caused by commit ec08b14483de ("ALSA: sound, core, pcm_lib: xrun_log: log
also in_interrupt").  This build has CONFIG_SND_PCM_XRUN_DEBUG unset.

Please, please, use grep or some search when making API changes.

I have used the sound tree from next-20110518 for today.

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 490 bytes --]

^ permalink raw reply	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2010-06-24  3:03 Stephen Rothwell
  2010-06-24  6:11 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2010-06-24  3:03 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: linux-next, linux-kernel, Daniel Mack

[-- Attachment #1: Type: text/plain, Size: 565 bytes --]

Hi Takashi,

After merging the sound tree, today's linux-next build (x86_64
allmodconfig) failed like this:

sound/usb/mixer.c: In function 'get_ctl_value_v1':
sound/usb/mixer.c:308: error: 'struct usb_mixer_interface' has no member named 'ctrlif'

Caused by commit 3d8d4dcfd423b01ef7ea7c3c97720764b7adb6df ("ALSA:
usb-audio: simplify control interface access").  Grep is your friend ...

I have used the sound tree from next-20100623 for today.
-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2010-06-01  2:30 Stephen Rothwell
  2010-06-01  5:47 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2010-06-01  2:30 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: linux-next, linux-kernel, Daniel Mack

[-- Attachment #1: Type: text/plain, Size: 678 bytes --]

Hi Takashi,

After merging the sound tree, today's linux-next build (x86_64
allmodconfig) failed like this:

In file included from drivers/usb/gadget/audio.c:37:
drivers/usb/gadget/f_audio.c:104: error: 'UAC_MUTE_CONTROL' undeclared here (not in a function)
drivers/usb/gadget/f_audio.c:113: error: 'UAC_VOLUME_CONTROL' undeclared here (not in a function)

Presumably caused by commit 65f25da44b51f55e3a74301c25f29263be2bf1ba
("ALSA: usb-audio: unify constants from specification").

I have used the version of the sound tree from next-20100531 for today.

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 42+ messages in thread
* linux-next: build failure after merge of the sound tree
@ 2010-04-07  3:39 Stephen Rothwell
  2010-04-07  6:06 ` Takashi Iwai
  0 siblings, 1 reply; 42+ messages in thread
From: Stephen Rothwell @ 2010-04-07  3:39 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: linux-next, linux-kernel, Risto Suominen

[-- Attachment #1: Type: text/plain, Size: 793 bytes --]

Hi Takashi,

After merging the sound tree, today's linux-next build (powerpc
ppc64_defconfig) failed like this:

sound/ppc/tumbler.c: In function 'tumbler_find_device':
sound/ppc/tumbler.c:1143: error: implicit declaration of function 'machine_is_compatible'

Caused by commit 819ef70b135ba66cd1659c913255686bf931e3d4 ("ALSA:
powermac - Reverse HP detection on G4 DA").  machine_is_compatible was
renamed to of_machine_is_compatible by commit
71a157e8edca55198e808f8561dd49017a54ee34 ("of: add 'of_' prefix to
machine_is_compatible()") in Linus' tree since Feb 26, 2010 (and is in
v2.6.34-rc1).

I have used the version of the sound tree from next-20100401 for today.

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 42+ messages in thread

end of thread, other threads:[~2025-06-16  5:50 UTC | newest]

Thread overview: 42+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-09-23  2:44 linux-next: build failure after merge of the sound tree Stephen Rothwell
2010-09-23  6:04 ` Takashi Iwai
2010-09-23  8:39   ` Mark Brown
  -- strict thread matches above, loose matches on Subject: below --
2025-06-16  3:01 Stephen Rothwell
2025-06-16  5:29 ` Christophe Leroy
2025-02-12  1:09 Stephen Rothwell
2025-02-12  7:22 ` Takashi Iwai
2025-01-20  3:56 Stephen Rothwell
2025-01-20  7:42 ` Takashi Iwai
2024-10-11  2:10 Stephen Rothwell
2024-10-11  7:22 ` Takashi Iwai
2024-08-09  1:22 Stephen Rothwell
2024-08-09  7:43 ` Takashi Iwai
2023-08-18  3:12 Stephen Rothwell
2023-08-18 11:47 ` Takashi Iwai
2023-05-24  3:54 Stephen Rothwell
2023-05-24  7:14 ` Takashi Iwai
2022-07-15 12:44 Stephen Rothwell
2022-07-15 14:41 ` Takashi Iwai
2022-07-15 19:09   ` Andy Shevchenko
2021-10-18  0:38 Stephen Rothwell
2021-10-18  6:35 ` Takashi Iwai
2020-07-17  3:01 Stephen Rothwell
2020-07-17  5:33 ` Christoph Hellwig
2020-07-17  6:34   ` Takashi Iwai
2020-07-17  6:50     ` Christoph Hellwig
2020-07-17  6:54       ` Takashi Iwai
2019-08-09  2:54 Stephen Rothwell
2019-08-09  5:55 ` Takashi Iwai
2017-05-17  1:29 Stephen Rothwell
2017-05-17  5:30 ` Takashi Iwai
2011-09-23  2:49 Stephen Rothwell
2011-09-23  5:21 ` Takashi Iwai
2011-05-19  1:15 Stephen Rothwell
2010-06-24  3:03 Stephen Rothwell
2010-06-24  6:11 ` Takashi Iwai
2010-06-28 16:33   ` Daniel Mack
2010-06-01  2:30 Stephen Rothwell
2010-06-01  5:47 ` Takashi Iwai
2010-04-07  3:39 Stephen Rothwell
2010-04-07  6:06 ` Takashi Iwai
2010-04-07  7:16   ` Stephen Rothwell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).