Skip to content

Commit

Permalink
Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/li…
Browse files Browse the repository at this point in the history
…nux/kernel/git/tip/linux-2.6-tip

* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  x86 mmiotrace: fix remove_kmmio_fault_pages()
  • Loading branch information
Linus Torvalds committed Mar 10, 2009
2 parents a651d79 + d0fc63f commit 1abaf33
Showing 1 changed file with 8 additions and 7 deletions.
15 changes: 8 additions & 7 deletions arch/x86/mm/kmmio.c
Original file line number Diff line number Diff line change
Expand Up @@ -451,23 +451,24 @@ static void rcu_free_kmmio_fault_pages(struct rcu_head *head)

static void remove_kmmio_fault_pages(struct rcu_head *head)
{
struct kmmio_delayed_release *dr = container_of(
head,
struct kmmio_delayed_release,
rcu);
struct kmmio_delayed_release *dr =
container_of(head, struct kmmio_delayed_release, rcu);
struct kmmio_fault_page *p = dr->release_list;
struct kmmio_fault_page **prevp = &dr->release_list;
unsigned long flags;

spin_lock_irqsave(&kmmio_lock, flags);
while (p) {
if (!p->count)
if (!p->count) {
list_del_rcu(&p->list);
else
prevp = &p->release_next;
} else {
*prevp = p->release_next;
prevp = &p->release_next;
}
p = p->release_next;
}
spin_unlock_irqrestore(&kmmio_lock, flags);

/* This is the real RCU destroy call. */
call_rcu(&dr->rcu, rcu_free_kmmio_fault_pages);
}
Expand Down

0 comments on commit 1abaf33

Please sign in to comment.