All of lore.kernel.org
 help / color / mirror / Atom feed
* [jpirko-mlxsw:petrm_qevent 1/11] net/sched/cls_api.c:3817:5: error: redefinition of 'tcf_qevent_init'
@ 2020-06-03 17:39 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2020-06-03 17:39 UTC (permalink / raw)
  To: kbuild-all

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

tree:   https://github.com/jpirko/linux_mlxsw petrm_qevent
head:   eb1a016306f670996d5e81cf16aecbec2c3794d8
commit: c11a64206f1ea37ad21a0d4b57cefadc566dce27 [1/11] net: sched: Introduce helpers for qevent blocks
config: x86_64-randconfig-r025-20200603 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project 16437992cac249f6fe1efd392d20e3469b47e39e)
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
        # install x86_64 cross compiling tool for clang build
        # apt-get install binutils-x86-64-linux-gnu
        git checkout c11a64206f1ea37ad21a0d4b57cefadc566dce27
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>, old ones prefixed by <<):

>> net/sched/cls_api.c:3817:5: error: redefinition of 'tcf_qevent_init'
int tcf_qevent_init(struct tcf_qevent *qe, struct Qdisc *sch,
^
include/net/pkt_cls.h:575:19: note: previous definition is here
static inline int tcf_qevent_init(struct tcf_qevent *qe, struct Qdisc *sch,
^
>> net/sched/cls_api.c:3845:6: error: redefinition of 'tcf_qevent_destroy'
void tcf_qevent_destroy(struct tcf_qevent *qe, struct Qdisc *sch)
^
include/net/pkt_cls.h:583:20: note: previous definition is here
static inline void tcf_qevent_destroy(struct tcf_qevent *qe, struct Qdisc *sch)
^
>> net/sched/cls_api.c:3852:5: error: redefinition of 'tcf_qevent_validate_change'
int tcf_qevent_validate_change(struct tcf_qevent *qe,
^
include/net/pkt_cls.h:587:19: note: previous definition is here
static inline int tcf_qevent_validate_change(struct tcf_qevent *qe,
^
>> net/sched/cls_api.c:3877:17: error: redefinition of 'tcf_qevent_handle'
struct sk_buff *tcf_qevent_handle(struct tcf_qevent *qe, struct Qdisc *sch,
^
include/net/pkt_cls.h:595:1: note: previous definition is here
tcf_qevent_handle(struct tcf_qevent *qe, struct Qdisc *sch,
^
4 errors generated.

vim +/tcf_qevent_init +3817 net/sched/cls_api.c

  3816	
> 3817	int tcf_qevent_init(struct tcf_qevent *qe, struct Qdisc *sch,
  3818			    enum flow_block_binder_type binder_type,
  3819			    struct nlattr *block_index_attr,
  3820			    struct netlink_ext_ack *extack)
  3821	{
  3822		u32 block_index;
  3823		int err;
  3824	
  3825		if (!block_index_attr)
  3826			return 0;
  3827	
  3828		err = tcf_qevent_parse_block_index(block_index_attr, &block_index,
  3829						   extack);
  3830		if (err)
  3831			return err;
  3832	
  3833		if (!block_index)
  3834			return 0;
  3835	
  3836		qe->info.binder_type = binder_type;
  3837		qe->info.chain_head_change = tcf_chain_head_change_dflt;
  3838		qe->info.chain_head_change_priv = &qe->filter_chain;
  3839		qe->info.block_index = block_index;
  3840	
  3841		return tcf_block_get_ext(&qe->block, sch, &qe->info, extack);
  3842	}
  3843	EXPORT_SYMBOL(tcf_qevent_init);
  3844	
> 3845	void tcf_qevent_destroy(struct tcf_qevent *qe, struct Qdisc *sch)
  3846	{
  3847		if (qe->info.block_index)
  3848			tcf_block_put_ext(qe->block, sch, &qe->info);
  3849	}
  3850	EXPORT_SYMBOL(tcf_qevent_destroy);
  3851	
> 3852	int tcf_qevent_validate_change(struct tcf_qevent *qe,
  3853				       struct nlattr *block_index_attr,
  3854				       struct netlink_ext_ack *extack)
  3855	{
  3856		u32 block_index;
  3857		int err;
  3858	
  3859		if (!block_index_attr)
  3860			return 0;
  3861	
  3862		err = tcf_qevent_parse_block_index(block_index_attr, &block_index,
  3863						   extack);
  3864		if (err)
  3865			return err;
  3866	
  3867		/* Bounce newly-configured block or change in block. */
  3868		if (block_index != qe->info.block_index) {
  3869			NL_SET_ERR_MSG(extack, "Change of blocks is not supported");
  3870			return -EINVAL;
  3871		}
  3872	
  3873		return 0;
  3874	}
  3875	EXPORT_SYMBOL(tcf_qevent_validate_change);
  3876	
> 3877	struct sk_buff *tcf_qevent_handle(struct tcf_qevent *qe, struct Qdisc *sch,
  3878					  struct sk_buff *skb, struct sk_buff **to_free,
  3879					  int *ret)
  3880	{
  3881		struct tcf_result cl_res;
  3882		struct tcf_proto *fl;
  3883	
  3884		if (!qe->info.block_index)
  3885			return skb;
  3886	
  3887		fl = rcu_dereference_bh(qe->filter_chain);
  3888	
  3889		switch (tcf_classify(skb, fl, &cl_res, false)) {
  3890		case TC_ACT_SHOT:
  3891			qdisc_qstats_drop(sch);
  3892			__qdisc_drop(skb, to_free);
  3893			*ret = __NET_XMIT_BYPASS;
  3894			return NULL;
  3895		case TC_ACT_STOLEN:
  3896		case TC_ACT_QUEUED:
  3897		case TC_ACT_TRAP:
  3898			__qdisc_drop(skb, to_free);
  3899			*ret = __NET_XMIT_STOLEN;
  3900			return NULL;
  3901		case TC_ACT_REDIRECT:
  3902			skb_do_redirect(skb);
  3903			*ret = __NET_XMIT_STOLEN;
  3904			return NULL;
  3905		}
  3906	
  3907		return skb;
  3908	}
  3909	EXPORT_SYMBOL(tcf_qevent_handle);
  3910	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 32846 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-06-03 17:39 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-03 17:39 [jpirko-mlxsw:petrm_qevent 1/11] net/sched/cls_api.c:3817:5: error: redefinition of 'tcf_qevent_init' kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.