* [bug report] net: dsa: Mock-up driver
@ 2017-04-03 18:55 Dan Carpenter
2017-04-03 18:59 ` Dan Carpenter
0 siblings, 1 reply; 2+ messages in thread
From: Dan Carpenter @ 2017-04-03 18:55 UTC (permalink / raw)
To: kernel-janitors
Hello Florian Fainelli,
The patch 98cd1552ea27: "net: dsa: Mock-up driver" from Mar 30, 2017,
leads to the following static checker warning:
drivers/net/dsa/dsa_loop.c:181 dsa_loop_port_vlan_del()
error: XXX uninitialized symbol 'pvid'.
drivers/net/dsa/dsa_loop.c
163 bool untagged = vlan->flags & BRIDGE_VLAN_INFO_UNTAGGED;
164 struct dsa_loop_priv *ps = ds->priv;
165 struct mii_bus *bus = ps->bus;
166 struct dsa_loop_vlan *vl;
167 u16 vid, pvid;
168
169 dev_dbg(ds->dev, "%s\n", __func__);
170
171 /* Just do a sleeping operation to make lockdep checks effective */
172 mdiobus_read(bus, ps->port_base + port, MII_BMSR);
173
174 for (vid = vlan->vid_begin; vid <= vlan->vid_end; ++vid) {
175 vl = &ps->vlans[vid];
176
177 vl->members &= ~BIT(port);
178 if (untagged)
179 vl->untagged &= ~BIT(port);
180
181 if (pvid = vid)
What's pvid supposed to start out as? This isn't right.
182 pvid = 1;
183 }
184 ps->pvid = pvid;
185
186 return 0;
regards,
dan carpenter
^ permalink raw reply [flat|nested] 2+ messages in thread
* [bug report] net: dsa: Mock-up driver
2017-04-03 18:55 [bug report] net: dsa: Mock-up driver Dan Carpenter
@ 2017-04-03 18:59 ` Dan Carpenter
0 siblings, 0 replies; 2+ messages in thread
From: Dan Carpenter @ 2017-04-03 18:59 UTC (permalink / raw)
To: kernel-janitors
Hello Florian Fainelli,
The patch 98cd1552ea27: "net: dsa: Mock-up driver" from Mar 30, 2017,
leads to the following static checker warning:
drivers/net/dsa/dsa_loop.c:223 dsa_loop_port_vlan_dump()
error: uninitialized symbol 'err'.
drivers/net/dsa/dsa_loop.c
189 static int dsa_loop_port_vlan_dump(struct dsa_switch *ds, int port,
190 struct switchdev_obj_port_vlan *vlan,
191 int (*cb)(struct switchdev_obj *obj))
192 {
193 struct dsa_loop_priv *ps = ds->priv;
194 struct mii_bus *bus = ps->bus;
195 struct dsa_loop_vlan *vl;
196 u16 vid, vid_start = 0;
197 int err;
198
199 dev_dbg(ds->dev, "%s\n", __func__);
200
201 /* Just do a sleeping operation to make lockdep checks effective */
202 mdiobus_read(bus, ps->port_base + port, MII_BMSR);
203
204 for (vid = vid_start; vid < DSA_LOOP_VLANS; vid++) {
205 vl = &ps->vlans[vid];
206
207 if (!(vl->members & BIT(port)))
208 continue;
This one probably is not as serious a concern but the static checker is
whining that we could hit this continue on every iteration through the
loop.
209
210 vlan->vid_begin = vlan->vid_end = vid;
211 vlan->flags = 0;
212
213 if (vl->untagged & BIT(port))
214 vlan->flags |= BRIDGE_VLAN_INFO_UNTAGGED;
215 if (ps->pvid = vid)
216 vlan->flags |= BRIDGE_VLAN_INFO_PVID;
217
218 err = cb(&vlan->obj);
219 if (err)
220 break;
221 }
222
223 return err;
And then return an uninitialized value.
224 }
regards,
dan carpenter
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2017-04-03 18:59 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-04-03 18:55 [bug report] net: dsa: Mock-up driver Dan Carpenter
2017-04-03 18:59 ` Dan Carpenter
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox