Release 4.14 arch/x86/kernel/resource.c
// SPDX-License-Identifier: GPL-2.0
#include <linux/ioport.h>
#include <asm/e820/api.h>
static void resource_clip(struct resource *res, resource_size_t start,
resource_size_t end)
{
resource_size_t low = 0, high = 0;
if (res->end < start || res->start > end)
return; /* no conflict */
if (res->start < start)
low = start - res->start;
if (res->end > end)
high = res->end - end;
/* Keep the area above or below the conflict, whichever is larger */
if (low > high)
res->end = start - 1;
else
res->start = end + 1;
}
Contributors
Person | Tokens | Prop | Commits | CommitProp |
Björn Helgaas | 98 | 100.00% | 1 | 100.00% |
Total | 98 | 100.00% | 1 | 100.00% |
static void remove_e820_regions(struct resource *avail)
{
int i;
struct e820_entry *entry;
for (i = 0; i < e820_table->nr_entries; i++) {
entry = &e820_table->entries[i];
resource_clip(avail, entry->addr,
entry->addr + entry->size - 1);
}
}
Contributors
Person | Tokens | Prop | Commits | CommitProp |
Björn Helgaas | 58 | 89.23% | 1 | 20.00% |
Ingo Molnar | 5 | 7.69% | 3 | 60.00% |
Denys Vlasenko | 2 | 3.08% | 1 | 20.00% |
Total | 65 | 100.00% | 5 | 100.00% |
void arch_remove_reservations(struct resource *avail)
{
/*
* Trim out BIOS area (high 2MB) and E820 regions. We do not remove
* the low 1MB unconditionally, as this area is needed for some ISA
* cards requiring a memory range, e.g. the i82365 PCMCIA controller.
*/
if (avail->flags & IORESOURCE_MEM) {
resource_clip(avail, BIOS_ROM_BASE, BIOS_ROM_END);
remove_e820_regions(avail);
}
}
Contributors
Person | Tokens | Prop | Commits | CommitProp |
Björn Helgaas | 34 | 97.14% | 3 | 75.00% |
Christoph Schulz | 1 | 2.86% | 1 | 25.00% |
Total | 35 | 100.00% | 4 | 100.00% |
Overall Contributors
Person | Tokens | Prop | Commits | CommitProp |
Björn Helgaas | 195 | 95.12% | 3 | 30.00% |
Ingo Molnar | 6 | 2.93% | 4 | 40.00% |
Denys Vlasenko | 2 | 0.98% | 1 | 10.00% |
Greg Kroah-Hartman | 1 | 0.49% | 1 | 10.00% |
Christoph Schulz | 1 | 0.49% | 1 | 10.00% |
Total | 205 | 100.00% | 10 | 100.00% |
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.