Commit 9571d987 authored by Jakub Kicinski's avatar Jakub Kicinski Committed by David S. Miller
Browse files

nfp: add offset to all TLV parsing errors



When troubleshooting incorrect FW capabilities it's useful to know
where the faulty TLV is located.  Add offset to all errors messages.

Signed-off-by: default avatarJakub Kicinski <jakub.kicinski@netronome.com>
Reviewed-by: default avatarDirk van der Merwe <dirk.vandermerwe@netronome.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 51a6588e
Loading
Loading
Loading
Loading
+8 −8
Original line number Diff line number Diff line
@@ -41,8 +41,8 @@ int nfp_net_tlv_caps_parse(struct device *dev, u8 __iomem *ctrl_mem,
		data += 4;

		if (length % NFP_NET_CFG_TLV_LENGTH_INC) {
			dev_err(dev, "TLV size not multiple of %u len:%u\n",
				NFP_NET_CFG_TLV_LENGTH_INC, length);
			dev_err(dev, "TLV size not multiple of %u offset:%u len:%u\n",
				NFP_NET_CFG_TLV_LENGTH_INC, offset, length);
			return -EINVAL;
		}
		if (data + length > end) {
@@ -61,14 +61,14 @@ int nfp_net_tlv_caps_parse(struct device *dev, u8 __iomem *ctrl_mem,
			if (!length)
				return 0;

			dev_err(dev, "END TLV should be empty, has len:%d\n",
				length);
			dev_err(dev, "END TLV should be empty, has offset:%u len:%d\n",
				offset, length);
			return -EINVAL;
		case NFP_NET_CFG_TLV_TYPE_ME_FREQ:
			if (length != 4) {
				dev_err(dev,
					"ME FREQ TLV should be 4B, is %dB\n",
					length);
					"ME FREQ TLV should be 4B, is %dB offset:%u\n",
					length, offset);
				return -EINVAL;
			}

@@ -92,8 +92,8 @@ int nfp_net_tlv_caps_parse(struct device *dev, u8 __iomem *ctrl_mem,
			break;
		case NFP_NET_CFG_TLV_TYPE_REPR_CAP:
			if (length < 4) {
				dev_err(dev, "REPR CAP TLV short %dB < 4B\n",
					length);
				dev_err(dev, "REPR CAP TLV short %dB < 4B offset:%u\n",
					length, offset);
				return -EINVAL;
			}