From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [RFC, net-next 1/3] net: dsa: ethtool preempt ops support on slave ports
Date: Tue, 20 Oct 2020 15:25:01 +0800 [thread overview]
Message-ID: <202010201542.JHTjzuhd-lkp@intel.com> (raw)
In-Reply-To: <20201020040458.39794-2-xiaoliang.yang_1@nxp.com>
[-- Attachment #1: Type: text/plain, Size: 12924 bytes --]
Hi Xiaoliang,
[FYI, it's a private test report for your RFC patch.]
[auto build test WARNING on net-next/master]
url: https://github.com/0day-ci/linux/commits/Xiaoliang-Yang/net-dsa-felix-frame-preemption-support/20201020-121555
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 105faa8742437c28815b2a3eb8314ebc5fd9288c
config: x86_64-randconfig-a001-20201020 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project ea693a162786d933863ab079648d4261ac0ead47)
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
# https://github.com/0day-ci/linux/commit/8793bdc51bda4de1362ea8e74db38e1a93ff6964
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Xiaoliang-Yang/net-dsa-felix-frame-preemption-support/20201020-121555
git checkout 8793bdc51bda4de1362ea8e74db38e1a93ff6964
# 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 warnings (new ones prefixed by >>):
In file included from net/core/flow_dissector.c:8:
>> include/net/dsa.h:506:18: warning: declaration of 'struct ethtool_fp' will not be visible outside of this function [-Wvisibility]
struct ethtool_fp *fpcmd);
^
include/net/dsa.h:512:18: warning: declaration of 'struct ethtool_fp' will not be visible outside of this function [-Wvisibility]
struct ethtool_fp *fpcmd);
^
2 warnings generated.
--
In file included from net/core/dev.c:101:
>> include/net/dsa.h:506:18: warning: declaration of 'struct ethtool_fp' will not be visible outside of this function [-Wvisibility]
struct ethtool_fp *fpcmd);
^
include/net/dsa.h:512:18: warning: declaration of 'struct ethtool_fp' will not be visible outside of this function [-Wvisibility]
struct ethtool_fp *fpcmd);
^
net/core/dev.c:4932:1: warning: unused function 'sch_handle_ingress' [-Wunused-function]
sch_handle_ingress(struct sk_buff *skb, struct packet_type **pt_prev, int *ret,
^
net/core/dev.c:5080:19: warning: unused function 'nf_ingress' [-Wunused-function]
static inline int nf_ingress(struct sk_buff *skb, struct packet_type **pt_prev,
^
4 warnings generated.
vim +506 include/net/dsa.h
427
428 typedef int dsa_fdb_dump_cb_t(const unsigned char *addr, u16 vid,
429 bool is_static, void *data);
430 struct dsa_switch_ops {
431 enum dsa_tag_protocol (*get_tag_protocol)(struct dsa_switch *ds,
432 int port,
433 enum dsa_tag_protocol mprot);
434
435 int (*setup)(struct dsa_switch *ds);
436 void (*teardown)(struct dsa_switch *ds);
437 u32 (*get_phy_flags)(struct dsa_switch *ds, int port);
438
439 /*
440 * Access to the switch's PHY registers.
441 */
442 int (*phy_read)(struct dsa_switch *ds, int port, int regnum);
443 int (*phy_write)(struct dsa_switch *ds, int port,
444 int regnum, u16 val);
445
446 /*
447 * Link state adjustment (called from libphy)
448 */
449 void (*adjust_link)(struct dsa_switch *ds, int port,
450 struct phy_device *phydev);
451 void (*fixed_link_update)(struct dsa_switch *ds, int port,
452 struct fixed_phy_status *st);
453
454 /*
455 * PHYLINK integration
456 */
457 void (*phylink_validate)(struct dsa_switch *ds, int port,
458 unsigned long *supported,
459 struct phylink_link_state *state);
460 int (*phylink_mac_link_state)(struct dsa_switch *ds, int port,
461 struct phylink_link_state *state);
462 void (*phylink_mac_config)(struct dsa_switch *ds, int port,
463 unsigned int mode,
464 const struct phylink_link_state *state);
465 void (*phylink_mac_an_restart)(struct dsa_switch *ds, int port);
466 void (*phylink_mac_link_down)(struct dsa_switch *ds, int port,
467 unsigned int mode,
468 phy_interface_t interface);
469 void (*phylink_mac_link_up)(struct dsa_switch *ds, int port,
470 unsigned int mode,
471 phy_interface_t interface,
472 struct phy_device *phydev,
473 int speed, int duplex,
474 bool tx_pause, bool rx_pause);
475 void (*phylink_fixed_state)(struct dsa_switch *ds, int port,
476 struct phylink_link_state *state);
477 /*
478 * ethtool hardware statistics.
479 */
480 void (*get_strings)(struct dsa_switch *ds, int port,
481 u32 stringset, uint8_t *data);
482 void (*get_ethtool_stats)(struct dsa_switch *ds,
483 int port, uint64_t *data);
484 int (*get_sset_count)(struct dsa_switch *ds, int port, int sset);
485 void (*get_ethtool_phy_stats)(struct dsa_switch *ds,
486 int port, uint64_t *data);
487
488 /*
489 * ethtool Wake-on-LAN
490 */
491 void (*get_wol)(struct dsa_switch *ds, int port,
492 struct ethtool_wolinfo *w);
493 int (*set_wol)(struct dsa_switch *ds, int port,
494 struct ethtool_wolinfo *w);
495
496 /*
497 * ethtool timestamp info
498 */
499 int (*get_ts_info)(struct dsa_switch *ds, int port,
500 struct ethtool_ts_info *ts);
501
502 /*
503 * ethtool --set-frame-preemption
504 */
505 int (*set_preempt)(struct dsa_switch *ds, int port,
> 506 struct ethtool_fp *fpcmd);
507
508 /*
509 * ethtool --show-frame-preemption
510 */
511 int (*get_preempt)(struct dsa_switch *ds, int port,
512 struct ethtool_fp *fpcmd);
513
514 /*
515 * Suspend and resume
516 */
517 int (*suspend)(struct dsa_switch *ds);
518 int (*resume)(struct dsa_switch *ds);
519
520 /*
521 * Port enable/disable
522 */
523 int (*port_enable)(struct dsa_switch *ds, int port,
524 struct phy_device *phy);
525 void (*port_disable)(struct dsa_switch *ds, int port);
526
527 /*
528 * Port's MAC EEE settings
529 */
530 int (*set_mac_eee)(struct dsa_switch *ds, int port,
531 struct ethtool_eee *e);
532 int (*get_mac_eee)(struct dsa_switch *ds, int port,
533 struct ethtool_eee *e);
534
535 /* EEPROM access */
536 int (*get_eeprom_len)(struct dsa_switch *ds);
537 int (*get_eeprom)(struct dsa_switch *ds,
538 struct ethtool_eeprom *eeprom, u8 *data);
539 int (*set_eeprom)(struct dsa_switch *ds,
540 struct ethtool_eeprom *eeprom, u8 *data);
541
542 /*
543 * Register access.
544 */
545 int (*get_regs_len)(struct dsa_switch *ds, int port);
546 void (*get_regs)(struct dsa_switch *ds, int port,
547 struct ethtool_regs *regs, void *p);
548
549 /*
550 * Bridge integration
551 */
552 int (*set_ageing_time)(struct dsa_switch *ds, unsigned int msecs);
553 int (*port_bridge_join)(struct dsa_switch *ds, int port,
554 struct net_device *bridge);
555 void (*port_bridge_leave)(struct dsa_switch *ds, int port,
556 struct net_device *bridge);
557 void (*port_stp_state_set)(struct dsa_switch *ds, int port,
558 u8 state);
559 void (*port_fast_age)(struct dsa_switch *ds, int port);
560 int (*port_egress_floods)(struct dsa_switch *ds, int port,
561 bool unicast, bool multicast);
562
563 /*
564 * VLAN support
565 */
566 int (*port_vlan_filtering)(struct dsa_switch *ds, int port,
567 bool vlan_filtering,
568 struct switchdev_trans *trans);
569 int (*port_vlan_prepare)(struct dsa_switch *ds, int port,
570 const struct switchdev_obj_port_vlan *vlan);
571 void (*port_vlan_add)(struct dsa_switch *ds, int port,
572 const struct switchdev_obj_port_vlan *vlan);
573 int (*port_vlan_del)(struct dsa_switch *ds, int port,
574 const struct switchdev_obj_port_vlan *vlan);
575 /*
576 * Forwarding database
577 */
578 int (*port_fdb_add)(struct dsa_switch *ds, int port,
579 const unsigned char *addr, u16 vid);
580 int (*port_fdb_del)(struct dsa_switch *ds, int port,
581 const unsigned char *addr, u16 vid);
582 int (*port_fdb_dump)(struct dsa_switch *ds, int port,
583 dsa_fdb_dump_cb_t *cb, void *data);
584
585 /*
586 * Multicast database
587 */
588 int (*port_mdb_prepare)(struct dsa_switch *ds, int port,
589 const struct switchdev_obj_port_mdb *mdb);
590 void (*port_mdb_add)(struct dsa_switch *ds, int port,
591 const struct switchdev_obj_port_mdb *mdb);
592 int (*port_mdb_del)(struct dsa_switch *ds, int port,
593 const struct switchdev_obj_port_mdb *mdb);
594 /*
595 * RXNFC
596 */
597 int (*get_rxnfc)(struct dsa_switch *ds, int port,
598 struct ethtool_rxnfc *nfc, u32 *rule_locs);
599 int (*set_rxnfc)(struct dsa_switch *ds, int port,
600 struct ethtool_rxnfc *nfc);
601
602 /*
603 * TC integration
604 */
605 int (*cls_flower_add)(struct dsa_switch *ds, int port,
606 struct flow_cls_offload *cls, bool ingress);
607 int (*cls_flower_del)(struct dsa_switch *ds, int port,
608 struct flow_cls_offload *cls, bool ingress);
609 int (*cls_flower_stats)(struct dsa_switch *ds, int port,
610 struct flow_cls_offload *cls, bool ingress);
611 int (*port_mirror_add)(struct dsa_switch *ds, int port,
612 struct dsa_mall_mirror_tc_entry *mirror,
613 bool ingress);
614 void (*port_mirror_del)(struct dsa_switch *ds, int port,
615 struct dsa_mall_mirror_tc_entry *mirror);
616 int (*port_policer_add)(struct dsa_switch *ds, int port,
617 struct dsa_mall_policer_tc_entry *policer);
618 void (*port_policer_del)(struct dsa_switch *ds, int port);
619 int (*port_setup_tc)(struct dsa_switch *ds, int port,
620 enum tc_setup_type type, void *type_data);
621
622 /*
623 * Cross-chip operations
624 */
625 int (*crosschip_bridge_join)(struct dsa_switch *ds, int tree_index,
626 int sw_index, int port,
627 struct net_device *br);
628 void (*crosschip_bridge_leave)(struct dsa_switch *ds, int tree_index,
629 int sw_index, int port,
630 struct net_device *br);
631
632 /*
633 * PTP functionality
634 */
635 int (*port_hwtstamp_get)(struct dsa_switch *ds, int port,
636 struct ifreq *ifr);
637 int (*port_hwtstamp_set)(struct dsa_switch *ds, int port,
638 struct ifreq *ifr);
639 bool (*port_txtstamp)(struct dsa_switch *ds, int port,
640 struct sk_buff *clone, unsigned int type);
641 bool (*port_rxtstamp)(struct dsa_switch *ds, int port,
642 struct sk_buff *skb, unsigned int type);
643
644 /* Devlink parameters, etc */
645 int (*devlink_param_get)(struct dsa_switch *ds, u32 id,
646 struct devlink_param_gset_ctx *ctx);
647 int (*devlink_param_set)(struct dsa_switch *ds, u32 id,
648 struct devlink_param_gset_ctx *ctx);
649 int (*devlink_info_get)(struct dsa_switch *ds,
650 struct devlink_info_req *req,
651 struct netlink_ext_ack *extack);
652
653 /*
654 * MTU change functionality. Switches can also adjust their MRU through
655 * this method. By MTU, one understands the SDU (L2 payload) length.
656 * If the switch needs to account for the DSA tag on the CPU port, this
657 * method needs to do so privately.
658 */
659 int (*port_change_mtu)(struct dsa_switch *ds, int port,
660 int new_mtu);
661 int (*port_max_mtu)(struct dsa_switch *ds, int port);
662 };
663
---
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: 33741 bytes --]
next prev parent reply other threads:[~2020-10-20 7:25 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-20 4:04 [RFC, net-next 0/3] net: dsa: felix: frame preemption support Xiaoliang Yang
2020-10-20 4:04 ` [RFC, net-next 1/3] net: dsa: ethtool preempt ops support on slave ports Xiaoliang Yang
2020-10-20 5:53 ` kernel test robot
2020-10-20 7:25 ` kernel test robot [this message]
2020-10-20 4:04 ` [RFC, net-next 2/3] net: dsa: felix: add preempt queues set support for vsc9959 Xiaoliang Yang
2020-10-20 6:24 ` kernel test robot
2020-11-06 15:40 ` Vladimir Oltean
2020-10-20 4:04 ` [RFC, net-next 3/3] net: dsa: felix: tc-taprio preempt set support Xiaoliang Yang
2020-10-20 6:52 ` kernel test robot
2020-10-20 11:04 ` [RFC, net-next 0/3] net: dsa: felix: frame preemption support Vladimir Oltean
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=202010201542.JHTjzuhd-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild-all@lists.01.org \
/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.