From: kbuild test robot <lkp@intel.com>
To: Jiri Kosina <jikos@kernel.org>
Cc: kbuild-all@01.org, Eric Dumazet <eric.dumazet@gmail.com>,
Jamal Hadi Salim <jhs@mojatatu.com>, Phil Sutter <phil@nwl.cc>,
netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
Cong Wang <xiyou.wangcong@gmail.com>
Subject: Re: [PATCH v5] net: sched: convert qdisc linked list to hashtable
Date: Sun, 31 Jul 2016 08:11:01 +0800 [thread overview]
Message-ID: <201607310815.gqFKOR8b%fengguang.wu@intel.com> (raw)
In-Reply-To: <alpine.LNX.2.00.1607290948270.24757@cbobk.fhfr.pm>
[-- Attachment #1: Type: text/plain, Size: 13361 bytes --]
Hi,
[auto build test ERROR on v4.7-rc7]
[also build test ERROR on next-20160729]
[cannot apply to net/master net-next/master ipsec-next/master]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Jiri-Kosina/net-sched-convert-qdisc-linked-list-to-hashtable/20160729-155412
config: arm-allmodconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (Debian 5.4.0-6) 5.4.0 20160609
reproduce:
wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
make.cross ARCH=arm
All errors (new ones prefixed by >>):
>> drivers/net/ethernet/ti/davinci_emac.c:736:57: error: macro "hash_add" requires 3 arguments, but only 2 given
static int hash_add(struct emac_priv *priv, u8 *mac_addr)
^
>> drivers/net/ethernet/ti/davinci_emac.c:737:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
{
^
>> drivers/net/ethernet/ti/davinci_emac.c:778:12: error: conflicting types for 'hash_del'
static int hash_del(struct emac_priv *priv, u8 *mac_addr)
^
In file included from include/linux/netdevice.h:55:0,
from drivers/net/ethernet/ti/davinci_emac.c:44:
include/linux/hashtable.h:104:20: note: previous definition of 'hash_del' was here
static inline void hash_del(struct hlist_node *node)
^
drivers/net/ethernet/ti/davinci_emac.c: In function 'emac_add_mcast':
drivers/net/ethernet/ti/davinci_emac.c:828:35: error: macro "hash_add" requires 3 arguments, but only 2 given
update = hash_add(priv, mac_addr);
^
>> drivers/net/ethernet/ti/davinci_emac.c:828:12: error: 'hash_add' undeclared (first use in this function)
update = hash_add(priv, mac_addr);
^
drivers/net/ethernet/ti/davinci_emac.c:828:12: note: each undeclared identifier is reported only once for each function it appears in
vim +/hash_add +736 drivers/net/ethernet/ti/davinci_emac.c
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 730 * @priv: The DaVinci EMAC private adapter structure
49ce9c2c drivers/net/ethernet/ti/davinci_emac.c Ben Hutchings 2012-07-10 731 * @mac_addr: mac address to delete from hash table
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 732 *
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 733 * Adds mac address to the internal hash table
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 734 *
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 735 */
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 @736 static int hash_add(struct emac_priv *priv, u8 *mac_addr)
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 @737 {
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 738 struct device *emac_dev = &priv->ndev->dev;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 739 u32 rc = 0;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 740 u32 hash_bit;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 741 u32 hash_value = hash_get(mac_addr);
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 742
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 743 if (hash_value >= EMAC_NUM_MULTICAST_BITS) {
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 744 if (netif_msg_drv(priv)) {
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 745 dev_err(emac_dev, "DaVinci EMAC: hash_add(): Invalid "\
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 746 "Hash %08x, should not be greater than %08x",
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 747 hash_value, (EMAC_NUM_MULTICAST_BITS - 1));
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 748 }
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 749 return -1;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 750 }
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 751
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 752 /* set the hash bit only if not previously set */
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 753 if (priv->multicast_hash_cnt[hash_value] == 0) {
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 754 rc = 1; /* hash value changed */
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 755 if (hash_value < 32) {
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 756 hash_bit = BIT(hash_value);
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 757 priv->mac_hash1 |= hash_bit;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 758 } else {
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 759 hash_bit = BIT((hash_value - 32));
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 760 priv->mac_hash2 |= hash_bit;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 761 }
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 762 }
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 763
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 764 /* incr counter for num of mcast addr's mapped to "this" hash bit */
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 765 ++priv->multicast_hash_cnt[hash_value];
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 766
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 767 return rc;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 768 }
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 769
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 770 /**
49ce9c2c drivers/net/ethernet/ti/davinci_emac.c Ben Hutchings 2012-07-10 771 * hash_del - Hash function to delete mac addr from hash table
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 772 * @priv: The DaVinci EMAC private adapter structure
49ce9c2c drivers/net/ethernet/ti/davinci_emac.c Ben Hutchings 2012-07-10 773 * @mac_addr: mac address to delete from hash table
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 774 *
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 775 * Removes mac address from the internal hash table
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 776 *
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 777 */
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 @778 static int hash_del(struct emac_priv *priv, u8 *mac_addr)
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 779 {
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 780 u32 hash_value;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 781 u32 hash_bit;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 782
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 783 hash_value = hash_get(mac_addr);
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 784 if (priv->multicast_hash_cnt[hash_value] > 0) {
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 785 /* dec cntr for num of mcast addr's mapped to this hash bit */
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 786 --priv->multicast_hash_cnt[hash_value];
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 787 }
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 788
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 789 /* if counter still > 0, at least one multicast address refers
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 790 * to this hash bit. so return 0 */
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 791 if (priv->multicast_hash_cnt[hash_value] > 0)
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 792 return 0;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 793
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 794 if (hash_value < 32) {
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 795 hash_bit = BIT(hash_value);
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 796 priv->mac_hash1 &= ~hash_bit;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 797 } else {
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 798 hash_bit = BIT((hash_value - 32));
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 799 priv->mac_hash2 &= ~hash_bit;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 800 }
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 801
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 802 /* return 1 to indicate change in mac_hash registers reqd */
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 803 return 1;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 804 }
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 805
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 806 /* EMAC multicast operation */
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 807 #define EMAC_MULTICAST_ADD 0
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 808 #define EMAC_MULTICAST_DEL 1
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 809 #define EMAC_ALL_MULTI_SET 2
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 810 #define EMAC_ALL_MULTI_CLR 3
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 811
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 812 /**
49ce9c2c drivers/net/ethernet/ti/davinci_emac.c Ben Hutchings 2012-07-10 813 * emac_add_mcast - Set multicast address in the EMAC adapter (Internal)
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 814 * @priv: The DaVinci EMAC private adapter structure
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 815 * @action: multicast operation to perform
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 816 * mac_addr: mac address to set
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 817 *
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 818 * Set multicast addresses in EMAC adapter - internal function
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 819 *
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 820 */
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 821 static void emac_add_mcast(struct emac_priv *priv, u32 action, u8 *mac_addr)
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 822 {
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 823 struct device *emac_dev = &priv->ndev->dev;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 824 int update = -1;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 825
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 826 switch (action) {
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 827 case EMAC_MULTICAST_ADD:
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 @828 update = hash_add(priv, mac_addr);
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 829 break;
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 830 case EMAC_MULTICAST_DEL:
a6286ee6 drivers/net/davinci_emac.c Anant Gole 2009-05-18 831 update = hash_del(priv, mac_addr);
:::::: The code at line 736 was first introduced by commit
:::::: a6286ee630f6d95f8466e19d7f1ae38d677028ae net: Add TI DaVinci EMAC driver
:::::: TO: Anant Gole <anantgole@ti.com>
:::::: CC: David S. Miller <davem@davemloft.net>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/octet-stream, Size: 57608 bytes --]
next prev parent reply other threads:[~2016-07-31 0:11 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-14 14:44 Deleting child qdisc doesn't reset parent to default qdisc? Jiri Kosina
2016-04-14 14:51 ` Jiri Kosina
2016-04-14 15:01 ` Eric Dumazet
2016-04-14 15:18 ` Phil Sutter
2016-04-14 15:34 ` Jiri Kosina
2016-04-14 15:44 ` Eric Dumazet
2016-04-14 16:22 ` Phil Sutter
2016-04-14 16:40 ` Eric Dumazet
2016-04-14 16:08 ` Jiri Kosina
2016-04-14 17:49 ` Eric Dumazet
2016-04-15 12:42 ` Jamal Hadi Salim
2016-04-15 14:58 ` Eric Dumazet
2016-04-15 17:13 ` David Miller
2016-06-28 15:19 ` Jiri Kosina
2016-06-28 17:28 ` Cong Wang
2016-06-28 17:33 ` Jiri Kosina
2016-06-28 16:49 ` [RFC PATCH] sch_tbf: avoid silent fallback to noop_qdisc (was Re: Deleting child qdisc doesn't reset parent to default qdisc?) Jiri Kosina
2016-07-07 9:04 ` [RFC PATCH] net: sched: convert qdisc linked list to hashtable " Jiri Kosina
2016-07-07 13:51 ` Eric Dumazet
2016-07-07 16:32 ` Jiri Kosina
2016-07-07 16:53 ` Eric Dumazet
2016-07-07 20:36 ` [RFC PATCH v2] net: sched: convert qdisc linked list to hashtable Jiri Kosina
2016-07-08 8:50 ` Eric Dumazet
2016-07-08 9:02 ` Jiri Kosina
2016-07-08 11:07 ` Thomas Graf
2016-07-08 13:52 ` Eric Dumazet
2016-07-11 14:02 ` [RFC PATCH v3] " Jiri Kosina
2016-07-12 17:36 ` Cong Wang
2016-07-13 13:47 ` Jiri Kosina
2016-07-28 9:56 ` [PATCH v4] " Jiri Kosina
2016-07-28 11:10 ` kbuild test robot
2016-07-28 11:18 ` Jiri Kosina
2016-07-28 12:53 ` Fengguang Wu
2016-07-28 16:53 ` Cong Wang
2016-07-31 11:21 ` Fengguang Wu
2016-08-01 10:12 ` Jiri Kosina
2016-07-28 11:22 ` kbuild test robot
2016-07-28 11:52 ` kbuild test robot
2016-07-28 16:52 ` Cong Wang
2016-07-29 7:49 ` [PATCH v5] " Jiri Kosina
2016-07-29 20:01 ` kbuild test robot
2016-07-31 0:11 ` kbuild test robot [this message]
2016-08-01 10:23 ` [PATCH v6] " Jiri Kosina
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201607310815.gqFKOR8b%fengguang.wu@intel.com \
--to=lkp@intel.com \
--cc=eric.dumazet@gmail.com \
--cc=jhs@mojatatu.com \
--cc=jikos@kernel.org \
--cc=kbuild-all@01.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=phil@nwl.cc \
--cc=xiyou.wangcong@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.