e820_table
entry = &boot_params_ptr->e820_table[i];
entry = &boot_params_ptr->e820_table[i];
struct boot_e820_entry *desc = boot_params.e820_table;
} while (ireg.ebx && count < ARRAY_SIZE(boot_params.e820_table));
BOOT_PARAM_PRESERVE(e820_table),
extern u64 e820__range_update_table(struct e820_table *t, u64 start, u64 size, enum e820_type old_type, enum e820_type new_type);
extern int e820__update_table(struct e820_table *table);
extern struct e820_table *e820_table;
extern struct e820_table *e820_table_kexec;
extern struct e820_table *e820_table_firmware;
struct boot_e820_entry e820_table[E820_MAX_ENTRIES_ZEROPAGE]; /* 0x2d0 */
memcpy(¶ms->e820_table[nr_e820_entries], entry, sizeof(struct e820_entry));
return _e820__mapped_any(e820_table, start, end, type);
if (e820__update_table(e820_table) < 0)
res = memblock_alloc_or_panic(sizeof(*res) * e820_table->nr_entries,
for (idx = 0; idx < e820_table->nr_entries; idx++) {
struct e820_entry *entry = e820_table->entries + idx;
for (idx = 0; idx < e820_table->nr_entries; idx++) {
struct e820_entry *entry = &e820_table->entries[idx];
for (u32 idx = 0; idx < e820_table->nr_entries; idx++) {
for (u32 idx = 0; idx < e820_table->nr_entries; idx++) {
struct e820_entry *entry = &e820_table->entries[idx];
if (append_e820_table(boot_params.e820_table, boot_params.e820_entries) < 0) {
e820_table->nr_entries = 0;
e820__update_table(e820_table);
memcpy(e820_table_kexec, e820_table, sizeof(*e820_table_kexec));
memcpy(e820_table_firmware, e820_table, sizeof(*e820_table_firmware));
for (idx = 0; idx < e820_table->nr_entries; idx++) {
struct e820_entry *entry = &e820_table->entries[idx];
__init static void __e820__range_add(struct e820_table *table, u64 start, u64 size, enum e820_type type)
__e820__range_add(e820_table, start, size, type);
for (idx = 0; idx < e820_table->nr_entries; idx++) {
struct e820_entry *entry = e820_table->entries + idx;
__init int e820__update_table(struct e820_table *table)
__e820__range_update(struct e820_table *table, u64 start, u64 size, enum e820_type old_type, enum e820_type new_type)
return __e820__range_update(e820_table, start, size, old_type, new_type);
__init u64 e820__range_update_table(struct e820_table *t, u64 start, u64 size,
for (idx = 0; idx < e820_table->nr_entries; idx++) {
struct e820_entry *entry = &e820_table->entries[idx];
__initdata static struct e820_table e820_table_init;
__initdata static struct e820_table e820_table_kexec_init;
__initdata static struct e820_table e820_table_firmware_init;
if (e820__update_table(e820_table))
__refdata struct e820_table *e820_table = &e820_table_init;
__refdata struct e820_table *e820_table_kexec = &e820_table_kexec_init;
for (idx = 0; idx < e820_table->nr_entries; idx++) {
entry = e820_table->entries + idx;
__refdata struct e820_table *e820_table_firmware = &e820_table_firmware_init;
struct e820_table *n;
size = offsetof(struct e820_table, entries) + sizeof(struct e820_entry)*e820_table->nr_entries;
n = kmemdup(e820_table, size, GFP_KERNEL);
e820_table = n;
size = offsetof(struct e820_table, entries) + sizeof(struct e820_entry)*e820_table_kexec->nr_entries;
size = offsetof(struct e820_table, entries) + sizeof(struct e820_entry)*e820_table_firmware->nr_entries;
static bool _e820__mapped_any(struct e820_table *table,
e820__update_table(e820_table);
memcpy(e820_table_kexec, e820_table, sizeof(*e820_table_kexec));
memcpy(e820_table_firmware, e820_table, sizeof(*e820_table_firmware));
for (idx = 0; idx < e820_table->nr_entries; idx++) {
struct e820_entry *entry = &e820_table->entries[idx];
for (idx = 0; idx < e820_table->nr_entries; idx++) {
struct e820_entry *entry = &e820_table->entries[idx];
for (idx = 0; idx < e820_table->nr_entries; idx++) {
struct e820_entry *entry = &e820_table->entries[idx];
e820_table->nr_entries = 0;
e820__update_table(e820_table);
memcpy(¶ms->e820_table, &e820_table_kexec->entries, nr_e820_entries*sizeof(struct e820_entry));
params->e820_table[i].addr,
params->e820_table[i].addr + params->e820_table[i].size - 1,
params->e820_table[i].type);
if (params->e820_table[i].type != E820_TYPE_RAM)
start = params->e820_table[i].addr;
end = params->e820_table[i].addr + params->e820_table[i].size - 1;
for (i = 0; i < e820_table->nr_entries; i++) {
struct e820_entry *entry = &e820_table->entries[i];
for (i = 0; i < e820_table->nr_entries; i++) {
entry = &e820_table->entries[i];
e820__update_table(e820_table);
e820__update_table(e820_table);
for (i = 0; i < e820_table->nr_entries; i++) {
if (e820_table->entries[i].type != E820_TYPE_RAM)
add_mac_region(e820_table->entries[i].addr, e820_table->entries[i].size);
e820__update_table(e820_table);
e820__update_table(e820_table);
pvh_bootparams.e820_table[i].addr = ep->addr;
pvh_bootparams.e820_table[i].size = ep->size;
pvh_bootparams.e820_table[i].type = ep->type;
pvh_bootparams.e820_table[pvh_bootparams.e820_entries].addr =
pvh_bootparams.e820_table[pvh_bootparams.e820_entries].size =
pvh_bootparams.e820_table[pvh_bootparams.e820_entries].type =
static inline u32 compute_e820_crc32(struct e820_table *table)
int size = offsetof(struct e820_table, entries) +
ARRAY_SIZE(bootp->e820_table))
memmap.nr_entries = ARRAY_SIZE(boot_params_p->e820_table);
set_xen_guest_handle(memmap.buffer, boot_params_p->e820_table);
struct boot_e820_entry *e = &bootp->e820_table[i];
struct boot_e820_entry *e = &bootp->e820_table[i];
static struct e820_table xen_e820_table __initdata;
e820__update_table(e820_table);
struct boot_e820_entry *entry = params->e820_table;
if (nr_entries == ARRAY_SIZE(params->e820_table)) {
if (nr_entries > ARRAY_SIZE(params->e820_table)) {
u32 nr_e820ext = nr_entries - ARRAY_SIZE(params->e820_table);
if (nr_desc > ARRAY_SIZE(params->e820_table) - EFI_MMAP_NR_SLACK_SLOTS) {
u32 nr_e820ext = nr_desc - ARRAY_SIZE(params->e820_table) +