* drivers/net/dsa/sja1105/sja1105_main.c:737 sja1105_init_topology() warn: should '(((1))) << port' be a 64 bit type?
@ 2022-04-27 4:16 kernel test robot
0 siblings, 0 replies; 5+ messages in thread
From: kernel test robot @ 2022-04-27 4:16 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 10259 bytes --]
CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: linux-kernel(a)vger.kernel.org
TO: Vladimir Oltean <vladimir.oltean@nxp.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 46cf2c613f4b10eb12f749207b0fd2c1bfae3088
commit: 30a100e60cf36ade9902dc71610f93563d0bd7b0 net: dsa: sja1105: configure the cascade ports based on topology
date: 9 months ago
:::::: branch date: 5 hours ago
:::::: commit date: 9 months ago
config: openrisc-randconfig-m031-20220425 (https://download.01.org/0day-ci/archive/20220427/202204271228.PqESNs8C-lkp(a)intel.com/config)
compiler: or1k-linux-gcc (GCC) 11.2.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
New smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:737 sja1105_init_topology() warn: should '(((1))) << port' be a 64 bit type?
Old smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:49 sja1105_port_allow_traffic() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:57 sja1105_can_forward() warn: should '((((1))) << to)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:129 sja1105_commit_pvid() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:248 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:260 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:269 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:278 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:284 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:291 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:518 sja1105_init_l2_forwarding() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:519 sja1105_init_l2_forwarding() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:604 sja1105_init_l2_forwarding_params() warn: is 'table->entries' large enough for 'struct sja1105_l2_forwarding_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:848 sja1105_init_avb_params() warn: is 'table->entries' large enough for 'struct sja1105_avb_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:1315 sja1105_find_static_fdb_entry() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1433 sja1105et_fdb_add() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1435 sja1105et_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1443 sja1105et_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1529 sja1105pqrs_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1537 sja1105pqrs_fdb_add() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1542 sja1105pqrs_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1592 sja1105pqrs_fdb_del() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1661 sja1105_fdb_dump() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1713 sja1105_manage_flood_domains() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1715 sja1105_manage_flood_domains() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2208 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2209 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2213 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2522 sja1105_mgmt_xmit() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2840 sja1105_port_mcast_flood() warn: should '(((1))) << to' be a 64 bit type?
vim +737 drivers/net/dsa/sja1105/sja1105_main.c
ceec8bc0988dca Vladimir Oltean 2021-06-08 690
30a100e60cf36a Vladimir Oltean 2021-08-04 691 static int sja1105_init_topology(struct sja1105_private *priv,
30a100e60cf36a Vladimir Oltean 2021-08-04 692 struct sja1105_general_params_entry *general_params)
30a100e60cf36a Vladimir Oltean 2021-08-04 693 {
30a100e60cf36a Vladimir Oltean 2021-08-04 694 struct dsa_switch *ds = priv->ds;
30a100e60cf36a Vladimir Oltean 2021-08-04 695 int port;
30a100e60cf36a Vladimir Oltean 2021-08-04 696
30a100e60cf36a Vladimir Oltean 2021-08-04 697 /* The host port is the destination for traffic matching mac_fltres1
30a100e60cf36a Vladimir Oltean 2021-08-04 698 * and mac_fltres0 on all ports except itself. Default to an invalid
30a100e60cf36a Vladimir Oltean 2021-08-04 699 * value.
30a100e60cf36a Vladimir Oltean 2021-08-04 700 */
30a100e60cf36a Vladimir Oltean 2021-08-04 701 general_params->host_port = ds->num_ports;
30a100e60cf36a Vladimir Oltean 2021-08-04 702
30a100e60cf36a Vladimir Oltean 2021-08-04 703 /* Link-local traffic received on casc_port will be forwarded
30a100e60cf36a Vladimir Oltean 2021-08-04 704 * to host_port without embedding the source port and device ID
30a100e60cf36a Vladimir Oltean 2021-08-04 705 * info in the destination MAC address, and no RX timestamps will be
30a100e60cf36a Vladimir Oltean 2021-08-04 706 * taken either (presumably because it is a cascaded port and a
30a100e60cf36a Vladimir Oltean 2021-08-04 707 * downstream SJA switch already did that).
30a100e60cf36a Vladimir Oltean 2021-08-04 708 * To disable the feature, we need to do different things depending on
30a100e60cf36a Vladimir Oltean 2021-08-04 709 * switch generation. On SJA1105 we need to set an invalid port, while
30a100e60cf36a Vladimir Oltean 2021-08-04 710 * on SJA1110 which support multiple cascaded ports, this field is a
30a100e60cf36a Vladimir Oltean 2021-08-04 711 * bitmask so it must be left zero.
30a100e60cf36a Vladimir Oltean 2021-08-04 712 */
30a100e60cf36a Vladimir Oltean 2021-08-04 713 if (!priv->info->multiple_cascade_ports)
30a100e60cf36a Vladimir Oltean 2021-08-04 714 general_params->casc_port = ds->num_ports;
30a100e60cf36a Vladimir Oltean 2021-08-04 715
30a100e60cf36a Vladimir Oltean 2021-08-04 716 for (port = 0; port < ds->num_ports; port++) {
30a100e60cf36a Vladimir Oltean 2021-08-04 717 bool is_upstream = dsa_is_upstream_port(ds, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 718 bool is_dsa_link = dsa_is_dsa_port(ds, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 719
30a100e60cf36a Vladimir Oltean 2021-08-04 720 /* Upstream ports can be dedicated CPU ports or
30a100e60cf36a Vladimir Oltean 2021-08-04 721 * upstream-facing DSA links
30a100e60cf36a Vladimir Oltean 2021-08-04 722 */
30a100e60cf36a Vladimir Oltean 2021-08-04 723 if (is_upstream) {
30a100e60cf36a Vladimir Oltean 2021-08-04 724 if (general_params->host_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 725 general_params->host_port = port;
30a100e60cf36a Vladimir Oltean 2021-08-04 726 } else {
30a100e60cf36a Vladimir Oltean 2021-08-04 727 dev_err(ds->dev,
30a100e60cf36a Vladimir Oltean 2021-08-04 728 "Port %llu is already a host port, configuring %d as one too is not supported\n",
30a100e60cf36a Vladimir Oltean 2021-08-04 729 general_params->host_port, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 730 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 731 }
30a100e60cf36a Vladimir Oltean 2021-08-04 732 }
30a100e60cf36a Vladimir Oltean 2021-08-04 733
30a100e60cf36a Vladimir Oltean 2021-08-04 734 /* Cascade ports are downstream-facing DSA links */
30a100e60cf36a Vladimir Oltean 2021-08-04 735 if (is_dsa_link && !is_upstream) {
30a100e60cf36a Vladimir Oltean 2021-08-04 736 if (priv->info->multiple_cascade_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 @737 general_params->casc_port |= BIT(port);
30a100e60cf36a Vladimir Oltean 2021-08-04 738 } else if (general_params->casc_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 739 general_params->casc_port = port;
30a100e60cf36a Vladimir Oltean 2021-08-04 740 } else {
30a100e60cf36a Vladimir Oltean 2021-08-04 741 dev_err(ds->dev,
30a100e60cf36a Vladimir Oltean 2021-08-04 742 "Port %llu is already a cascade port, configuring %d as one too is not supported\n",
30a100e60cf36a Vladimir Oltean 2021-08-04 743 general_params->casc_port, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 744 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 745 }
30a100e60cf36a Vladimir Oltean 2021-08-04 746 }
30a100e60cf36a Vladimir Oltean 2021-08-04 747 }
30a100e60cf36a Vladimir Oltean 2021-08-04 748
30a100e60cf36a Vladimir Oltean 2021-08-04 749 if (general_params->host_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 750 dev_err(ds->dev, "No host port configured\n");
30a100e60cf36a Vladimir Oltean 2021-08-04 751 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 752 }
30a100e60cf36a Vladimir Oltean 2021-08-04 753
30a100e60cf36a Vladimir Oltean 2021-08-04 754 return 0;
30a100e60cf36a Vladimir Oltean 2021-08-04 755 }
30a100e60cf36a Vladimir Oltean 2021-08-04 756
--
0-DAY CI Kernel Test Service
https://01.org/lkp
^ permalink raw reply [flat|nested] 5+ messages in thread
* drivers/net/dsa/sja1105/sja1105_main.c:737 sja1105_init_topology() warn: should '(((1))) << port' be a 64 bit type?
@ 2022-05-29 0:41 kernel test robot
0 siblings, 0 replies; 5+ messages in thread
From: kernel test robot @ 2022-05-29 0:41 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 10258 bytes --]
CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: linux-kernel(a)vger.kernel.org
TO: Vladimir Oltean <vladimir.oltean@nxp.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 9d004b2f4fea97cde123e7f1939b80e77bf2e695
commit: 30a100e60cf36ade9902dc71610f93563d0bd7b0 net: dsa: sja1105: configure the cascade ports based on topology
date: 10 months ago
:::::: branch date: 20 hours ago
:::::: commit date: 10 months ago
config: arc-randconfig-m031-20220524 (https://download.01.org/0day-ci/archive/20220529/202205290837.so6t10WL-lkp(a)intel.com/config)
compiler: arceb-elf-gcc (GCC) 11.3.0
If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
New smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:737 sja1105_init_topology() warn: should '(((1))) << port' be a 64 bit type?
Old smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:49 sja1105_port_allow_traffic() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:57 sja1105_can_forward() warn: should '((((1))) << to)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:129 sja1105_commit_pvid() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:248 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:260 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:269 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:278 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:284 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:291 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:518 sja1105_init_l2_forwarding() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:519 sja1105_init_l2_forwarding() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:604 sja1105_init_l2_forwarding_params() warn: is 'table->entries' large enough for 'struct sja1105_l2_forwarding_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:848 sja1105_init_avb_params() warn: is 'table->entries' large enough for 'struct sja1105_avb_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:1315 sja1105_find_static_fdb_entry() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1433 sja1105et_fdb_add() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1435 sja1105et_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1443 sja1105et_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1529 sja1105pqrs_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1537 sja1105pqrs_fdb_add() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1542 sja1105pqrs_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1592 sja1105pqrs_fdb_del() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1661 sja1105_fdb_dump() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1713 sja1105_manage_flood_domains() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1715 sja1105_manage_flood_domains() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2208 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2209 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2213 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2522 sja1105_mgmt_xmit() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2840 sja1105_port_mcast_flood() warn: should '(((1))) << to' be a 64 bit type?
vim +737 drivers/net/dsa/sja1105/sja1105_main.c
ceec8bc0988dca Vladimir Oltean 2021-06-08 690
30a100e60cf36a Vladimir Oltean 2021-08-04 691 static int sja1105_init_topology(struct sja1105_private *priv,
30a100e60cf36a Vladimir Oltean 2021-08-04 692 struct sja1105_general_params_entry *general_params)
30a100e60cf36a Vladimir Oltean 2021-08-04 693 {
30a100e60cf36a Vladimir Oltean 2021-08-04 694 struct dsa_switch *ds = priv->ds;
30a100e60cf36a Vladimir Oltean 2021-08-04 695 int port;
30a100e60cf36a Vladimir Oltean 2021-08-04 696
30a100e60cf36a Vladimir Oltean 2021-08-04 697 /* The host port is the destination for traffic matching mac_fltres1
30a100e60cf36a Vladimir Oltean 2021-08-04 698 * and mac_fltres0 on all ports except itself. Default to an invalid
30a100e60cf36a Vladimir Oltean 2021-08-04 699 * value.
30a100e60cf36a Vladimir Oltean 2021-08-04 700 */
30a100e60cf36a Vladimir Oltean 2021-08-04 701 general_params->host_port = ds->num_ports;
30a100e60cf36a Vladimir Oltean 2021-08-04 702
30a100e60cf36a Vladimir Oltean 2021-08-04 703 /* Link-local traffic received on casc_port will be forwarded
30a100e60cf36a Vladimir Oltean 2021-08-04 704 * to host_port without embedding the source port and device ID
30a100e60cf36a Vladimir Oltean 2021-08-04 705 * info in the destination MAC address, and no RX timestamps will be
30a100e60cf36a Vladimir Oltean 2021-08-04 706 * taken either (presumably because it is a cascaded port and a
30a100e60cf36a Vladimir Oltean 2021-08-04 707 * downstream SJA switch already did that).
30a100e60cf36a Vladimir Oltean 2021-08-04 708 * To disable the feature, we need to do different things depending on
30a100e60cf36a Vladimir Oltean 2021-08-04 709 * switch generation. On SJA1105 we need to set an invalid port, while
30a100e60cf36a Vladimir Oltean 2021-08-04 710 * on SJA1110 which support multiple cascaded ports, this field is a
30a100e60cf36a Vladimir Oltean 2021-08-04 711 * bitmask so it must be left zero.
30a100e60cf36a Vladimir Oltean 2021-08-04 712 */
30a100e60cf36a Vladimir Oltean 2021-08-04 713 if (!priv->info->multiple_cascade_ports)
30a100e60cf36a Vladimir Oltean 2021-08-04 714 general_params->casc_port = ds->num_ports;
30a100e60cf36a Vladimir Oltean 2021-08-04 715
30a100e60cf36a Vladimir Oltean 2021-08-04 716 for (port = 0; port < ds->num_ports; port++) {
30a100e60cf36a Vladimir Oltean 2021-08-04 717 bool is_upstream = dsa_is_upstream_port(ds, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 718 bool is_dsa_link = dsa_is_dsa_port(ds, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 719
30a100e60cf36a Vladimir Oltean 2021-08-04 720 /* Upstream ports can be dedicated CPU ports or
30a100e60cf36a Vladimir Oltean 2021-08-04 721 * upstream-facing DSA links
30a100e60cf36a Vladimir Oltean 2021-08-04 722 */
30a100e60cf36a Vladimir Oltean 2021-08-04 723 if (is_upstream) {
30a100e60cf36a Vladimir Oltean 2021-08-04 724 if (general_params->host_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 725 general_params->host_port = port;
30a100e60cf36a Vladimir Oltean 2021-08-04 726 } else {
30a100e60cf36a Vladimir Oltean 2021-08-04 727 dev_err(ds->dev,
30a100e60cf36a Vladimir Oltean 2021-08-04 728 "Port %llu is already a host port, configuring %d as one too is not supported\n",
30a100e60cf36a Vladimir Oltean 2021-08-04 729 general_params->host_port, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 730 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 731 }
30a100e60cf36a Vladimir Oltean 2021-08-04 732 }
30a100e60cf36a Vladimir Oltean 2021-08-04 733
30a100e60cf36a Vladimir Oltean 2021-08-04 734 /* Cascade ports are downstream-facing DSA links */
30a100e60cf36a Vladimir Oltean 2021-08-04 735 if (is_dsa_link && !is_upstream) {
30a100e60cf36a Vladimir Oltean 2021-08-04 736 if (priv->info->multiple_cascade_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 @737 general_params->casc_port |= BIT(port);
30a100e60cf36a Vladimir Oltean 2021-08-04 738 } else if (general_params->casc_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 739 general_params->casc_port = port;
30a100e60cf36a Vladimir Oltean 2021-08-04 740 } else {
30a100e60cf36a Vladimir Oltean 2021-08-04 741 dev_err(ds->dev,
30a100e60cf36a Vladimir Oltean 2021-08-04 742 "Port %llu is already a cascade port, configuring %d as one too is not supported\n",
30a100e60cf36a Vladimir Oltean 2021-08-04 743 general_params->casc_port, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 744 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 745 }
30a100e60cf36a Vladimir Oltean 2021-08-04 746 }
30a100e60cf36a Vladimir Oltean 2021-08-04 747 }
30a100e60cf36a Vladimir Oltean 2021-08-04 748
30a100e60cf36a Vladimir Oltean 2021-08-04 749 if (general_params->host_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 750 dev_err(ds->dev, "No host port configured\n");
30a100e60cf36a Vladimir Oltean 2021-08-04 751 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 752 }
30a100e60cf36a Vladimir Oltean 2021-08-04 753
30a100e60cf36a Vladimir Oltean 2021-08-04 754 return 0;
30a100e60cf36a Vladimir Oltean 2021-08-04 755 }
30a100e60cf36a Vladimir Oltean 2021-08-04 756
--
0-DAY CI Kernel Test Service
https://01.org/lkp
^ permalink raw reply [flat|nested] 5+ messages in thread
* drivers/net/dsa/sja1105/sja1105_main.c:737 sja1105_init_topology() warn: should '(((1))) << port' be a 64 bit type?
@ 2022-02-11 19:00 kernel test robot
0 siblings, 0 replies; 5+ messages in thread
From: kernel test robot @ 2022-02-11 19:00 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 10297 bytes --]
CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Vladimir Oltean <vladimir.oltean@nxp.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: f1baf68e1383f6ed93eb9cff2866d46562607a43
commit: 30a100e60cf36ade9902dc71610f93563d0bd7b0 net: dsa: sja1105: configure the cascade ports based on topology
date: 6 months ago
:::::: branch date: 19 hours ago
:::::: commit date: 6 months ago
config: m68k-randconfig-m031-20220211 (https://download.01.org/0day-ci/archive/20220212/202202120201.17fU85zL-lkp(a)intel.com/config)
compiler: m68k-linux-gcc (GCC) 11.2.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
New smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:737 sja1105_init_topology() warn: should '(((1))) << port' be a 64 bit type?
Old smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:49 sja1105_port_allow_traffic() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:57 sja1105_can_forward() warn: should '((((1))) << to)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:129 sja1105_commit_pvid() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:248 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:260 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:269 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:278 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:284 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:291 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:518 sja1105_init_l2_forwarding() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:519 sja1105_init_l2_forwarding() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:604 sja1105_init_l2_forwarding_params() warn: is 'table->entries' large enough for 'struct sja1105_l2_forwarding_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:848 sja1105_init_avb_params() warn: is 'table->entries' large enough for 'struct sja1105_avb_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:1315 sja1105_find_static_fdb_entry() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1433 sja1105et_fdb_add() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1435 sja1105et_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1443 sja1105et_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1529 sja1105pqrs_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1537 sja1105pqrs_fdb_add() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1542 sja1105pqrs_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1592 sja1105pqrs_fdb_del() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1661 sja1105_fdb_dump() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1713 sja1105_manage_flood_domains() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1715 sja1105_manage_flood_domains() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2208 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2209 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2213 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2522 sja1105_mgmt_xmit() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2840 sja1105_port_mcast_flood() warn: should '(((1))) << to' be a 64 bit type?
vim +737 drivers/net/dsa/sja1105/sja1105_main.c
ceec8bc0988dca Vladimir Oltean 2021-06-08 690
30a100e60cf36a Vladimir Oltean 2021-08-04 691 static int sja1105_init_topology(struct sja1105_private *priv,
30a100e60cf36a Vladimir Oltean 2021-08-04 692 struct sja1105_general_params_entry *general_params)
30a100e60cf36a Vladimir Oltean 2021-08-04 693 {
30a100e60cf36a Vladimir Oltean 2021-08-04 694 struct dsa_switch *ds = priv->ds;
30a100e60cf36a Vladimir Oltean 2021-08-04 695 int port;
30a100e60cf36a Vladimir Oltean 2021-08-04 696
30a100e60cf36a Vladimir Oltean 2021-08-04 697 /* The host port is the destination for traffic matching mac_fltres1
30a100e60cf36a Vladimir Oltean 2021-08-04 698 * and mac_fltres0 on all ports except itself. Default to an invalid
30a100e60cf36a Vladimir Oltean 2021-08-04 699 * value.
30a100e60cf36a Vladimir Oltean 2021-08-04 700 */
30a100e60cf36a Vladimir Oltean 2021-08-04 701 general_params->host_port = ds->num_ports;
30a100e60cf36a Vladimir Oltean 2021-08-04 702
30a100e60cf36a Vladimir Oltean 2021-08-04 703 /* Link-local traffic received on casc_port will be forwarded
30a100e60cf36a Vladimir Oltean 2021-08-04 704 * to host_port without embedding the source port and device ID
30a100e60cf36a Vladimir Oltean 2021-08-04 705 * info in the destination MAC address, and no RX timestamps will be
30a100e60cf36a Vladimir Oltean 2021-08-04 706 * taken either (presumably because it is a cascaded port and a
30a100e60cf36a Vladimir Oltean 2021-08-04 707 * downstream SJA switch already did that).
30a100e60cf36a Vladimir Oltean 2021-08-04 708 * To disable the feature, we need to do different things depending on
30a100e60cf36a Vladimir Oltean 2021-08-04 709 * switch generation. On SJA1105 we need to set an invalid port, while
30a100e60cf36a Vladimir Oltean 2021-08-04 710 * on SJA1110 which support multiple cascaded ports, this field is a
30a100e60cf36a Vladimir Oltean 2021-08-04 711 * bitmask so it must be left zero.
30a100e60cf36a Vladimir Oltean 2021-08-04 712 */
30a100e60cf36a Vladimir Oltean 2021-08-04 713 if (!priv->info->multiple_cascade_ports)
30a100e60cf36a Vladimir Oltean 2021-08-04 714 general_params->casc_port = ds->num_ports;
30a100e60cf36a Vladimir Oltean 2021-08-04 715
30a100e60cf36a Vladimir Oltean 2021-08-04 716 for (port = 0; port < ds->num_ports; port++) {
30a100e60cf36a Vladimir Oltean 2021-08-04 717 bool is_upstream = dsa_is_upstream_port(ds, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 718 bool is_dsa_link = dsa_is_dsa_port(ds, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 719
30a100e60cf36a Vladimir Oltean 2021-08-04 720 /* Upstream ports can be dedicated CPU ports or
30a100e60cf36a Vladimir Oltean 2021-08-04 721 * upstream-facing DSA links
30a100e60cf36a Vladimir Oltean 2021-08-04 722 */
30a100e60cf36a Vladimir Oltean 2021-08-04 723 if (is_upstream) {
30a100e60cf36a Vladimir Oltean 2021-08-04 724 if (general_params->host_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 725 general_params->host_port = port;
30a100e60cf36a Vladimir Oltean 2021-08-04 726 } else {
30a100e60cf36a Vladimir Oltean 2021-08-04 727 dev_err(ds->dev,
30a100e60cf36a Vladimir Oltean 2021-08-04 728 "Port %llu is already a host port, configuring %d as one too is not supported\n",
30a100e60cf36a Vladimir Oltean 2021-08-04 729 general_params->host_port, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 730 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 731 }
30a100e60cf36a Vladimir Oltean 2021-08-04 732 }
30a100e60cf36a Vladimir Oltean 2021-08-04 733
30a100e60cf36a Vladimir Oltean 2021-08-04 734 /* Cascade ports are downstream-facing DSA links */
30a100e60cf36a Vladimir Oltean 2021-08-04 735 if (is_dsa_link && !is_upstream) {
30a100e60cf36a Vladimir Oltean 2021-08-04 736 if (priv->info->multiple_cascade_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 @737 general_params->casc_port |= BIT(port);
30a100e60cf36a Vladimir Oltean 2021-08-04 738 } else if (general_params->casc_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 739 general_params->casc_port = port;
30a100e60cf36a Vladimir Oltean 2021-08-04 740 } else {
30a100e60cf36a Vladimir Oltean 2021-08-04 741 dev_err(ds->dev,
30a100e60cf36a Vladimir Oltean 2021-08-04 742 "Port %llu is already a cascade port, configuring %d as one too is not supported\n",
30a100e60cf36a Vladimir Oltean 2021-08-04 743 general_params->casc_port, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 744 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 745 }
30a100e60cf36a Vladimir Oltean 2021-08-04 746 }
30a100e60cf36a Vladimir Oltean 2021-08-04 747 }
30a100e60cf36a Vladimir Oltean 2021-08-04 748
30a100e60cf36a Vladimir Oltean 2021-08-04 749 if (general_params->host_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 750 dev_err(ds->dev, "No host port configured\n");
30a100e60cf36a Vladimir Oltean 2021-08-04 751 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 752 }
30a100e60cf36a Vladimir Oltean 2021-08-04 753
30a100e60cf36a Vladimir Oltean 2021-08-04 754 return 0;
30a100e60cf36a Vladimir Oltean 2021-08-04 755 }
30a100e60cf36a Vladimir Oltean 2021-08-04 756
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
^ permalink raw reply [flat|nested] 5+ messages in thread
* drivers/net/dsa/sja1105/sja1105_main.c:737 sja1105_init_topology() warn: should '(((1))) << port' be a 64 bit type?
@ 2021-11-15 23:06 kernel test robot
0 siblings, 0 replies; 5+ messages in thread
From: kernel test robot @ 2021-11-15 23:06 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 10227 bytes --]
CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Vladimir Oltean <vladimir.oltean@nxp.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 8ab774587903771821b59471cc723bba6d893942
commit: 30a100e60cf36ade9902dc71610f93563d0bd7b0 net: dsa: sja1105: configure the cascade ports based on topology
date: 3 months ago
:::::: branch date: 20 hours ago
:::::: commit date: 3 months ago
config: i386-randconfig-m021-20211022 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
New smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:737 sja1105_init_topology() warn: should '(((1))) << port' be a 64 bit type?
Old smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:49 sja1105_port_allow_traffic() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:57 sja1105_can_forward() warn: should '((((1))) << to)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:129 sja1105_commit_pvid() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:248 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:260 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:269 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:278 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:284 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:291 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:518 sja1105_init_l2_forwarding() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:519 sja1105_init_l2_forwarding() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:604 sja1105_init_l2_forwarding_params() warn: is 'table->entries' large enough for 'struct sja1105_l2_forwarding_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:848 sja1105_init_avb_params() warn: is 'table->entries' large enough for 'struct sja1105_avb_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:1315 sja1105_find_static_fdb_entry() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1433 sja1105et_fdb_add() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1435 sja1105et_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1443 sja1105et_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1529 sja1105pqrs_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1537 sja1105pqrs_fdb_add() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1542 sja1105pqrs_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1592 sja1105pqrs_fdb_del() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1661 sja1105_fdb_dump() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1713 sja1105_manage_flood_domains() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1715 sja1105_manage_flood_domains() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2208 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2209 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2213 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2522 sja1105_mgmt_xmit() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2840 sja1105_port_mcast_flood() warn: should '(((1))) << to' be a 64 bit type?
vim +737 drivers/net/dsa/sja1105/sja1105_main.c
ceec8bc0988dca Vladimir Oltean 2021-06-08 690
30a100e60cf36a Vladimir Oltean 2021-08-04 691 static int sja1105_init_topology(struct sja1105_private *priv,
30a100e60cf36a Vladimir Oltean 2021-08-04 692 struct sja1105_general_params_entry *general_params)
30a100e60cf36a Vladimir Oltean 2021-08-04 693 {
30a100e60cf36a Vladimir Oltean 2021-08-04 694 struct dsa_switch *ds = priv->ds;
30a100e60cf36a Vladimir Oltean 2021-08-04 695 int port;
30a100e60cf36a Vladimir Oltean 2021-08-04 696
30a100e60cf36a Vladimir Oltean 2021-08-04 697 /* The host port is the destination for traffic matching mac_fltres1
30a100e60cf36a Vladimir Oltean 2021-08-04 698 * and mac_fltres0 on all ports except itself. Default to an invalid
30a100e60cf36a Vladimir Oltean 2021-08-04 699 * value.
30a100e60cf36a Vladimir Oltean 2021-08-04 700 */
30a100e60cf36a Vladimir Oltean 2021-08-04 701 general_params->host_port = ds->num_ports;
30a100e60cf36a Vladimir Oltean 2021-08-04 702
30a100e60cf36a Vladimir Oltean 2021-08-04 703 /* Link-local traffic received on casc_port will be forwarded
30a100e60cf36a Vladimir Oltean 2021-08-04 704 * to host_port without embedding the source port and device ID
30a100e60cf36a Vladimir Oltean 2021-08-04 705 * info in the destination MAC address, and no RX timestamps will be
30a100e60cf36a Vladimir Oltean 2021-08-04 706 * taken either (presumably because it is a cascaded port and a
30a100e60cf36a Vladimir Oltean 2021-08-04 707 * downstream SJA switch already did that).
30a100e60cf36a Vladimir Oltean 2021-08-04 708 * To disable the feature, we need to do different things depending on
30a100e60cf36a Vladimir Oltean 2021-08-04 709 * switch generation. On SJA1105 we need to set an invalid port, while
30a100e60cf36a Vladimir Oltean 2021-08-04 710 * on SJA1110 which support multiple cascaded ports, this field is a
30a100e60cf36a Vladimir Oltean 2021-08-04 711 * bitmask so it must be left zero.
30a100e60cf36a Vladimir Oltean 2021-08-04 712 */
30a100e60cf36a Vladimir Oltean 2021-08-04 713 if (!priv->info->multiple_cascade_ports)
30a100e60cf36a Vladimir Oltean 2021-08-04 714 general_params->casc_port = ds->num_ports;
30a100e60cf36a Vladimir Oltean 2021-08-04 715
30a100e60cf36a Vladimir Oltean 2021-08-04 716 for (port = 0; port < ds->num_ports; port++) {
30a100e60cf36a Vladimir Oltean 2021-08-04 717 bool is_upstream = dsa_is_upstream_port(ds, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 718 bool is_dsa_link = dsa_is_dsa_port(ds, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 719
30a100e60cf36a Vladimir Oltean 2021-08-04 720 /* Upstream ports can be dedicated CPU ports or
30a100e60cf36a Vladimir Oltean 2021-08-04 721 * upstream-facing DSA links
30a100e60cf36a Vladimir Oltean 2021-08-04 722 */
30a100e60cf36a Vladimir Oltean 2021-08-04 723 if (is_upstream) {
30a100e60cf36a Vladimir Oltean 2021-08-04 724 if (general_params->host_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 725 general_params->host_port = port;
30a100e60cf36a Vladimir Oltean 2021-08-04 726 } else {
30a100e60cf36a Vladimir Oltean 2021-08-04 727 dev_err(ds->dev,
30a100e60cf36a Vladimir Oltean 2021-08-04 728 "Port %llu is already a host port, configuring %d as one too is not supported\n",
30a100e60cf36a Vladimir Oltean 2021-08-04 729 general_params->host_port, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 730 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 731 }
30a100e60cf36a Vladimir Oltean 2021-08-04 732 }
30a100e60cf36a Vladimir Oltean 2021-08-04 733
30a100e60cf36a Vladimir Oltean 2021-08-04 734 /* Cascade ports are downstream-facing DSA links */
30a100e60cf36a Vladimir Oltean 2021-08-04 735 if (is_dsa_link && !is_upstream) {
30a100e60cf36a Vladimir Oltean 2021-08-04 736 if (priv->info->multiple_cascade_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 @737 general_params->casc_port |= BIT(port);
30a100e60cf36a Vladimir Oltean 2021-08-04 738 } else if (general_params->casc_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 739 general_params->casc_port = port;
30a100e60cf36a Vladimir Oltean 2021-08-04 740 } else {
30a100e60cf36a Vladimir Oltean 2021-08-04 741 dev_err(ds->dev,
30a100e60cf36a Vladimir Oltean 2021-08-04 742 "Port %llu is already a cascade port, configuring %d as one too is not supported\n",
30a100e60cf36a Vladimir Oltean 2021-08-04 743 general_params->casc_port, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 744 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 745 }
30a100e60cf36a Vladimir Oltean 2021-08-04 746 }
30a100e60cf36a Vladimir Oltean 2021-08-04 747 }
30a100e60cf36a Vladimir Oltean 2021-08-04 748
30a100e60cf36a Vladimir Oltean 2021-08-04 749 if (general_params->host_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 750 dev_err(ds->dev, "No host port configured\n");
30a100e60cf36a Vladimir Oltean 2021-08-04 751 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 752 }
30a100e60cf36a Vladimir Oltean 2021-08-04 753
30a100e60cf36a Vladimir Oltean 2021-08-04 754 return 0;
30a100e60cf36a Vladimir Oltean 2021-08-04 755 }
30a100e60cf36a Vladimir Oltean 2021-08-04 756
---
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: 36080 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* drivers/net/dsa/sja1105/sja1105_main.c:737 sja1105_init_topology() warn: should '(((1))) << port' be a 64 bit type?
@ 2021-11-08 20:41 kernel test robot
0 siblings, 0 replies; 5+ messages in thread
From: kernel test robot @ 2021-11-08 20:41 UTC (permalink / raw)
To: kbuild
[-- Attachment #1: Type: text/plain, Size: 10226 bytes --]
CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Vladimir Oltean <vladimir.oltean@nxp.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: e851dfae4371d3c751f1e18e8eb5eba993de1467
commit: 30a100e60cf36ade9902dc71610f93563d0bd7b0 net: dsa: sja1105: configure the cascade ports based on topology
date: 3 months ago
:::::: branch date: 3 hours ago
:::::: commit date: 3 months ago
config: i386-randconfig-m021-20211022 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
New smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:737 sja1105_init_topology() warn: should '(((1))) << port' be a 64 bit type?
Old smatch warnings:
drivers/net/dsa/sja1105/sja1105_main.c:49 sja1105_port_allow_traffic() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:57 sja1105_can_forward() warn: should '((((1))) << to)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:129 sja1105_commit_pvid() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:248 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:260 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:269 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:278 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:284 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:291 sja1105_init_mii_settings() warn: is 'table->entries' large enough for 'struct sja1105_xmii_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:518 sja1105_init_l2_forwarding() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:519 sja1105_init_l2_forwarding() warn: should '(((1))) << upstream' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:604 sja1105_init_l2_forwarding_params() warn: is 'table->entries' large enough for 'struct sja1105_l2_forwarding_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:848 sja1105_init_avb_params() warn: is 'table->entries' large enough for 'struct sja1105_avb_params_entry'? 0
drivers/net/dsa/sja1105/sja1105_main.c:1315 sja1105_find_static_fdb_entry() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1433 sja1105et_fdb_add() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1435 sja1105et_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1443 sja1105et_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1529 sja1105pqrs_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1537 sja1105pqrs_fdb_add() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1542 sja1105pqrs_fdb_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1592 sja1105pqrs_fdb_del() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1661 sja1105_fdb_dump() warn: should '((((1))) << port)' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1713 sja1105_manage_flood_domains() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:1715 sja1105_manage_flood_domains() warn: should '(((1))) << to' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2208 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2209 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2213 sja1105_vlan_add() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2522 sja1105_mgmt_xmit() warn: should '(((1))) << port' be a 64 bit type?
drivers/net/dsa/sja1105/sja1105_main.c:2840 sja1105_port_mcast_flood() warn: should '(((1))) << to' be a 64 bit type?
vim +737 drivers/net/dsa/sja1105/sja1105_main.c
ceec8bc0988dca Vladimir Oltean 2021-06-08 690
30a100e60cf36a Vladimir Oltean 2021-08-04 691 static int sja1105_init_topology(struct sja1105_private *priv,
30a100e60cf36a Vladimir Oltean 2021-08-04 692 struct sja1105_general_params_entry *general_params)
30a100e60cf36a Vladimir Oltean 2021-08-04 693 {
30a100e60cf36a Vladimir Oltean 2021-08-04 694 struct dsa_switch *ds = priv->ds;
30a100e60cf36a Vladimir Oltean 2021-08-04 695 int port;
30a100e60cf36a Vladimir Oltean 2021-08-04 696
30a100e60cf36a Vladimir Oltean 2021-08-04 697 /* The host port is the destination for traffic matching mac_fltres1
30a100e60cf36a Vladimir Oltean 2021-08-04 698 * and mac_fltres0 on all ports except itself. Default to an invalid
30a100e60cf36a Vladimir Oltean 2021-08-04 699 * value.
30a100e60cf36a Vladimir Oltean 2021-08-04 700 */
30a100e60cf36a Vladimir Oltean 2021-08-04 701 general_params->host_port = ds->num_ports;
30a100e60cf36a Vladimir Oltean 2021-08-04 702
30a100e60cf36a Vladimir Oltean 2021-08-04 703 /* Link-local traffic received on casc_port will be forwarded
30a100e60cf36a Vladimir Oltean 2021-08-04 704 * to host_port without embedding the source port and device ID
30a100e60cf36a Vladimir Oltean 2021-08-04 705 * info in the destination MAC address, and no RX timestamps will be
30a100e60cf36a Vladimir Oltean 2021-08-04 706 * taken either (presumably because it is a cascaded port and a
30a100e60cf36a Vladimir Oltean 2021-08-04 707 * downstream SJA switch already did that).
30a100e60cf36a Vladimir Oltean 2021-08-04 708 * To disable the feature, we need to do different things depending on
30a100e60cf36a Vladimir Oltean 2021-08-04 709 * switch generation. On SJA1105 we need to set an invalid port, while
30a100e60cf36a Vladimir Oltean 2021-08-04 710 * on SJA1110 which support multiple cascaded ports, this field is a
30a100e60cf36a Vladimir Oltean 2021-08-04 711 * bitmask so it must be left zero.
30a100e60cf36a Vladimir Oltean 2021-08-04 712 */
30a100e60cf36a Vladimir Oltean 2021-08-04 713 if (!priv->info->multiple_cascade_ports)
30a100e60cf36a Vladimir Oltean 2021-08-04 714 general_params->casc_port = ds->num_ports;
30a100e60cf36a Vladimir Oltean 2021-08-04 715
30a100e60cf36a Vladimir Oltean 2021-08-04 716 for (port = 0; port < ds->num_ports; port++) {
30a100e60cf36a Vladimir Oltean 2021-08-04 717 bool is_upstream = dsa_is_upstream_port(ds, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 718 bool is_dsa_link = dsa_is_dsa_port(ds, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 719
30a100e60cf36a Vladimir Oltean 2021-08-04 720 /* Upstream ports can be dedicated CPU ports or
30a100e60cf36a Vladimir Oltean 2021-08-04 721 * upstream-facing DSA links
30a100e60cf36a Vladimir Oltean 2021-08-04 722 */
30a100e60cf36a Vladimir Oltean 2021-08-04 723 if (is_upstream) {
30a100e60cf36a Vladimir Oltean 2021-08-04 724 if (general_params->host_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 725 general_params->host_port = port;
30a100e60cf36a Vladimir Oltean 2021-08-04 726 } else {
30a100e60cf36a Vladimir Oltean 2021-08-04 727 dev_err(ds->dev,
30a100e60cf36a Vladimir Oltean 2021-08-04 728 "Port %llu is already a host port, configuring %d as one too is not supported\n",
30a100e60cf36a Vladimir Oltean 2021-08-04 729 general_params->host_port, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 730 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 731 }
30a100e60cf36a Vladimir Oltean 2021-08-04 732 }
30a100e60cf36a Vladimir Oltean 2021-08-04 733
30a100e60cf36a Vladimir Oltean 2021-08-04 734 /* Cascade ports are downstream-facing DSA links */
30a100e60cf36a Vladimir Oltean 2021-08-04 735 if (is_dsa_link && !is_upstream) {
30a100e60cf36a Vladimir Oltean 2021-08-04 736 if (priv->info->multiple_cascade_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 @737 general_params->casc_port |= BIT(port);
30a100e60cf36a Vladimir Oltean 2021-08-04 738 } else if (general_params->casc_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 739 general_params->casc_port = port;
30a100e60cf36a Vladimir Oltean 2021-08-04 740 } else {
30a100e60cf36a Vladimir Oltean 2021-08-04 741 dev_err(ds->dev,
30a100e60cf36a Vladimir Oltean 2021-08-04 742 "Port %llu is already a cascade port, configuring %d as one too is not supported\n",
30a100e60cf36a Vladimir Oltean 2021-08-04 743 general_params->casc_port, port);
30a100e60cf36a Vladimir Oltean 2021-08-04 744 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 745 }
30a100e60cf36a Vladimir Oltean 2021-08-04 746 }
30a100e60cf36a Vladimir Oltean 2021-08-04 747 }
30a100e60cf36a Vladimir Oltean 2021-08-04 748
30a100e60cf36a Vladimir Oltean 2021-08-04 749 if (general_params->host_port == ds->num_ports) {
30a100e60cf36a Vladimir Oltean 2021-08-04 750 dev_err(ds->dev, "No host port configured\n");
30a100e60cf36a Vladimir Oltean 2021-08-04 751 return -EINVAL;
30a100e60cf36a Vladimir Oltean 2021-08-04 752 }
30a100e60cf36a Vladimir Oltean 2021-08-04 753
30a100e60cf36a Vladimir Oltean 2021-08-04 754 return 0;
30a100e60cf36a Vladimir Oltean 2021-08-04 755 }
30a100e60cf36a Vladimir Oltean 2021-08-04 756
---
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: 36037 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2022-05-29 0:41 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-27 4:16 drivers/net/dsa/sja1105/sja1105_main.c:737 sja1105_init_topology() warn: should '(((1))) << port' be a 64 bit type? kernel test robot
-- strict thread matches above, loose matches on Subject: below --
2022-05-29 0:41 kernel test robot
2022-02-11 19:00 kernel test robot
2021-11-15 23:06 kernel test robot
2021-11-08 20:41 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.