Re: [PATCH v3] sound/oss/dmasound: fix build when drivers are mixed =y/=m

From: Randy Dunlap
Date: Fri Apr 15 2022 - 10:45:57 EST




On 4/15/22 06:48, Guenter Roeck wrote:
> On Tue, Apr 05, 2022 at 04:41:18PM -0700, Randy Dunlap wrote:
>> When CONFIG_DMASOUND_ATARI=m and CONFIG_DMASOUND_Q40=y (or vice versa),
>> dmasound_core.o can be built without dmasound_deinit() being defined,
>> causing a build error:
>>
>> ERROR: modpost: "dmasound_deinit" [sound/oss/dmasound/dmasound_atari.ko] undefined!
>>
>> Modify dmasound_core.c and dmasound.h so that dmasound_deinit() is
>> always available.
>>
>> The mixed modes (=y/=m) also mean that several variables and structs
>> have to be declared in all cases.
>>
>> Suggested-by: Arnd Bergmann <arnd@xxxxxxxx>
>> Suggested-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
>> Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
>> Reported-by: kernel test robot <lkp@xxxxxxxxx>
>> Link: lore.kernel.org/r/202204032138.EFT9qGEd-lkp@xxxxxxxxx
>> Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
>> Cc: Jaroslav Kysela <perex@xxxxxxxx>
>> Cc: Takashi Iwai <tiwai@xxxxxxxx>
>> Cc: alsa-devel@xxxxxxxxxxxxxxxx
>> ---
>
> m68k:allmodconfig fails to build with this patch in the tree.
>
> Error log:
> sound/oss/dmasound/dmasound_core.c:1431:12: error: 'dmasound_setup' defined but not used
>
> ... because __setup() is empty if MODULE is defined.
>
> Guenter

Takashi has already merged a patch for this from Miles Chen.

thanks.

--
~Randy