mirror of https://gitee.com/openkylin/linux.git
x86/pci: Use resource_size_t in update_res
Prepare to enable 32bit intel and amd bus. Signed-off-by: Yinghai Lu <yinghai@kernel.org> LKML-Reference: <1265793639-15071-5-git-send-email-yinghai@kernel.org> Acked-by: Jesse Barnes <jbarnes@virtuousgeek.org> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
This commit is contained in:
parent
27811d8cab
commit
b74fd238a9
|
@ -51,8 +51,8 @@ void x86_pci_root_bus_res_quirks(struct pci_bus *b)
|
|||
}
|
||||
}
|
||||
|
||||
void __devinit update_res(struct pci_root_info *info, size_t start,
|
||||
size_t end, unsigned long flags, int merge)
|
||||
void __devinit update_res(struct pci_root_info *info, resource_size_t start,
|
||||
resource_size_t end, unsigned long flags, int merge)
|
||||
{
|
||||
int i;
|
||||
struct resource *res;
|
||||
|
@ -65,20 +65,20 @@ void __devinit update_res(struct pci_root_info *info, size_t start,
|
|||
|
||||
/* try to merge it with old one */
|
||||
for (i = 0; i < info->res_num; i++) {
|
||||
size_t final_start, final_end;
|
||||
size_t common_start, common_end;
|
||||
resource_size_t final_start, final_end;
|
||||
resource_size_t common_start, common_end;
|
||||
|
||||
res = &info->res[i];
|
||||
if (res->flags != flags)
|
||||
continue;
|
||||
|
||||
common_start = max((size_t)res->start, start);
|
||||
common_end = min((size_t)res->end, end);
|
||||
common_start = max(res->start, start);
|
||||
common_end = min(res->end, end);
|
||||
if (common_start > common_end + 1)
|
||||
continue;
|
||||
|
||||
final_start = min((size_t)res->start, start);
|
||||
final_end = max((size_t)res->end, end);
|
||||
final_start = min(res->start, start);
|
||||
final_end = max(res->end, end);
|
||||
|
||||
res->start = final_start;
|
||||
res->end = final_end;
|
||||
|
|
|
@ -22,6 +22,6 @@ extern int pci_root_num;
|
|||
extern struct pci_root_info pci_root_info[PCI_ROOT_NR];
|
||||
extern int found_all_numa_early;
|
||||
|
||||
extern void update_res(struct pci_root_info *info, size_t start,
|
||||
size_t end, unsigned long flags, int merge);
|
||||
extern void update_res(struct pci_root_info *info, resource_size_t start,
|
||||
resource_size_t end, unsigned long flags, int merge);
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue