Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 116c0074 authored by Roland Dreier's avatar Roland Dreier
Browse files

[IB] Check port number in ib_query_port()/ib_modify_port()



Check port number before passing query_port or modify_port operations
on to device driver.

Signed-off-by: default avatarRoland Dreier <rolandd@cisco.com>
parent f575394f
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -514,6 +514,12 @@ int ib_query_port(struct ib_device *device,
		  u8 port_num,
		  struct ib_port_attr *port_attr)
{
	if (device->node_type == IB_NODE_SWITCH) {
		if (port_num)
			return -EINVAL;
	} else if (port_num < 1 || port_num > device->phys_port_cnt)
		return -EINVAL;

	return device->query_port(device, port_num, port_attr);
}
EXPORT_SYMBOL(ib_query_port);
@@ -583,6 +589,12 @@ int ib_modify_port(struct ib_device *device,
		   u8 port_num, int port_modify_mask,
		   struct ib_port_modify *port_modify)
{
	if (device->node_type == IB_NODE_SWITCH) {
		if (port_num)
			return -EINVAL;
	} else if (port_num < 1 || port_num > device->phys_port_cnt)
		return -EINVAL;

	return device->modify_port(device, port_num, port_modify_mask,
				   port_modify);
}