Hi Andrew, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on linus/master] [also build test WARNING on v5.4-rc8] [cannot apply to sound/for-next next-20191121] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system. BTW, we also suggest to use '--base' option to specify the base tree in git format-patch, please see https://stackoverflow.com/a/37406982] url: https://github.com/0day-ci/linux/commits/Andrew-Gabbasov/ALSA-aloop-Support-sound-timer-as-clock-source-instead-of-jiffies/20191122-170109 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 81429eb8d9ca40b0c65bb739d29fa856c5d5e958 config: arm64-allyesconfig (attached as .config) compiler: aarch64-linux-gcc (GCC) 7.4.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree GCC_VERSION=7.4.0 make.cross ARCH=arm64 If you fix the issue, kindly add following tag Reported-by: kbuild test robot All warnings (new ones prefixed by >>): sound//drivers/aloop.c: In function 'loopback_snd_timer_close_cable': sound//drivers/aloop.c:314:2: error: implicit declaration of function 'snd_timer_instance_free'; did you mean 'snd_timer_global_free'? [-Werror=implicit-function-declaration] snd_timer_instance_free(cable->snd_timer.instance); ^~~~~~~~~~~~~~~~~~~~~~~ snd_timer_global_free sound//drivers/aloop.c: In function 'loopback_snd_timer_open': sound//drivers/aloop.c:1130:11: error: implicit declaration of function 'snd_timer_instance_new'; did you mean 'snd_timer_global_new'? [-Werror=implicit-function-declaration] timeri = snd_timer_instance_new(dpcm->loopback->card->id); ^~~~~~~~~~~~~~~~~~~~~~ snd_timer_global_new sound//drivers/aloop.c:1130:9: warning: assignment makes pointer from integer without a cast [-Wint-conversion] timeri = snd_timer_instance_new(dpcm->loopback->card->id); ^ sound//drivers/aloop.c:1161:23: error: passing argument 1 of 'snd_timer_open' from incompatible pointer type [-Werror=incompatible-pointer-types] err = snd_timer_open(timeri, &cable->snd_timer.id, current->pid); ^~~~~~ In file included from sound//drivers/aloop.c:31:0: include/sound/timer.h:121:5: note: expected 'struct snd_timer_instance **' but argument is of type 'struct snd_timer_instance *' int snd_timer_open(struct snd_timer_instance **ti, char *owner, struct snd_timer_id *tid, unsigned int slave_id); ^~~~~~~~~~~~~~ sound//drivers/aloop.c:1161:31: error: passing argument 2 of 'snd_timer_open' from incompatible pointer type [-Werror=incompatible-pointer-types] err = snd_timer_open(timeri, &cable->snd_timer.id, current->pid); ^ In file included from sound//drivers/aloop.c:31:0: include/sound/timer.h:121:5: note: expected 'char *' but argument is of type 'struct snd_timer_id *' int snd_timer_open(struct snd_timer_instance **ti, char *owner, struct snd_timer_id *tid, unsigned int slave_id); ^~~~~~~~~~~~~~ In file included from include/linux/thread_info.h:21:0, from arch/arm64/include/asm/preempt.h:5, from include/linux/preempt.h:78, from include/linux/spinlock.h:51, from include/linux/seqlock.h:36, from include/linux/time.h:6, from include/linux/jiffies.h:9, from sound//drivers/aloop.c:19: >> arch/arm64/include/asm/current.h:24:17: warning: passing argument 3 of 'snd_timer_open' makes pointer from integer without a cast [-Wint-conversion] #define current get_current() ^ sound//drivers/aloop.c:1161:53: note: in expansion of macro 'current' err = snd_timer_open(timeri, &cable->snd_timer.id, current->pid); ^~~~~~~ In file included from sound//drivers/aloop.c:31:0: include/sound/timer.h:121:5: note: expected 'struct snd_timer_id *' but argument is of type 'pid_t {aka int}' int snd_timer_open(struct snd_timer_instance **ti, char *owner, struct snd_timer_id *tid, unsigned int slave_id); ^~~~~~~~~~~~~~ sound//drivers/aloop.c:1161:8: error: too few arguments to function 'snd_timer_open' err = snd_timer_open(timeri, &cable->snd_timer.id, current->pid); ^~~~~~~~~~~~~~ In file included from sound//drivers/aloop.c:31:0: include/sound/timer.h:121:5: note: declared here int snd_timer_open(struct snd_timer_instance **ti, char *owner, struct snd_timer_id *tid, unsigned int slave_id); ^~~~~~~~~~~~~~ cc1: some warnings being treated as errors -- sound/drivers/aloop.c: In function 'loopback_snd_timer_close_cable': sound/drivers/aloop.c:314:2: error: implicit declaration of function 'snd_timer_instance_free'; did you mean 'snd_timer_global_free'? [-Werror=implicit-function-declaration] snd_timer_instance_free(cable->snd_timer.instance); ^~~~~~~~~~~~~~~~~~~~~~~ snd_timer_global_free sound/drivers/aloop.c: In function 'loopback_snd_timer_open': sound/drivers/aloop.c:1130:11: error: implicit declaration of function 'snd_timer_instance_new'; did you mean 'snd_timer_global_new'? [-Werror=implicit-function-declaration] timeri = snd_timer_instance_new(dpcm->loopback->card->id); ^~~~~~~~~~~~~~~~~~~~~~ snd_timer_global_new sound/drivers/aloop.c:1130:9: warning: assignment makes pointer from integer without a cast [-Wint-conversion] timeri = snd_timer_instance_new(dpcm->loopback->card->id); ^ sound/drivers/aloop.c:1161:23: error: passing argument 1 of 'snd_timer_open' from incompatible pointer type [-Werror=incompatible-pointer-types] err = snd_timer_open(timeri, &cable->snd_timer.id, current->pid); ^~~~~~ In file included from sound/drivers/aloop.c:31:0: include/sound/timer.h:121:5: note: expected 'struct snd_timer_instance **' but argument is of type 'struct snd_timer_instance *' int snd_timer_open(struct snd_timer_instance **ti, char *owner, struct snd_timer_id *tid, unsigned int slave_id); ^~~~~~~~~~~~~~ sound/drivers/aloop.c:1161:31: error: passing argument 2 of 'snd_timer_open' from incompatible pointer type [-Werror=incompatible-pointer-types] err = snd_timer_open(timeri, &cable->snd_timer.id, current->pid); ^ In file included from sound/drivers/aloop.c:31:0: include/sound/timer.h:121:5: note: expected 'char *' but argument is of type 'struct snd_timer_id *' int snd_timer_open(struct snd_timer_instance **ti, char *owner, struct snd_timer_id *tid, unsigned int slave_id); ^~~~~~~~~~~~~~ In file included from include/linux/thread_info.h:21:0, from arch/arm64/include/asm/preempt.h:5, from include/linux/preempt.h:78, from include/linux/spinlock.h:51, from include/linux/seqlock.h:36, from include/linux/time.h:6, from include/linux/jiffies.h:9, from sound/drivers/aloop.c:19: >> arch/arm64/include/asm/current.h:24:17: warning: passing argument 3 of 'snd_timer_open' makes pointer from integer without a cast [-Wint-conversion] #define current get_current() ^ sound/drivers/aloop.c:1161:53: note: in expansion of macro 'current' err = snd_timer_open(timeri, &cable->snd_timer.id, current->pid); ^~~~~~~ In file included from sound/drivers/aloop.c:31:0: include/sound/timer.h:121:5: note: expected 'struct snd_timer_id *' but argument is of type 'pid_t {aka int}' int snd_timer_open(struct snd_timer_instance **ti, char *owner, struct snd_timer_id *tid, unsigned int slave_id); ^~~~~~~~~~~~~~ sound/drivers/aloop.c:1161:8: error: too few arguments to function 'snd_timer_open' err = snd_timer_open(timeri, &cable->snd_timer.id, current->pid); ^~~~~~~~~~~~~~ In file included from sound/drivers/aloop.c:31:0: include/sound/timer.h:121:5: note: declared here int snd_timer_open(struct snd_timer_instance **ti, char *owner, struct snd_timer_id *tid, unsigned int slave_id); ^~~~~~~~~~~~~~ cc1: some warnings being treated as errors vim +/snd_timer_open +24 arch/arm64/include/asm/current.h c02433dd6de32f Mark Rutland 2016-11-03 23 c02433dd6de32f Mark Rutland 2016-11-03 @24 #define current get_current() c02433dd6de32f Mark Rutland 2016-11-03 25 :::::: The code at line 24 was first introduced by commit :::::: c02433dd6de32f042cf3ffe476746b1115b8c096 arm64: split thread_info from task stack :::::: TO: Mark Rutland :::::: CC: Catalin Marinas --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org Intel Corporation