mirror of
https://github.com/torvalds/linux.git
synced 2024-10-31 17:21:49 +00:00
[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: Roland Dreier <rolandd@cisco.com>
This commit is contained in:
parent
f575394f1d
commit
116c0074ec
@ -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);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user