|
@@ -103,7 +103,10 @@ static int pci_epc_epf_link(struct config_item *epc_item,
|
|
struct pci_epf *epf = epf_group->epf;
|
|
struct pci_epf *epf = epf_group->epf;
|
|
|
|
|
|
func_no = find_first_zero_bit(&epc_group->function_num_map,
|
|
func_no = find_first_zero_bit(&epc_group->function_num_map,
|
|
- sizeof(epc_group->function_num_map));
|
|
|
|
|
|
+ BITS_PER_LONG);
|
|
|
|
+ if (func_no >= BITS_PER_LONG)
|
|
|
|
+ return -EINVAL;
|
|
|
|
+
|
|
set_bit(func_no, &epc_group->function_num_map);
|
|
set_bit(func_no, &epc_group->function_num_map);
|
|
epf->func_no = func_no;
|
|
epf->func_no = func_no;
|
|
|
|
|