[linux-next:master 6051/6654] net/rxrpc/conn_client.c:494 rxrpc_maybe_add_conn() warn: inconsistent returns 'bundle->channel_lock'.
by Dan Carpenter
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 7ce53e3a447bced7b85ed181c4d027e93c062e07
commit: 245500d853e9f20036cec7df4f6984ece4c6bf26 [6051/6654] rxrpc: Rewrite the client connection manager
config: i386-randconfig-m021-20200911 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Reported-by: Dan Carpenter <dan.carpenter(a)oracle.com>
smatch warnings:
net/rxrpc/conn_client.c:722 rxrpc_connect_call() error: 'bundle' dereferencing possible ERR_PTR()
# https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commi...
git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
git fetch --no-tags linux-next master
git checkout 245500d853e9f20036cec7df4f6984ece4c6bf26
vim +494 net/rxrpc/conn_client.c
697 int rxrpc_connect_call(struct rxrpc_sock *rx,
698 struct rxrpc_call *call,
699 struct rxrpc_conn_parameters *cp,
700 struct sockaddr_rxrpc *srx,
701 gfp_t gfp)
702 {
703 struct rxrpc_bundle *bundle;
704 struct rxrpc_net *rxnet = cp->local->rxnet;
705 int ret = 0;
706
707 _enter("{%d,%lx},", call->debug_id, call->user_call_ID);
708
709 rxrpc_discard_expired_client_conns(&rxnet->client_conn_reaper);
710
711 bundle = rxrpc_prep_call(rx, call, cp, srx, gfp);
712 if (IS_ERR(bundle)) {
713 ret = PTR_ERR(bundle);
714 goto out;
^^^^^^^^
715 }
716
717 if (call->state == RXRPC_CALL_CLIENT_AWAIT_CONN) {
718 ret = rxrpc_wait_for_channel(bundle, call, gfp);
719 if (ret < 0)
720 goto wait_failed;
721 }
722
723 granted_channel:
724 /* Paired with the write barrier in rxrpc_activate_one_channel(). */
725 smp_rmb();
726
727 out:
728 rxrpc_put_bundle(bundle);
^^^^^^
Dereferenced inside function.
729 _leave(" = %d", ret);
730 return ret;
731
732 wait_failed:
733 spin_lock(&bundle->channel_lock);
734 list_del_init(&call->chan_wait_link);
735 spin_unlock(&bundle->channel_lock);
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
[m68knommu:for-next 1/1] arch/m68k/kernel/signal.c:923:16: sparse: sparse: incorrect type in initializer (different address spaces)
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu.git for-next
head: ef03e4545eac3137f37604daef09019dd638b17e
commit: ef03e4545eac3137f37604daef09019dd638b17e [1/1] m68knommu: switch to using asm-generic/uaccess.h
config: m68k-randconfig-s032-20200913 (attached as .config)
compiler: m68k-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.2-191-g10164920-dirty
git checkout ef03e4545eac3137f37604daef09019dd638b17e
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=m68k
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> arch/m68k/kernel/signal.c:923:16: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected char [noderef] __user *__x @@ got void * @@
>> arch/m68k/kernel/signal.c:923:16: sparse: expected char [noderef] __user *__x
arch/m68k/kernel/signal.c:923:16: sparse: got void *
arch/m68k/kernel/signal.c:1007:16: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected char [noderef] __user *__x @@ got void * @@
arch/m68k/kernel/signal.c:1007:16: sparse: expected char [noderef] __user *__x
arch/m68k/kernel/signal.c:1007:16: sparse: got void *
# https://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu.git/commit...
git remote add m68knommu https://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu.git
git fetch --no-tags m68knommu for-next
git checkout ef03e4545eac3137f37604daef09019dd638b17e
vim +923 arch/m68k/kernel/signal.c
0c22fafd312cd86 Greg Ungerer 2012-03-14 783
a95517992a37488 Greg Ungerer 2016-02-15 @784 asmlinkage int do_sigreturn(struct pt_regs *regs, struct switch_stack *sw)
0c22fafd312cd86 Greg Ungerer 2012-03-14 785 {
0c22fafd312cd86 Greg Ungerer 2012-03-14 786 unsigned long usp = rdusp();
0c22fafd312cd86 Greg Ungerer 2012-03-14 787 struct sigframe __user *frame = (struct sigframe __user *)(usp - 4);
0c22fafd312cd86 Greg Ungerer 2012-03-14 788 sigset_t set;
0c22fafd312cd86 Greg Ungerer 2012-03-14 789
96d4f267e40f950 Linus Torvalds 2019-01-03 790 if (!access_ok(frame, sizeof(*frame)))
0c22fafd312cd86 Greg Ungerer 2012-03-14 791 goto badframe;
0c22fafd312cd86 Greg Ungerer 2012-03-14 792 if (__get_user(set.sig[0], &frame->sc.sc_mask) ||
0c22fafd312cd86 Greg Ungerer 2012-03-14 793 (_NSIG_WORDS > 1 &&
0c22fafd312cd86 Greg Ungerer 2012-03-14 794 __copy_from_user(&set.sig[1], &frame->extramask,
0c22fafd312cd86 Greg Ungerer 2012-03-14 795 sizeof(frame->extramask))))
0c22fafd312cd86 Greg Ungerer 2012-03-14 796 goto badframe;
0c22fafd312cd86 Greg Ungerer 2012-03-14 797
43a35995562495b Matt Fleming 2012-05-11 798 set_current_blocked(&set);
0c22fafd312cd86 Greg Ungerer 2012-03-14 799
0c22fafd312cd86 Greg Ungerer 2012-03-14 800 if (restore_sigcontext(regs, &frame->sc, frame + 1))
0c22fafd312cd86 Greg Ungerer 2012-03-14 801 goto badframe;
0c22fafd312cd86 Greg Ungerer 2012-03-14 802 return regs->d0;
0c22fafd312cd86 Greg Ungerer 2012-03-14 803
0c22fafd312cd86 Greg Ungerer 2012-03-14 804 badframe:
3cf5d076fb4d489 Eric W. Biederman 2019-05-23 805 force_sig(SIGSEGV);
0c22fafd312cd86 Greg Ungerer 2012-03-14 806 return 0;
0c22fafd312cd86 Greg Ungerer 2012-03-14 807 }
0c22fafd312cd86 Greg Ungerer 2012-03-14 808
a95517992a37488 Greg Ungerer 2016-02-15 809 asmlinkage int do_rt_sigreturn(struct pt_regs *regs, struct switch_stack *sw)
0c22fafd312cd86 Greg Ungerer 2012-03-14 810 {
0c22fafd312cd86 Greg Ungerer 2012-03-14 811 unsigned long usp = rdusp();
0c22fafd312cd86 Greg Ungerer 2012-03-14 812 struct rt_sigframe __user *frame = (struct rt_sigframe __user *)(usp - 4);
0c22fafd312cd86 Greg Ungerer 2012-03-14 813 sigset_t set;
0c22fafd312cd86 Greg Ungerer 2012-03-14 814
96d4f267e40f950 Linus Torvalds 2019-01-03 815 if (!access_ok(frame, sizeof(*frame)))
0c22fafd312cd86 Greg Ungerer 2012-03-14 816 goto badframe;
0c22fafd312cd86 Greg Ungerer 2012-03-14 817 if (__copy_from_user(&set, &frame->uc.uc_sigmask, sizeof(set)))
0c22fafd312cd86 Greg Ungerer 2012-03-14 818 goto badframe;
0c22fafd312cd86 Greg Ungerer 2012-03-14 819
43a35995562495b Matt Fleming 2012-05-11 820 set_current_blocked(&set);
0c22fafd312cd86 Greg Ungerer 2012-03-14 821
0c22fafd312cd86 Greg Ungerer 2012-03-14 822 if (rt_restore_ucontext(regs, sw, &frame->uc))
0c22fafd312cd86 Greg Ungerer 2012-03-14 823 goto badframe;
0c22fafd312cd86 Greg Ungerer 2012-03-14 824 return regs->d0;
0c22fafd312cd86 Greg Ungerer 2012-03-14 825
0c22fafd312cd86 Greg Ungerer 2012-03-14 826 badframe:
3cf5d076fb4d489 Eric W. Biederman 2019-05-23 827 force_sig(SIGSEGV);
0c22fafd312cd86 Greg Ungerer 2012-03-14 828 return 0;
0c22fafd312cd86 Greg Ungerer 2012-03-14 829 }
0c22fafd312cd86 Greg Ungerer 2012-03-14 830
0c22fafd312cd86 Greg Ungerer 2012-03-14 831 static void setup_sigcontext(struct sigcontext *sc, struct pt_regs *regs,
0c22fafd312cd86 Greg Ungerer 2012-03-14 832 unsigned long mask)
0c22fafd312cd86 Greg Ungerer 2012-03-14 833 {
0c22fafd312cd86 Greg Ungerer 2012-03-14 834 sc->sc_mask = mask;
0c22fafd312cd86 Greg Ungerer 2012-03-14 835 sc->sc_usp = rdusp();
0c22fafd312cd86 Greg Ungerer 2012-03-14 836 sc->sc_d0 = regs->d0;
0c22fafd312cd86 Greg Ungerer 2012-03-14 837 sc->sc_d1 = regs->d1;
0c22fafd312cd86 Greg Ungerer 2012-03-14 838 sc->sc_a0 = regs->a0;
0c22fafd312cd86 Greg Ungerer 2012-03-14 839 sc->sc_a1 = regs->a1;
0c22fafd312cd86 Greg Ungerer 2012-03-14 840 sc->sc_sr = regs->sr;
0c22fafd312cd86 Greg Ungerer 2012-03-14 841 sc->sc_pc = regs->pc;
0c22fafd312cd86 Greg Ungerer 2012-03-14 842 sc->sc_formatvec = regs->format << 12 | regs->vector;
0c22fafd312cd86 Greg Ungerer 2012-03-14 843 save_a5_state(sc, regs);
0c22fafd312cd86 Greg Ungerer 2012-03-14 844 save_fpu_state(sc, regs);
0c22fafd312cd86 Greg Ungerer 2012-03-14 845 }
0c22fafd312cd86 Greg Ungerer 2012-03-14 846
0c22fafd312cd86 Greg Ungerer 2012-03-14 847 static inline int rt_setup_ucontext(struct ucontext __user *uc, struct pt_regs *regs)
0c22fafd312cd86 Greg Ungerer 2012-03-14 848 {
0c22fafd312cd86 Greg Ungerer 2012-03-14 849 struct switch_stack *sw = (struct switch_stack *)regs - 1;
0c22fafd312cd86 Greg Ungerer 2012-03-14 850 greg_t __user *gregs = uc->uc_mcontext.gregs;
0c22fafd312cd86 Greg Ungerer 2012-03-14 851 int err = 0;
0c22fafd312cd86 Greg Ungerer 2012-03-14 852
0c22fafd312cd86 Greg Ungerer 2012-03-14 853 err |= __put_user(MCONTEXT_VERSION, &uc->uc_mcontext.version);
0c22fafd312cd86 Greg Ungerer 2012-03-14 854 err |= __put_user(regs->d0, &gregs[0]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 855 err |= __put_user(regs->d1, &gregs[1]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 856 err |= __put_user(regs->d2, &gregs[2]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 857 err |= __put_user(regs->d3, &gregs[3]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 858 err |= __put_user(regs->d4, &gregs[4]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 859 err |= __put_user(regs->d5, &gregs[5]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 860 err |= __put_user(sw->d6, &gregs[6]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 861 err |= __put_user(sw->d7, &gregs[7]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 862 err |= __put_user(regs->a0, &gregs[8]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 863 err |= __put_user(regs->a1, &gregs[9]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 864 err |= __put_user(regs->a2, &gregs[10]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 865 err |= __put_user(sw->a3, &gregs[11]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 866 err |= __put_user(sw->a4, &gregs[12]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 867 err |= __put_user(sw->a5, &gregs[13]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 868 err |= __put_user(sw->a6, &gregs[14]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 869 err |= __put_user(rdusp(), &gregs[15]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 870 err |= __put_user(regs->pc, &gregs[16]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 871 err |= __put_user(regs->sr, &gregs[17]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 872 err |= __put_user((regs->format << 12) | regs->vector, &uc->uc_formatvec);
0c22fafd312cd86 Greg Ungerer 2012-03-14 873 err |= rt_save_fpu_state(uc, regs);
0c22fafd312cd86 Greg Ungerer 2012-03-14 874 return err;
0c22fafd312cd86 Greg Ungerer 2012-03-14 875 }
0c22fafd312cd86 Greg Ungerer 2012-03-14 876
0c22fafd312cd86 Greg Ungerer 2012-03-14 877 static inline void __user *
36992f2893d224a Richard Weinberger 2014-03-05 878 get_sigframe(struct ksignal *ksig, size_t frame_size)
0c22fafd312cd86 Greg Ungerer 2012-03-14 879 {
36992f2893d224a Richard Weinberger 2014-03-05 880 unsigned long usp = sigsp(rdusp(), ksig);
0c22fafd312cd86 Greg Ungerer 2012-03-14 881
0c22fafd312cd86 Greg Ungerer 2012-03-14 882 return (void __user *)((usp - frame_size) & -8UL);
0c22fafd312cd86 Greg Ungerer 2012-03-14 883 }
0c22fafd312cd86 Greg Ungerer 2012-03-14 884
0d97500d3930126 Richard Weinberger 2013-10-07 885 static int setup_frame(struct ksignal *ksig, sigset_t *set,
0d97500d3930126 Richard Weinberger 2013-10-07 886 struct pt_regs *regs)
0c22fafd312cd86 Greg Ungerer 2012-03-14 887 {
0c22fafd312cd86 Greg Ungerer 2012-03-14 888 struct sigframe __user *frame;
0c22fafd312cd86 Greg Ungerer 2012-03-14 889 int fsize = frame_extra_sizes(regs->format);
0c22fafd312cd86 Greg Ungerer 2012-03-14 890 struct sigcontext context;
0d97500d3930126 Richard Weinberger 2013-10-07 891 int err = 0, sig = ksig->sig;
0c22fafd312cd86 Greg Ungerer 2012-03-14 892
0c22fafd312cd86 Greg Ungerer 2012-03-14 893 if (fsize < 0) {
7c79e1eef8c9a72 Geert Uytterhoeven 2016-12-06 894 pr_debug("setup_frame: Unknown frame format %#x\n",
0c22fafd312cd86 Greg Ungerer 2012-03-14 895 regs->format);
0d97500d3930126 Richard Weinberger 2013-10-07 896 return -EFAULT;
0c22fafd312cd86 Greg Ungerer 2012-03-14 897 }
0c22fafd312cd86 Greg Ungerer 2012-03-14 898
36992f2893d224a Richard Weinberger 2014-03-05 899 frame = get_sigframe(ksig, sizeof(*frame) + fsize);
0c22fafd312cd86 Greg Ungerer 2012-03-14 900
0c22fafd312cd86 Greg Ungerer 2012-03-14 901 if (fsize)
0c22fafd312cd86 Greg Ungerer 2012-03-14 902 err |= copy_to_user (frame + 1, regs + 1, fsize);
0c22fafd312cd86 Greg Ungerer 2012-03-14 903
a0075cd1cb79971 Richard Weinberger 2014-07-13 904 err |= __put_user(sig, &frame->sig);
0c22fafd312cd86 Greg Ungerer 2012-03-14 905
0c22fafd312cd86 Greg Ungerer 2012-03-14 906 err |= __put_user(regs->vector, &frame->code);
0c22fafd312cd86 Greg Ungerer 2012-03-14 907 err |= __put_user(&frame->sc, &frame->psc);
0c22fafd312cd86 Greg Ungerer 2012-03-14 908
0c22fafd312cd86 Greg Ungerer 2012-03-14 909 if (_NSIG_WORDS > 1)
0c22fafd312cd86 Greg Ungerer 2012-03-14 910 err |= copy_to_user(frame->extramask, &set->sig[1],
0c22fafd312cd86 Greg Ungerer 2012-03-14 911 sizeof(frame->extramask));
0c22fafd312cd86 Greg Ungerer 2012-03-14 912
0c22fafd312cd86 Greg Ungerer 2012-03-14 913 setup_sigcontext(&context, regs, set->sig[0]);
0c22fafd312cd86 Greg Ungerer 2012-03-14 914 err |= copy_to_user (&frame->sc, &context, sizeof(context));
0c22fafd312cd86 Greg Ungerer 2012-03-14 915
0c22fafd312cd86 Greg Ungerer 2012-03-14 916 /* Set up to return from userspace. */
0c22fafd312cd86 Greg Ungerer 2012-03-14 917 #ifdef CONFIG_MMU
0c22fafd312cd86 Greg Ungerer 2012-03-14 918 err |= __put_user(frame->retcode, &frame->pretcode);
0c22fafd312cd86 Greg Ungerer 2012-03-14 919 /* moveq #,d0; trap #0 */
0c22fafd312cd86 Greg Ungerer 2012-03-14 920 err |= __put_user(0x70004e40 + (__NR_sigreturn << 16),
0c22fafd312cd86 Greg Ungerer 2012-03-14 921 (long __user *)(frame->retcode));
0c22fafd312cd86 Greg Ungerer 2012-03-14 922 #else
0c22fafd312cd86 Greg Ungerer 2012-03-14 @923 err |= __put_user((void *) ret_from_user_signal, &frame->pretcode);
0c22fafd312cd86 Greg Ungerer 2012-03-14 924 #endif
0c22fafd312cd86 Greg Ungerer 2012-03-14 925
0c22fafd312cd86 Greg Ungerer 2012-03-14 926 if (err)
0d97500d3930126 Richard Weinberger 2013-10-07 927 return -EFAULT;
0c22fafd312cd86 Greg Ungerer 2012-03-14 928
0c22fafd312cd86 Greg Ungerer 2012-03-14 929 push_cache ((unsigned long) &frame->retcode);
0c22fafd312cd86 Greg Ungerer 2012-03-14 930
0c22fafd312cd86 Greg Ungerer 2012-03-14 931 /*
0c22fafd312cd86 Greg Ungerer 2012-03-14 932 * Set up registers for signal handler. All the state we are about
0c22fafd312cd86 Greg Ungerer 2012-03-14 933 * to destroy is successfully copied to sigframe.
0c22fafd312cd86 Greg Ungerer 2012-03-14 934 */
0c22fafd312cd86 Greg Ungerer 2012-03-14 935 wrusp ((unsigned long) frame);
0d97500d3930126 Richard Weinberger 2013-10-07 936 regs->pc = (unsigned long) ksig->ka.sa.sa_handler;
0c22fafd312cd86 Greg Ungerer 2012-03-14 937 adjustformat(regs);
0c22fafd312cd86 Greg Ungerer 2012-03-14 938
0c22fafd312cd86 Greg Ungerer 2012-03-14 939 /*
0c22fafd312cd86 Greg Ungerer 2012-03-14 940 * This is subtle; if we build more than one sigframe, all but the
0c22fafd312cd86 Greg Ungerer 2012-03-14 941 * first one will see frame format 0 and have fsize == 0, so we won't
0c22fafd312cd86 Greg Ungerer 2012-03-14 942 * screw stkadj.
0c22fafd312cd86 Greg Ungerer 2012-03-14 943 */
0c22fafd312cd86 Greg Ungerer 2012-03-14 944 if (fsize)
0c22fafd312cd86 Greg Ungerer 2012-03-14 945 regs->stkadj = fsize;
0c22fafd312cd86 Greg Ungerer 2012-03-14 946
0c22fafd312cd86 Greg Ungerer 2012-03-14 947 /* Prepare to skip over the extra stuff in the exception frame. */
0c22fafd312cd86 Greg Ungerer 2012-03-14 948 if (regs->stkadj) {
0c22fafd312cd86 Greg Ungerer 2012-03-14 949 struct pt_regs *tregs =
0c22fafd312cd86 Greg Ungerer 2012-03-14 950 (struct pt_regs *)((ulong)regs + regs->stkadj);
7c79e1eef8c9a72 Geert Uytterhoeven 2016-12-06 951 pr_debug("Performing stackadjust=%04lx\n", regs->stkadj);
0c22fafd312cd86 Greg Ungerer 2012-03-14 952 /* This must be copied with decreasing addresses to
0c22fafd312cd86 Greg Ungerer 2012-03-14 953 handle overlaps. */
0c22fafd312cd86 Greg Ungerer 2012-03-14 954 tregs->vector = 0;
0c22fafd312cd86 Greg Ungerer 2012-03-14 955 tregs->format = 0;
0c22fafd312cd86 Greg Ungerer 2012-03-14 956 tregs->pc = regs->pc;
0c22fafd312cd86 Greg Ungerer 2012-03-14 957 tregs->sr = regs->sr;
0c22fafd312cd86 Greg Ungerer 2012-03-14 958 }
0c22fafd312cd86 Greg Ungerer 2012-03-14 959 return 0;
0c22fafd312cd86 Greg Ungerer 2012-03-14 960 }
0c22fafd312cd86 Greg Ungerer 2012-03-14 961
:::::: The code at line 923 was first introduced by commit
:::::: 0c22fafd312cd8658ca23f6067a20aec0781c02a m68k: merge the MMU and non-MMU signal.c code
:::::: TO: Greg Ungerer <gerg(a)uclinux.org>
:::::: CC: Greg Ungerer <gerg(a)uclinux.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
[linux-next:master 1077/7089] ERROR: modpost: "rproc_get_by_phandle" undefined!
by kernel test robot
Hi Govind,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: d5b2251d63b5344ee827d3680fa79bdb9f9ddfa1
commit: 1ff8ed786d5d8ed6d109affe6d732dfc85a45b2e [1077/7089] ath11k: use remoteproc only with AHB devices
config: microblaze-randconfig-r033-20200911 (attached as .config)
compiler: microblaze-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 1ff8ed786d5d8ed6d109affe6d732dfc85a45b2e
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=microblaze
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>, old ones prefixed by <<):
ERROR: modpost: "min_low_pfn" [net/mac80211/mac80211.ko] undefined!
ERROR: modpost: "min_low_pfn" [net/9p/9pnet_virtio.ko] undefined!
ERROR: modpost: "min_low_pfn" [net/wireless/lib80211_crypt_ccmp.ko] undefined!
ERROR: modpost: "min_low_pfn" [drivers/mtd/nand/raw/cadence-nand-controller.ko] undefined!
ERROR: modpost: "min_low_pfn" [drivers/mtd/nand/raw/nand.ko] undefined!
ERROR: modpost: "min_low_pfn" [drivers/hwtracing/intel_th/intel_th_msu_sink.ko] undefined!
ERROR: modpost: "min_low_pfn" [drivers/hwtracing/intel_th/intel_th_msu.ko] undefined!
ERROR: modpost: "min_low_pfn" [drivers/mmc/core/mmc_core.ko] undefined!
ERROR: modpost: "min_low_pfn" [drivers/usb/misc/usbtest.ko] undefined!
ERROR: modpost: "min_low_pfn" [drivers/net/virtio_net.ko] undefined!
>> ERROR: modpost: "rproc_get_by_phandle" [drivers/net/wireless/ath/ath11k/ath11k.ko] undefined!
ERROR: modpost: "min_low_pfn" [drivers/net/wireless/ath/ath6kl/ath6kl_sdio.ko] undefined!
ERROR: modpost: "min_low_pfn" [crypto/tcrypt.ko] undefined!
ERROR: modpost: "min_low_pfn" [crypto/asymmetric_keys/public_key.ko] undefined!
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
drivers/net/wireless/realtek/rtw88/pci.c:1477:5: warning: no previous prototype for 'rtw_pci_probe'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: ef2e9a563b0cd7965e2a1263125dcbb1c86aa6cc
commit: ba0fbe236fb8a7b992e82d6eafb03a600f5eba43 rtw88: extract: make 8822c an individual kernel module
date: 4 months ago
config: i386-randconfig-r034-20200913 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
git checkout ba0fbe236fb8a7b992e82d6eafb03a600f5eba43
# save the attached .config to linux build tree
make W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> drivers/net/wireless/realtek/rtw88/pci.c:1477:5: warning: no previous prototype for 'rtw_pci_probe' [-Wmissing-prototypes]
1477 | int rtw_pci_probe(struct pci_dev *pdev,
| ^~~~~~~~~~~~~
>> drivers/net/wireless/realtek/rtw88/pci.c:1557:6: warning: no previous prototype for 'rtw_pci_remove' [-Wmissing-prototypes]
1557 | void rtw_pci_remove(struct pci_dev *pdev)
| ^~~~~~~~~~~~~~
>> drivers/net/wireless/realtek/rtw88/pci.c:1579:6: warning: no previous prototype for 'rtw_pci_shutdown' [-Wmissing-prototypes]
1579 | void rtw_pci_shutdown(struct pci_dev *pdev)
| ^~~~~~~~~~~~~~~~
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout ba0fbe236fb8a7b992e82d6eafb03a600f5eba43
vim +/rtw_pci_probe +1477 drivers/net/wireless/realtek/rtw88/pci.c
79066903454b0fe Yu-Yen Ting 2019-09-03 1476
72f256c2b948622 Zong-Zhe Yang 2020-05-15 @1477 int rtw_pci_probe(struct pci_dev *pdev,
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1478 const struct pci_device_id *id)
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1479 {
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1480 struct ieee80211_hw *hw;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1481 struct rtw_dev *rtwdev;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1482 int drv_data_size;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1483 int ret;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1484
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1485 drv_data_size = sizeof(struct rtw_dev) + sizeof(struct rtw_pci);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1486 hw = ieee80211_alloc_hw(drv_data_size, &rtw_ops);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1487 if (!hw) {
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1488 dev_err(&pdev->dev, "failed to allocate hw\n");
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1489 return -ENOMEM;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1490 }
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1491
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1492 rtwdev = hw->priv;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1493 rtwdev->hw = hw;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1494 rtwdev->dev = &pdev->dev;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1495 rtwdev->chip = (struct rtw_chip_info *)id->driver_data;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1496 rtwdev->hci.ops = &rtw_pci_ops;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1497 rtwdev->hci.type = RTW_HCI_TYPE_PCIE;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1498
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1499 ret = rtw_core_init(rtwdev);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1500 if (ret)
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1501 goto err_release_hw;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1502
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1503 rtw_dbg(rtwdev, RTW_DBG_PCI,
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1504 "rtw88 pci probe: vendor=0x%4.04X device=0x%4.04X rev=%d\n",
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1505 pdev->vendor, pdev->device, pdev->revision);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1506
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1507 ret = rtw_pci_claim(rtwdev, pdev);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1508 if (ret) {
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1509 rtw_err(rtwdev, "failed to claim pci device\n");
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1510 goto err_deinit_core;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1511 }
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1512
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1513 ret = rtw_pci_setup_resource(rtwdev, pdev);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1514 if (ret) {
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1515 rtw_err(rtwdev, "failed to setup pci resources\n");
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1516 goto err_pci_declaim;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1517 }
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1518
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1519 ret = rtw_chip_info_setup(rtwdev);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1520 if (ret) {
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1521 rtw_err(rtwdev, "failed to setup chip information\n");
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1522 goto err_destroy_pci;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1523 }
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1524
474264d5a6b7db4 Yan-Hsuan Chuang 2019-10-08 1525 rtw_pci_phy_cfg(rtwdev);
474264d5a6b7db4 Yan-Hsuan Chuang 2019-10-08 1526
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1527 ret = rtw_register_hw(rtwdev, hw);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1528 if (ret) {
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1529 rtw_err(rtwdev, "failed to register hw\n");
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1530 goto err_destroy_pci;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1531 }
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1532
79066903454b0fe Yu-Yen Ting 2019-09-03 1533 ret = rtw_pci_request_irq(rtwdev, pdev);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1534 if (ret) {
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1535 ieee80211_unregister_hw(hw);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1536 goto err_destroy_pci;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1537 }
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1538
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1539 return 0;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1540
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1541 err_destroy_pci:
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1542 rtw_pci_destroy(rtwdev, pdev);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1543
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1544 err_pci_declaim:
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1545 rtw_pci_declaim(rtwdev, pdev);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1546
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1547 err_deinit_core:
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1548 rtw_core_deinit(rtwdev);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1549
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1550 err_release_hw:
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1551 ieee80211_free_hw(hw);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1552
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1553 return ret;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1554 }
72f256c2b948622 Zong-Zhe Yang 2020-05-15 1555 EXPORT_SYMBOL(rtw_pci_probe);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1556
72f256c2b948622 Zong-Zhe Yang 2020-05-15 @1557 void rtw_pci_remove(struct pci_dev *pdev)
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1558 {
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1559 struct ieee80211_hw *hw = pci_get_drvdata(pdev);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1560 struct rtw_dev *rtwdev;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1561 struct rtw_pci *rtwpci;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1562
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1563 if (!hw)
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1564 return;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1565
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1566 rtwdev = hw->priv;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1567 rtwpci = (struct rtw_pci *)rtwdev->priv;
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1568
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1569 rtw_unregister_hw(rtwdev, hw);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1570 rtw_pci_disable_interrupt(rtwdev, rtwpci);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1571 rtw_pci_destroy(rtwdev, pdev);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1572 rtw_pci_declaim(rtwdev, pdev);
79066903454b0fe Yu-Yen Ting 2019-09-03 1573 rtw_pci_free_irq(rtwdev, pdev);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1574 rtw_core_deinit(rtwdev);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1575 ieee80211_free_hw(hw);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1576 }
72f256c2b948622 Zong-Zhe Yang 2020-05-15 1577 EXPORT_SYMBOL(rtw_pci_remove);
e3037485c68ec1a Yan-Hsuan Chuang 2019-04-26 1578
72f256c2b948622 Zong-Zhe Yang 2020-05-15 @1579 void rtw_pci_shutdown(struct pci_dev *pdev)
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1580 {
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1581 struct ieee80211_hw *hw = pci_get_drvdata(pdev);
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1582 struct rtw_dev *rtwdev;
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1583 struct rtw_chip_info *chip;
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1584
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1585 if (!hw)
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1586 return;
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1587
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1588 rtwdev = hw->priv;
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1589 chip = rtwdev->chip;
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1590
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1591 if (chip->ops->shutdown)
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1592 chip->ops->shutdown(rtwdev);
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1593 }
72f256c2b948622 Zong-Zhe Yang 2020-05-15 1594 EXPORT_SYMBOL(rtw_pci_shutdown);
05202746ed70ea9 Ping-Ke Shih 2020-05-12 1595
:::::: The code at line 1477 was first introduced by commit
:::::: 72f256c2b948622cc45ff8bc0456dd6039d8fe36 rtw88: extract: export symbols about pci interface
:::::: TO: Zong-Zhe Yang <kevin_yang(a)realtek.com>
:::::: CC: Kalle Valo <kvalo(a)codeaurora.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
drivers/net/hamradio/dmascc.c:1238:56: sparse: sparse: non size-preserving pointer to integer cast
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 856deb866d16e29bd65952e0289066f6078af773
commit: 80591e61a0f7e88deaada69844e4a31280c4a38f kbuild: tell sparse about the $ARCH
date: 10 months ago
config: alpha-randconfig-s031-20200914 (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.2-191-g10164920-dirty
git checkout 80591e61a0f7e88deaada69844e4a31280c4a38f
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=alpha
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/net/hamradio/dmascc.c:1238:56: sparse: sparse: non size-preserving pointer to integer cast
drivers/net/hamradio/dmascc.c:978:48: sparse: sparse: non size-preserving pointer to integer cast
drivers/net/hamradio/dmascc.c:1025:48: sparse: sparse: non size-preserving pointer to integer cast
drivers/net/hamradio/dmascc.c:1025:48: sparse: sparse: non size-preserving pointer to integer cast
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 80591e61a0f7e88deaada69844e4a31280c4a38f
vim +1238 drivers/net/hamradio/dmascc.c
^1da177e4c3f41 Linus Torvalds 2005-04-16 1180
^1da177e4c3f41 Linus Torvalds 2005-04-16 1181
^1da177e4c3f41 Linus Torvalds 2005-04-16 1182 static void special_condition(struct scc_priv *priv, int rc)
^1da177e4c3f41 Linus Torvalds 2005-04-16 1183 {
^1da177e4c3f41 Linus Torvalds 2005-04-16 1184 int cb;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1185 unsigned long flags;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1186
^1da177e4c3f41 Linus Torvalds 2005-04-16 1187 /* See Figure 2-15. Only overrun and EOF need to be checked. */
^1da177e4c3f41 Linus Torvalds 2005-04-16 1188
^1da177e4c3f41 Linus Torvalds 2005-04-16 1189 if (rc & Rx_OVR) {
^1da177e4c3f41 Linus Torvalds 2005-04-16 1190 /* Receiver overrun */
^1da177e4c3f41 Linus Torvalds 2005-04-16 1191 priv->rx_over = 1;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1192 if (priv->param.dma < 0)
^1da177e4c3f41 Linus Torvalds 2005-04-16 1193 write_scc(priv, R0, ERR_RES);
^1da177e4c3f41 Linus Torvalds 2005-04-16 1194 } else if (rc & END_FR) {
^1da177e4c3f41 Linus Torvalds 2005-04-16 1195 /* End of frame. Get byte count */
^1da177e4c3f41 Linus Torvalds 2005-04-16 1196 if (priv->param.dma >= 0) {
^1da177e4c3f41 Linus Torvalds 2005-04-16 1197 flags = claim_dma_lock();
^1da177e4c3f41 Linus Torvalds 2005-04-16 1198 cb = BUF_SIZE - get_dma_residue(priv->param.dma) -
^1da177e4c3f41 Linus Torvalds 2005-04-16 1199 2;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1200 release_dma_lock(flags);
^1da177e4c3f41 Linus Torvalds 2005-04-16 1201 } else {
^1da177e4c3f41 Linus Torvalds 2005-04-16 1202 cb = priv->rx_ptr - 2;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1203 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 1204 if (priv->rx_over) {
^1da177e4c3f41 Linus Torvalds 2005-04-16 1205 /* We had an overrun */
13c0582d91ab63 Stephen Hemminger 2009-01-09 1206 priv->dev->stats.rx_errors++;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1207 if (priv->rx_over == 2)
13c0582d91ab63 Stephen Hemminger 2009-01-09 1208 priv->dev->stats.rx_length_errors++;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1209 else
13c0582d91ab63 Stephen Hemminger 2009-01-09 1210 priv->dev->stats.rx_fifo_errors++;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1211 priv->rx_over = 0;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1212 } else if (rc & CRC_ERR) {
^1da177e4c3f41 Linus Torvalds 2005-04-16 1213 /* Count invalid CRC only if packet length >= minimum */
^1da177e4c3f41 Linus Torvalds 2005-04-16 1214 if (cb >= 15) {
13c0582d91ab63 Stephen Hemminger 2009-01-09 1215 priv->dev->stats.rx_errors++;
13c0582d91ab63 Stephen Hemminger 2009-01-09 1216 priv->dev->stats.rx_crc_errors++;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1217 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 1218 } else {
^1da177e4c3f41 Linus Torvalds 2005-04-16 1219 if (cb >= 15) {
^1da177e4c3f41 Linus Torvalds 2005-04-16 1220 if (priv->rx_count < NUM_RX_BUF - 1) {
^1da177e4c3f41 Linus Torvalds 2005-04-16 1221 /* Put good frame in FIFO */
^1da177e4c3f41 Linus Torvalds 2005-04-16 1222 priv->rx_len[priv->rx_head] = cb;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1223 priv->rx_head =
^1da177e4c3f41 Linus Torvalds 2005-04-16 1224 (priv->rx_head +
^1da177e4c3f41 Linus Torvalds 2005-04-16 1225 1) % NUM_RX_BUF;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1226 priv->rx_count++;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1227 schedule_work(&priv->rx_work);
^1da177e4c3f41 Linus Torvalds 2005-04-16 1228 } else {
13c0582d91ab63 Stephen Hemminger 2009-01-09 1229 priv->dev->stats.rx_errors++;
13c0582d91ab63 Stephen Hemminger 2009-01-09 1230 priv->dev->stats.rx_over_errors++;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1231 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 1232 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 1233 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 1234 /* Get ready for new frame */
^1da177e4c3f41 Linus Torvalds 2005-04-16 1235 if (priv->param.dma >= 0) {
^1da177e4c3f41 Linus Torvalds 2005-04-16 1236 flags = claim_dma_lock();
^1da177e4c3f41 Linus Torvalds 2005-04-16 1237 set_dma_addr(priv->param.dma,
^1da177e4c3f41 Linus Torvalds 2005-04-16 @1238 (int) priv->rx_buf[priv->rx_head]);
^1da177e4c3f41 Linus Torvalds 2005-04-16 1239 set_dma_count(priv->param.dma, BUF_SIZE);
^1da177e4c3f41 Linus Torvalds 2005-04-16 1240 release_dma_lock(flags);
^1da177e4c3f41 Linus Torvalds 2005-04-16 1241 } else {
^1da177e4c3f41 Linus Torvalds 2005-04-16 1242 priv->rx_ptr = 0;
^1da177e4c3f41 Linus Torvalds 2005-04-16 1243 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 1244 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 1245 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 1246
:::::: The code at line 1238 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2
:::::: TO: Linus Torvalds <torvalds(a)ppc970.osdl.org>
:::::: CC: Linus Torvalds <torvalds(a)ppc970.osdl.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
Re: [RFC PATCH v2] PCI/portdrv: Only disable Bus Master on kexec reboot and connected PCI devices
by kernel test robot
Hi Tiezhu,
[FYI, it's a private test report for your RFC patch.]
[auto build test WARNING on pci/next]
[also build test WARNING on v5.9-rc5 next-20200911]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Tiezhu-Yang/PCI-portdrv-Only-dis...
base: https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git next
config: x86_64-randconfig-s021-20200913 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-191-g10164920-dirty
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/pci/pcie/portdrv_pci.c:167:38: sparse: sparse: restricted pci_power_t degrades to integer
drivers/pci/pcie/portdrv_pci.c:167:57: sparse: sparse: restricted pci_power_t degrades to integer
# https://github.com/0day-ci/linux/commit/554a10648754bd244b64a233c257821c4...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Tiezhu-Yang/PCI-portdrv-Only-disable-Bus-Master-on-kexec-reboot-and-connected-PCI-devices/20200914-043100
git checkout 554a10648754bd244b64a233c257821c4719be0e
vim +167 drivers/pci/pcie/portdrv_pci.c
149
150 static void pcie_portdrv_shutdown(struct pci_dev *dev)
151 {
152 if (pci_bridge_d3_possible(dev)) {
153 pm_runtime_forbid(&dev->dev);
154 pm_runtime_get_noresume(&dev->dev);
155 pm_runtime_dont_use_autosuspend(&dev->dev);
156 }
157
158 pcie_port_device_remove(dev);
159
160 /*
161 * If this is a kexec reboot, turn off Bus Master bit on the
162 * device to tell it to not continue to do DMA. Don't touch
163 * devices in D3cold or unknown states.
164 * If it is not a kexec reboot, firmware will hit the PCI
165 * devices with big hammer and stop their DMA any way.
166 */
> 167 if (kexec_in_progress && (dev->current_state <= PCI_D3hot))
168 pci_disable_device(dev);
169 }
170
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
drivers/crypto/inside-secure/safexcel_cipher.c:457:1: warning: the frame size of 1064 bytes is larger than 1024 bytes
by kernel test robot
Hi Pascal,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: ef2e9a563b0cd7965e2a1263125dcbb1c86aa6cc
commit: bb7679b840cc7cf23868e05c5ef7a044e7fafd97 crypto: inside-secure - Added support for authenc HMAC-SHA1/DES-CBC
date: 12 months ago
config: arm-randconfig-r005-20200913 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout bb7679b840cc7cf23868e05c5ef7a044e7fafd97
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
drivers/crypto/inside-secure/safexcel_cipher.c: In function 'safexcel_aead_setkey':
>> drivers/crypto/inside-secure/safexcel_cipher.c:457:1: warning: the frame size of 1064 bytes is larger than 1024 bytes [-Wframe-larger-than=]
457 | }
| ^
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout bb7679b840cc7cf23868e05c5ef7a044e7fafd97
vim +457 drivers/crypto/inside-secure/safexcel_cipher.c
1b44c5a60c137e Antoine Tenart 2017-05-24 341
77cdd4efe57134 Pascal van Leeuwen 2019-07-05 342 static int safexcel_aead_setkey(struct crypto_aead *ctfm, const u8 *key,
f6beaea304872b Antoine Tenart 2018-05-14 343 unsigned int len)
f6beaea304872b Antoine Tenart 2018-05-14 344 {
f6beaea304872b Antoine Tenart 2018-05-14 345 struct crypto_tfm *tfm = crypto_aead_tfm(ctfm);
f6beaea304872b Antoine Tenart 2018-05-14 346 struct safexcel_cipher_ctx *ctx = crypto_tfm_ctx(tfm);
f6beaea304872b Antoine Tenart 2018-05-14 347 struct safexcel_ahash_export_state istate, ostate;
f6beaea304872b Antoine Tenart 2018-05-14 348 struct safexcel_crypto_priv *priv = ctx->priv;
f6beaea304872b Antoine Tenart 2018-05-14 349 struct crypto_authenc_keys keys;
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 350 struct crypto_aes_ctx aes;
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 351 int err = -EINVAL;
f6beaea304872b Antoine Tenart 2018-05-14 352
1769f704e55b11 Pascal van Leeuwen 2019-09-13 353 if (unlikely(crypto_authenc_extractkeys(&keys, key, len)))
f6beaea304872b Antoine Tenart 2018-05-14 354 goto badkey;
f6beaea304872b Antoine Tenart 2018-05-14 355
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 356 if (ctx->mode == CONTEXT_CONTROL_CRYPTO_MODE_CTR_LOAD) {
1769f704e55b11 Pascal van Leeuwen 2019-09-13 357 /* Must have at least space for the nonce here */
1769f704e55b11 Pascal van Leeuwen 2019-09-13 358 if (unlikely(keys.enckeylen < CTR_RFC3686_NONCE_SIZE))
f6beaea304872b Antoine Tenart 2018-05-14 359 goto badkey;
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 360 /* last 4 bytes of key are the nonce! */
f26882a3475eb7 Pascal van Leeuwen 2019-07-30 361 ctx->nonce = *(u32 *)(keys.enckey + keys.enckeylen -
f26882a3475eb7 Pascal van Leeuwen 2019-07-30 362 CTR_RFC3686_NONCE_SIZE);
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 363 /* exclude the nonce here */
1769f704e55b11 Pascal van Leeuwen 2019-09-13 364 keys.enckeylen -= CTR_RFC3686_NONCE_SIZE;
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 365 }
f6beaea304872b Antoine Tenart 2018-05-14 366
f6beaea304872b Antoine Tenart 2018-05-14 367 /* Encryption key */
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 368 switch (ctx->alg) {
bb7679b840cc7c Pascal van Leeuwen 2019-09-13 369 case SAFEXCEL_DES:
bb7679b840cc7c Pascal van Leeuwen 2019-09-13 370 err = verify_aead_des_key(ctfm, keys.enckey, keys.enckeylen);
bb7679b840cc7c Pascal van Leeuwen 2019-09-13 371 if (unlikely(err))
bb7679b840cc7c Pascal van Leeuwen 2019-09-13 372 goto badkey_expflags;
bb7679b840cc7c Pascal van Leeuwen 2019-09-13 373 break;
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 374 case SAFEXCEL_3DES:
21f5a15e0f26c7 Ard Biesheuvel 2019-08-15 375 err = verify_aead_des3_key(ctfm, keys.enckey, keys.enckeylen);
77cdd4efe57134 Pascal van Leeuwen 2019-07-05 376 if (unlikely(err))
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 377 goto badkey_expflags;
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 378 break;
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 379 case SAFEXCEL_AES:
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 380 err = aes_expandkey(&aes, keys.enckey, keys.enckeylen);
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 381 if (unlikely(err))
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 382 goto badkey;
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 383 break;
1769f704e55b11 Pascal van Leeuwen 2019-09-13 384 case SAFEXCEL_SM4:
1769f704e55b11 Pascal van Leeuwen 2019-09-13 385 if (unlikely(keys.enckeylen != SM4_KEY_SIZE))
1769f704e55b11 Pascal van Leeuwen 2019-09-13 386 goto badkey;
1769f704e55b11 Pascal van Leeuwen 2019-09-13 387 break;
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 388 default:
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 389 dev_err(priv->dev, "aead: unsupported cipher algorithm\n");
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 390 goto badkey;
77cdd4efe57134 Pascal van Leeuwen 2019-07-05 391 }
77cdd4efe57134 Pascal van Leeuwen 2019-07-05 392
53c83e915ce8b2 Antoine Tenart 2018-06-28 393 if (priv->flags & EIP197_TRC_CACHE && ctx->base.ctxr_dma &&
f6beaea304872b Antoine Tenart 2018-05-14 394 memcmp(ctx->key, keys.enckey, keys.enckeylen))
f6beaea304872b Antoine Tenart 2018-05-14 395 ctx->base.needs_inv = true;
f6beaea304872b Antoine Tenart 2018-05-14 396
f6beaea304872b Antoine Tenart 2018-05-14 397 /* Auth key */
a7dea8c0ff9f25 Ofer Heifetz 2018-06-28 398 switch (ctx->hash_alg) {
01ba061d0fd769 Antoine Tenart 2018-05-14 399 case CONTEXT_CONTROL_CRYPTO_ALG_SHA1:
01ba061d0fd769 Antoine Tenart 2018-05-14 400 if (safexcel_hmac_setkey("safexcel-sha1", keys.authkey,
01ba061d0fd769 Antoine Tenart 2018-05-14 401 keys.authkeylen, &istate, &ostate))
01ba061d0fd769 Antoine Tenart 2018-05-14 402 goto badkey;
01ba061d0fd769 Antoine Tenart 2018-05-14 403 break;
678b2878ac396f Antoine Tenart 2018-05-14 404 case CONTEXT_CONTROL_CRYPTO_ALG_SHA224:
678b2878ac396f Antoine Tenart 2018-05-14 405 if (safexcel_hmac_setkey("safexcel-sha224", keys.authkey,
678b2878ac396f Antoine Tenart 2018-05-14 406 keys.authkeylen, &istate, &ostate))
678b2878ac396f Antoine Tenart 2018-05-14 407 goto badkey;
678b2878ac396f Antoine Tenart 2018-05-14 408 break;
678b2878ac396f Antoine Tenart 2018-05-14 409 case CONTEXT_CONTROL_CRYPTO_ALG_SHA256:
f6beaea304872b Antoine Tenart 2018-05-14 410 if (safexcel_hmac_setkey("safexcel-sha256", keys.authkey,
f6beaea304872b Antoine Tenart 2018-05-14 411 keys.authkeylen, &istate, &ostate))
f6beaea304872b Antoine Tenart 2018-05-14 412 goto badkey;
678b2878ac396f Antoine Tenart 2018-05-14 413 break;
ea23cb533ce419 Antoine Tenart 2018-05-29 414 case CONTEXT_CONTROL_CRYPTO_ALG_SHA384:
ea23cb533ce419 Antoine Tenart 2018-05-29 415 if (safexcel_hmac_setkey("safexcel-sha384", keys.authkey,
ea23cb533ce419 Antoine Tenart 2018-05-29 416 keys.authkeylen, &istate, &ostate))
ea23cb533ce419 Antoine Tenart 2018-05-29 417 goto badkey;
ea23cb533ce419 Antoine Tenart 2018-05-29 418 break;
87eee125e7490c Antoine Tenart 2018-05-29 419 case CONTEXT_CONTROL_CRYPTO_ALG_SHA512:
87eee125e7490c Antoine Tenart 2018-05-29 420 if (safexcel_hmac_setkey("safexcel-sha512", keys.authkey,
87eee125e7490c Antoine Tenart 2018-05-29 421 keys.authkeylen, &istate, &ostate))
87eee125e7490c Antoine Tenart 2018-05-29 422 goto badkey;
87eee125e7490c Antoine Tenart 2018-05-29 423 break;
1769f704e55b11 Pascal van Leeuwen 2019-09-13 424 case CONTEXT_CONTROL_CRYPTO_ALG_SM3:
1769f704e55b11 Pascal van Leeuwen 2019-09-13 425 if (safexcel_hmac_setkey("safexcel-sm3", keys.authkey,
1769f704e55b11 Pascal van Leeuwen 2019-09-13 426 keys.authkeylen, &istate, &ostate))
1769f704e55b11 Pascal van Leeuwen 2019-09-13 427 goto badkey;
1769f704e55b11 Pascal van Leeuwen 2019-09-13 428 break;
678b2878ac396f Antoine Tenart 2018-05-14 429 default:
a60619211dd188 Pascal van Leeuwen 2019-09-18 430 dev_err(priv->dev, "aead: unsupported hash algorithmn");
678b2878ac396f Antoine Tenart 2018-05-14 431 goto badkey;
678b2878ac396f Antoine Tenart 2018-05-14 432 }
f6beaea304872b Antoine Tenart 2018-05-14 433
f6beaea304872b Antoine Tenart 2018-05-14 434 crypto_aead_set_flags(ctfm, crypto_aead_get_flags(ctfm) &
f6beaea304872b Antoine Tenart 2018-05-14 435 CRYPTO_TFM_RES_MASK);
f6beaea304872b Antoine Tenart 2018-05-14 436
53c83e915ce8b2 Antoine Tenart 2018-06-28 437 if (priv->flags & EIP197_TRC_CACHE && ctx->base.ctxr_dma &&
f6beaea304872b Antoine Tenart 2018-05-14 438 (memcmp(ctx->ipad, istate.state, ctx->state_sz) ||
f6beaea304872b Antoine Tenart 2018-05-14 439 memcmp(ctx->opad, ostate.state, ctx->state_sz)))
f6beaea304872b Antoine Tenart 2018-05-14 440 ctx->base.needs_inv = true;
f6beaea304872b Antoine Tenart 2018-05-14 441
f6beaea304872b Antoine Tenart 2018-05-14 442 /* Now copy the keys into the context */
f6beaea304872b Antoine Tenart 2018-05-14 443 memcpy(ctx->key, keys.enckey, keys.enckeylen);
f6beaea304872b Antoine Tenart 2018-05-14 444 ctx->key_len = keys.enckeylen;
f6beaea304872b Antoine Tenart 2018-05-14 445
f6beaea304872b Antoine Tenart 2018-05-14 446 memcpy(ctx->ipad, &istate.state, ctx->state_sz);
f6beaea304872b Antoine Tenart 2018-05-14 447 memcpy(ctx->opad, &ostate.state, ctx->state_sz);
f6beaea304872b Antoine Tenart 2018-05-14 448
f6beaea304872b Antoine Tenart 2018-05-14 449 memzero_explicit(&keys, sizeof(keys));
f6beaea304872b Antoine Tenart 2018-05-14 450 return 0;
f6beaea304872b Antoine Tenart 2018-05-14 451
f6beaea304872b Antoine Tenart 2018-05-14 452 badkey:
f6beaea304872b Antoine Tenart 2018-05-14 453 crypto_aead_set_flags(ctfm, CRYPTO_TFM_RES_BAD_KEY_LEN);
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 454 badkey_expflags:
f6beaea304872b Antoine Tenart 2018-05-14 455 memzero_explicit(&keys, sizeof(keys));
0e17e3621a28a6 Pascal van Leeuwen 2019-07-05 456 return err;
f6beaea304872b Antoine Tenart 2018-05-14 @457 }
f6beaea304872b Antoine Tenart 2018-05-14 458
:::::: The code at line 457 was first introduced by commit
:::::: f6beaea304872bb1c76bf6c551386bf896cac8b9 crypto: inside-secure - authenc(hmac(sha256), cbc(aes)) support
:::::: TO: Antoine Tenart <antoine.tenart(a)bootlin.com>
:::::: CC: Herbert Xu <herbert(a)gondor.apana.org.au>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
[chrome-os:chromeos-5.4 17/18] drivers/media/virtio/virtio_video_device.c:62: undefined reference to `virtio_dma_buf_get_uuid'
by kernel test robot
tree: https://chromium.googlesource.com/chromiumos/third_party/kernel chromeos-5.4
head: ff5a1e6c7a5bcbdfb20dad7874015c71921c615d
commit: 7c5e01902547a81d7d8b073eb3f130814d9125d9 [17/18] BACKPORT: FROMGIT: virtio: fix build for configs without dma-bufs
config: x86_64-randconfig-m001-20200913 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
git checkout 7c5e01902547a81d7d8b073eb3f130814d9125d9
# save the attached .config to linux build tree
make W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
ld: drivers/media/virtio/virtio_video_device.o: in function `virtio_video_get_dma_buf_id':
>> drivers/media/virtio/virtio_video_device.c:62: undefined reference to `virtio_dma_buf_get_uuid'
>> ld: drivers/media/virtio/virtio_video_device.c:62: undefined reference to `virtio_dma_buf_get_uuid'
git remote add chrome-os https://chromium.googlesource.com/chromiumos/third_party/kernel
git fetch --no-tags chrome-os chromeos-5.4
git checkout 7c5e01902547a81d7d8b073eb3f130814d9125d9
vim +62 drivers/media/virtio/virtio_video_device.c
bbca48582a7342c Dmitry Sepp 2020-02-18 53
76447af07bd090a Keiichi Watanabe 2020-03-25 54 static int virtio_video_get_dma_buf_id(struct virtio_video_device *vvd,
76447af07bd090a Keiichi Watanabe 2020-03-25 55 struct vb2_buffer *vb, uuid_t *uuid)
76447af07bd090a Keiichi Watanabe 2020-03-25 56 {
76447af07bd090a Keiichi Watanabe 2020-03-25 57 /**
76447af07bd090a Keiichi Watanabe 2020-03-25 58 * For multiplanar formats, we assume all planes are on one DMA buffer.
76447af07bd090a Keiichi Watanabe 2020-03-25 59 */
76447af07bd090a Keiichi Watanabe 2020-03-25 60 struct dma_buf *dma_buf = dma_buf_get(vb->planes[0].m.fd);
76447af07bd090a Keiichi Watanabe 2020-03-25 61
4bc6f86266bb489 David Stevens 2020-09-02 @62 return virtio_dma_buf_get_uuid(dma_buf, uuid);
76447af07bd090a Keiichi Watanabe 2020-03-25 63 }
76447af07bd090a Keiichi Watanabe 2020-03-25 64
:::::: The code at line 62 was first introduced by commit
:::::: 4bc6f86266bb48997bfaf447010d172a75d16944 CHROMIUM: virtio: Update virtgpu buffer sharing API
:::::: TO: David Stevens <stevensd(a)chromium.org>
:::::: CC: Commit Bot <commit-bot(a)chromium.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years
Re: [PATCH] arm64/mm: Refactor {pgd, pud, pmd, pte}_ERROR()
by kernel test robot
Hi Gavin,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on arm64/for-next/core]
[also build test WARNING on soc/for-next kvmarm/next v5.9-rc4 next-20200911]
[cannot apply to arm/for-next xlnx/master]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Gavin-Shan/arm64-mm-Refactor-pgd...
base: https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-next/core
config: arm64-defconfig (attached as .config)
compiler: aarch64-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
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
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
In file included from include/linux/printk.h:7,
from include/linux/kernel.h:15,
from include/asm-generic/bug.h:20,
from arch/arm64/include/asm/bug.h:26,
from include/linux/bug.h:5,
from include/linux/mmdebug.h:5,
from include/linux/mm.h:9,
from include/linux/pagemap.h:8,
from mm/pgtable-generic.c:10:
mm/pgtable-generic.c: In function 'pgd_clear_bad':
include/linux/kern_levels.h:5:18: warning: format '%lx' expects argument of type 'long unsigned int', but argument 4 has type 'pgdval_t' {aka 'long long unsigned int'} [-Wformat=]
5 | #define KERN_SOH "\001" /* ASCII Start Of Header */
| ^~~~~~
include/linux/kern_levels.h:11:18: note: in expansion of macro 'KERN_SOH'
11 | #define KERN_ERR KERN_SOH "3" /* error conditions */
| ^~~~~~~~
include/linux/printk.h:339:9: note: in expansion of macro 'KERN_ERR'
339 | printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~~~
arch/arm64/include/asm/pgtable.h:697:2: note: in expansion of macro 'pr_err'
697 | pr_err("%s:%d: bad pgd %016lx.\n", __FILE__, __LINE__, pgd_val(e))
| ^~~~~~
mm/pgtable-generic.c:23:2: note: in expansion of macro 'pgd_ERROR'
23 | pgd_ERROR(*pgd);
| ^~~~~~~~~
In file included from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from include/linux/pagemap.h:8,
from mm/pgtable-generic.c:10:
arch/arm64/include/asm/pgtable.h:697:30: note: format string is defined here
697 | pr_err("%s:%d: bad pgd %016lx.\n", __FILE__, __LINE__, pgd_val(e))
| ~~~~~^
| |
| long unsigned int
| %016llx
In file included from include/linux/printk.h:7,
from include/linux/kernel.h:15,
from include/asm-generic/bug.h:20,
from arch/arm64/include/asm/bug.h:26,
from include/linux/bug.h:5,
from include/linux/mmdebug.h:5,
from include/linux/mm.h:9,
from include/linux/pagemap.h:8,
from mm/pgtable-generic.c:10:
mm/pgtable-generic.c: In function 'pud_clear_bad':
>> include/linux/kern_levels.h:5:18: warning: format '%lx' expects argument of type 'long unsigned int', but argument 4 has type 'pudval_t' {aka 'long long unsigned int'} [-Wformat=]
5 | #define KERN_SOH "\001" /* ASCII Start Of Header */
| ^~~~~~
include/linux/kern_levels.h:11:18: note: in expansion of macro 'KERN_SOH'
11 | #define KERN_ERR KERN_SOH "3" /* error conditions */
| ^~~~~~~~
include/linux/printk.h:339:9: note: in expansion of macro 'KERN_ERR'
339 | printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~~~
arch/arm64/include/asm/pgtable.h:637:2: note: in expansion of macro 'pr_err'
637 | pr_err("%s:%d: bad pud %016lx.\n", __FILE__, __LINE__, pud_val(e))
| ^~~~~~
mm/pgtable-generic.c:38:2: note: in expansion of macro 'pud_ERROR'
38 | pud_ERROR(*pud);
| ^~~~~~~~~
In file included from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from include/linux/pagemap.h:8,
from mm/pgtable-generic.c:10:
arch/arm64/include/asm/pgtable.h:637:30: note: format string is defined here
637 | pr_err("%s:%d: bad pud %016lx.\n", __FILE__, __LINE__, pud_val(e))
| ~~~~~^
| |
| long unsigned int
| %016llx
In file included from include/linux/printk.h:7,
from include/linux/kernel.h:15,
from include/asm-generic/bug.h:20,
from arch/arm64/include/asm/bug.h:26,
from include/linux/bug.h:5,
from include/linux/mmdebug.h:5,
from include/linux/mm.h:9,
from include/linux/pagemap.h:8,
from mm/pgtable-generic.c:10:
mm/pgtable-generic.c: In function 'pmd_clear_bad':
include/linux/kern_levels.h:5:18: warning: format '%lx' expects argument of type 'long unsigned int', but argument 4 has type 'pmdval_t' {aka 'long long unsigned int'} [-Wformat=]
5 | #define KERN_SOH "\001" /* ASCII Start Of Header */
| ^~~~~~
include/linux/kern_levels.h:11:18: note: in expansion of macro 'KERN_SOH'
11 | #define KERN_ERR KERN_SOH "3" /* error conditions */
| ^~~~~~~~
include/linux/printk.h:339:9: note: in expansion of macro 'KERN_ERR'
339 | printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~~~
arch/arm64/include/asm/pgtable.h:569:2: note: in expansion of macro 'pr_err'
569 | pr_err("%s:%d: bad pmd %016lx.\n", __FILE__, __LINE__, pmd_val(e))
| ^~~~~~
mm/pgtable-generic.c:50:2: note: in expansion of macro 'pmd_ERROR'
50 | pmd_ERROR(*pmd);
| ^~~~~~~~~
In file included from include/linux/pgtable.h:6,
from include/linux/mm.h:33,
from include/linux/pagemap.h:8,
from mm/pgtable-generic.c:10:
arch/arm64/include/asm/pgtable.h:569:30: note: format string is defined here
569 | pr_err("%s:%d: bad pmd %016lx.\n", __FILE__, __LINE__, pmd_val(e))
| ~~~~~^
| |
| long unsigned int
| %016llx
# https://github.com/0day-ci/linux/commit/cd252fb09dcb74b0e227cc8a28d08d32e...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Gavin-Shan/arm64-mm-Refactor-pgd-pud-pmd-pte-_ERROR/20200913-194714
git checkout cd252fb09dcb74b0e227cc8a28d08d32e217f084
vim +5 include/linux/kern_levels.h
314ba3520e513a Joe Perches 2012-07-30 4
04d2c8c83d0e3a Joe Perches 2012-07-30 @5 #define KERN_SOH "\001" /* ASCII Start Of Header */
04d2c8c83d0e3a Joe Perches 2012-07-30 6 #define KERN_SOH_ASCII '\001'
04d2c8c83d0e3a Joe Perches 2012-07-30 7
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
2 years