net/ncsi: Improve general state logging
The NCSI driver is mostly silent which becomes a headache when trying to determine what has occurred on the NCSI connection. This adds additional logging in a few key areas such as state transitions and calling out certain errors more visibly. Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
a8a6f1e4ea
commit
9ef8690be1
@@ -73,6 +73,9 @@ static int ncsi_aen_handler_lsc(struct ncsi_dev_priv *ndp,
|
||||
ncm->data[2] = data;
|
||||
ncm->data[4] = ntohl(lsc->oem_status);
|
||||
|
||||
netdev_info(ndp->ndev.dev, "NCSI: LSC AEN - channel %u state %s\n",
|
||||
nc->id, data & 0x1 ? "up" : "down");
|
||||
|
||||
chained = !list_empty(&nc->link);
|
||||
state = nc->state;
|
||||
spin_unlock_irqrestore(&nc->lock, flags);
|
||||
@@ -145,6 +148,8 @@ static int ncsi_aen_handler_hncdsc(struct ncsi_dev_priv *ndp,
|
||||
ncm = &nc->modes[NCSI_MODE_LINK];
|
||||
hncdsc = (struct ncsi_aen_hncdsc_pkt *)h;
|
||||
ncm->data[3] = ntohl(hncdsc->status);
|
||||
netdev_info(ndp->ndev.dev, "NCSI: HNCDSC AEN - channel %u state %s\n",
|
||||
nc->id, ncm->data[3] & 0x3 ? "up" : "down");
|
||||
if (!list_empty(&nc->link) ||
|
||||
nc->state != NCSI_CHANNEL_ACTIVE) {
|
||||
spin_unlock_irqrestore(&nc->lock, flags);
|
||||
@@ -212,10 +217,18 @@ int ncsi_aen_handler(struct ncsi_dev_priv *ndp, struct sk_buff *skb)
|
||||
}
|
||||
|
||||
ret = ncsi_validate_aen_pkt(h, nah->payload);
|
||||
if (ret)
|
||||
if (ret) {
|
||||
netdev_warn(ndp->ndev.dev,
|
||||
"NCSI: 'bad' packet ignored for AEN type 0x%x\n",
|
||||
h->type);
|
||||
goto out;
|
||||
}
|
||||
|
||||
ret = nah->handler(ndp, h);
|
||||
if (ret)
|
||||
netdev_err(ndp->ndev.dev,
|
||||
"NCSI: Handler for AEN type 0x%x returned %d\n",
|
||||
h->type, ret);
|
||||
out:
|
||||
consume_skb(skb);
|
||||
return ret;
|
||||
|
Reference in New Issue
Block a user