Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 249885
b: refs/heads/master
c: 15bac20
h: refs/heads/master
i:
  249883: 039463d
v: v3
  • Loading branch information
Suresh Siddha authored and Ingo Molnar committed May 20, 2011
1 parent 1f8c8a7 commit 91758db
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 32 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 31dce14a3269843f98ce1bc37d0c91b22f1991ee
refs/heads/master: 15bac20bd8a039e9acb274785be82772e1237eed
36 changes: 5 additions & 31 deletions trunk/arch/x86/kernel/apic/io_apic.c
Original file line number Diff line number Diff line change
Expand Up @@ -2887,37 +2887,11 @@ static int __init io_apic_bug_finalize(void)

late_initcall(io_apic_bug_finalize);

static void suspend_ioapic(int ioapic_id)
static void resume_ioapic_id(int ioapic_id)
{
struct IO_APIC_route_entry *saved_data = ioapic_saved_data[ioapic_id];
int i;

if (!saved_data)
return;

for (i = 0; i < nr_ioapic_registers[ioapic_id]; i++)
saved_data[i] = ioapic_read_entry(ioapic_id, i);
}

static int ioapic_suspend(void)
{
int ioapic_id;

for (ioapic_id = 0; ioapic_id < nr_ioapics; ioapic_id++)
suspend_ioapic(ioapic_id);

return 0;
}

static void resume_ioapic(int ioapic_id)
{
struct IO_APIC_route_entry *saved_data = ioapic_saved_data[ioapic_id];
unsigned long flags;
union IO_APIC_reg_00 reg_00;
int i;

if (!saved_data)
return;

raw_spin_lock_irqsave(&ioapic_lock, flags);
reg_00.raw = io_apic_read(ioapic_id, 0);
Expand All @@ -2926,20 +2900,20 @@ static void resume_ioapic(int ioapic_id)
io_apic_write(ioapic_id, 0, reg_00.raw);
}
raw_spin_unlock_irqrestore(&ioapic_lock, flags);
for (i = 0; i < nr_ioapic_registers[ioapic_id]; i++)
ioapic_write_entry(ioapic_id, i, saved_data[i]);
}

static void ioapic_resume(void)
{
int ioapic_id;

for (ioapic_id = nr_ioapics - 1; ioapic_id >= 0; ioapic_id--)
resume_ioapic(ioapic_id);
resume_ioapic_id(ioapic_id);

restore_ioapic_entries();
}

static struct syscore_ops ioapic_syscore_ops = {
.suspend = ioapic_suspend,
.suspend = save_ioapic_entries,
.resume = ioapic_resume,
};

Expand Down

0 comments on commit 91758db

Please sign in to comment.