Re: [BUGFIX PATCH][RESEND] kexec & iosapic: kexec oops when iosapic was removed

2012-08-20 Thread Hanjun Guo
On 2012/8/17 3:33, Toshi Kani wrote: > On Thu, 2012-08-16 at 18:28 +0800, Hanjun Guo wrote: >> On 2012/8/13 10:54, Luck, Tony wrote: vec = irq_to_vector(irq); list_for_each_entry(rte, >rtes, rte_list) { + if

Re: [BUGFIX PATCH][RESEND] kexec iosapic: kexec oops when iosapic was removed

2012-08-20 Thread Hanjun Guo
On 2012/8/17 3:33, Toshi Kani wrote: On Thu, 2012-08-16 at 18:28 +0800, Hanjun Guo wrote: On 2012/8/13 10:54, Luck, Tony wrote: vec = irq_to_vector(irq); list_for_each_entry(rte, info-rtes, rte_list) { + if (rte-refcnt ==

Re: [BUGFIX PATCH][RESEND] kexec & iosapic: kexec oops when iosapic was removed

2012-08-16 Thread Toshi Kani
On Thu, 2012-08-16 at 18:28 +0800, Hanjun Guo wrote: > On 2012/8/13 10:54, Luck, Tony wrote: > >>vec = irq_to_vector(irq); > >>list_for_each_entry(rte, >rtes, > >>rte_list) { > >> + if (rte->refcnt == NO_REF_RTE) > >> +

Re: [BUGFIX PATCH][RESEND] kexec & iosapic: kexec oops when iosapic was removed

2012-08-16 Thread Hanjun Guo
On 2012/8/13 10:54, Luck, Tony wrote: >> vec = irq_to_vector(irq); >> list_for_each_entry(rte, >rtes, >> rte_list) { >> +if (rte->refcnt == NO_REF_RTE) >> +continue; >> + >>

Re: [BUGFIX PATCH][RESEND] kexec iosapic: kexec oops when iosapic was removed

2012-08-16 Thread Hanjun Guo
On 2012/8/13 10:54, Luck, Tony wrote: vec = irq_to_vector(irq); list_for_each_entry(rte, info-rtes, rte_list) { +if (rte-refcnt == NO_REF_RTE) +continue; +

Re: [BUGFIX PATCH][RESEND] kexec iosapic: kexec oops when iosapic was removed

2012-08-16 Thread Toshi Kani
On Thu, 2012-08-16 at 18:28 +0800, Hanjun Guo wrote: On 2012/8/13 10:54, Luck, Tony wrote: vec = irq_to_vector(irq); list_for_each_entry(rte, info-rtes, rte_list) { + if (rte-refcnt == NO_REF_RTE) +

RE: [BUGFIX PATCH][RESEND] kexec & iosapic: kexec oops when iosapic was removed

2012-08-12 Thread Luck, Tony
> vec = irq_to_vector(irq); > list_for_each_entry(rte, >rtes, > rte_list) { > + if (rte->refcnt == NO_REF_RTE) > + continue; > + > iosapic_write(rte->iosapic, >

RE: [BUGFIX PATCH][RESEND] kexec iosapic: kexec oops when iosapic was removed

2012-08-12 Thread Luck, Tony
vec = irq_to_vector(irq); list_for_each_entry(rte, info-rtes, rte_list) { + if (rte-refcnt == NO_REF_RTE) + continue; + iosapic_write(rte-iosapic,

[BUGFIX PATCH][RESEND] kexec & iosapic: kexec oops when iosapic was removed

2012-08-10 Thread Hanjun Guo
Hi, all We are working on a node hot-plug project, and IOAPIC is one of these devices to be removed. but after IOSAPIC was removed, we use kexec to start a new kernel, oops happended. I reviewed the code and find out: iosapic_remove iosapic_free memset(_lists[index], 0,

[BUGFIX PATCH][RESEND] kexec iosapic: kexec oops when iosapic was removed

2012-08-10 Thread Hanjun Guo
Hi, all We are working on a node hot-plug project, and IOAPIC is one of these devices to be removed. but after IOSAPIC was removed, we use kexec to start a new kernel, oops happended. I reviewed the code and find out: iosapic_remove iosapic_free memset(iosapic_lists[index], 0,