lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Sat, 4 Apr 2015 18:38:14 +0200 From: Andrew Lunn <andrew@...n.ch> To: Pavel Nakonechny <pavel.nakonechny@...tlab.ru> Cc: netdev@...r.kernel.org, "David S. Miller" <davem@...emloft.net>, Grant Likely <grant.likely@...aro.org>, Rob Herring <robh+dt@...nel.org>, Florian Fainelli <f.fainelli@...il.com>, Fabian Frederick <fabf@...net.be>, Alexander Duyck <alexander.h.duyck@...el.com>, Joe Perches <joe@...ches.com>, linux-kernel@...r.kernel.org Subject: Re: [PATCH] net: dsa: fix filling rtable from OF description Hi Pavel There is the code after applying your patch: static int dsa_of_setup_routing_table(struct dsa_platform_data *pd, struct dsa_chip_data *cd, int chip_index, int port_index, struct device_node *link) { const __be32 *reg; int link_sw_addr; struct device_node *parent_sw; int len; parent_sw = of_get_parent(link); if (!parent_sw) return -EINVAL; link is the phandle to the port in other switch. parent_sw is then the switch property. reg = of_get_property(parent_sw, "reg", &len); if (!reg || (len != sizeof(*reg) * 2)) return -EINVAL; So now you get the reg property. This is documented as: - reg : Describes the switch address on the MII bus link_sw_addr = be32_to_cpup(reg + 1); if (link_sw_addr >= pd->nr_chips) return -EINVAL; This is now not making much sense. Looking up the MII bus address seems wrong. You want the chip number, not its address. Andrew /* First time routing table allocation */ if (!cd->rtable) { cd->rtable = kmalloc_array(pd->nr_chips, sizeof(s8), GFP_KERNEL); if (!cd->rtable) return -ENOMEM; /* default to no valid uplink/downlink */ memset(cd->rtable, -1, pd->nr_chips * sizeof(s8)); } cd->rtable[link_sw_addr] = port_index; return 0; } -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists