Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1341949 > unrolled thread
| Started by | "Rafael J. Wysocki" <rafael@kernel.org> |
|---|---|
| First post | 2016-02-24 14:10 +0100 |
| Last post | 2016-02-24 15:50 +0100 |
| Articles | 2 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [PATCH] acpi, pci, irq: account for early penalty assignment "Rafael J. Wysocki" <rafael@kernel.org> - 2016-02-24 14:10 +0100
Re: [PATCH] acpi, pci, irq: account for early penalty assignment Sinan Kaya <okaya@codeaurora.org> - 2016-02-24 15:50 +0100
| From | "Rafael J. Wysocki" <rafael@kernel.org> |
|---|---|
| Date | 2016-02-24 14:10 +0100 |
| Subject | Re: [PATCH] acpi, pci, irq: account for early penalty assignment |
| Message-ID | <r5Hmy-4ZE-11@gated-at.bofh.it> |
Hi, On Tue, Feb 16, 2016 at 3:15 AM, Sinan Kaya <okaya@codeaurora.org> wrote: > On 2/15/2016 7:26 PM, Rafael J. Wysocki wrote: >> On Mon, Feb 15, 2016 at 5:41 PM, Sinan Kaya <okaya@codeaurora.org> wrote: >>> A crash has been observed when assigning penalty on x86 systems. >>> >>> It looks like this problem happens on x86 platforms with IOAPIC and an SCI >>> interrupt override in the ACPI table with interrupt number greater than >>> 16. (22 in this example) >>> >>> The bug has been introduced by "ACPI, PCI, irq: remove interrupt count >>> restriction" commit. The code was using kmalloc to resize the interrupt >>> list. In this use case, the set penalty call is coming from early phase >>> and the heap is not initialized yet. >>> >>> BUG: unable to handle kernel NULL pointer dereference at 0000000000000018 >>> IP: [<ffffffff811e8b9d>] kmem_cache_alloc_trace+0xad/0x1c0 >>> PGD 0 >>> Oops: 0000 [#1] SMP >>> Modules linked in: >>> CPU: 0 PID: 0 Comm: swapper Not tainted 4.5.0-rc2Feb-3_RK #1 >>> Hardware name: HP Superdome2 16s, BIOS Bundle: 007.006.000 SFW: 033.162.000 >>> 10/30/2015 >>> [<ffffffff813bc190>] acpi_irq_set_penalty+0x60/0x8e >>> [<ffffffff813bc1df>] acpi_irq_add_penalty+0x21/0x26 >>> [<ffffffff813bc76d>] acpi_penalize_sci_irq+0x25/0x28 >>> [<ffffffff81b8260d>] acpi_sci_ioapic_setup+0x68/0x78 >>> [<ffffffff81b830fc>] acpi_boot_init+0x2cc/0x533 >>> [<ffffffff810677c8>] ? set_pte_vaddr_pud+0x48/0x50 >>> [<ffffffff81b828cf>] ? acpi_parse_x2apic+0x77/0x77 >>> [<ffffffff81b82858>] ? dmi_ignore_irq0_timer_override+0x30/0x30 >>> [<ffffffff81b77c1e>] setup_arch+0xc24/0xce9 >>> [<ffffffff81b6e120>] ? early_idt_handler_array+0x120/0x120 >>> [<ffffffff81b6ed94>] start_kernel+0xfc/0x506 >>> [<ffffffff81b6e120>] ? early_idt_handler_array+0x120/0x120 >>> [<ffffffff81b6e120>] ? early_idt_handler_array+0x120/0x120 >>> [<ffffffff81b6e5ee>] x86_64_start_reservations+0x2a/0x2c >>> [<ffffffff81b6e73c>] x86_64_start_kernel+0x14c/0x16f >>> >>> Besides from the use case above, there is one more situation where >>> set_penalty is being called from the init context like. There is support >>> for setting the penalty through kernel command line. >>> >>> Adding support to be called from early context for limited number of >>> interrupts. >>> >>> Signed-off-by: Sinan Kaya <okaya@codeaurora.org> >> >> This looks somewhat hackish to me to be honest. > I know. So after an e-mail exchange with Bjorn I've decided to revert the problematic commit for 4.5, so please submit it again with the fix folded in (or a better way to address the issue if you have one). Thanks, Rafael
[toc] | [next] | [standalone]
| From | Sinan Kaya <okaya@codeaurora.org> |
|---|---|
| Date | 2016-02-24 15:50 +0100 |
| Message-ID | <r5IVk-5Xo-9@gated-at.bofh.it> |
| In reply to | #1341949 |
On 2/24/2016 8:04 AM, Rafael J. Wysocki wrote: > Hi, > > On Tue, Feb 16, 2016 at 3:15 AM, Sinan Kaya <okaya@codeaurora.org> wrote: >> On 2/15/2016 7:26 PM, Rafael J. Wysocki wrote: >>> On Mon, Feb 15, 2016 at 5:41 PM, Sinan Kaya <okaya@codeaurora.org> wrote: >>>> A crash has been observed when assigning penalty on x86 systems. >>>> >>>> It looks like this problem happens on x86 platforms with IOAPIC and an SCI >>>> interrupt override in the ACPI table with interrupt number greater than >>>> 16. (22 in this example) >>>> >>>> The bug has been introduced by "ACPI, PCI, irq: remove interrupt count >>>> restriction" commit. The code was using kmalloc to resize the interrupt >>>> list. In this use case, the set penalty call is coming from early phase >>>> and the heap is not initialized yet. >>>> >>>> BUG: unable to handle kernel NULL pointer dereference at 0000000000000018 >>>> IP: [<ffffffff811e8b9d>] kmem_cache_alloc_trace+0xad/0x1c0 >>>> PGD 0 >>>> Oops: 0000 [#1] SMP >>>> Modules linked in: >>>> CPU: 0 PID: 0 Comm: swapper Not tainted 4.5.0-rc2Feb-3_RK #1 >>>> Hardware name: HP Superdome2 16s, BIOS Bundle: 007.006.000 SFW: 033.162.000 >>>> 10/30/2015 >>>> [<ffffffff813bc190>] acpi_irq_set_penalty+0x60/0x8e >>>> [<ffffffff813bc1df>] acpi_irq_add_penalty+0x21/0x26 >>>> [<ffffffff813bc76d>] acpi_penalize_sci_irq+0x25/0x28 >>>> [<ffffffff81b8260d>] acpi_sci_ioapic_setup+0x68/0x78 >>>> [<ffffffff81b830fc>] acpi_boot_init+0x2cc/0x533 >>>> [<ffffffff810677c8>] ? set_pte_vaddr_pud+0x48/0x50 >>>> [<ffffffff81b828cf>] ? acpi_parse_x2apic+0x77/0x77 >>>> [<ffffffff81b82858>] ? dmi_ignore_irq0_timer_override+0x30/0x30 >>>> [<ffffffff81b77c1e>] setup_arch+0xc24/0xce9 >>>> [<ffffffff81b6e120>] ? early_idt_handler_array+0x120/0x120 >>>> [<ffffffff81b6ed94>] start_kernel+0xfc/0x506 >>>> [<ffffffff81b6e120>] ? early_idt_handler_array+0x120/0x120 >>>> [<ffffffff81b6e120>] ? early_idt_handler_array+0x120/0x120 >>>> [<ffffffff81b6e5ee>] x86_64_start_reservations+0x2a/0x2c >>>> [<ffffffff81b6e73c>] x86_64_start_kernel+0x14c/0x16f >>>> >>>> Besides from the use case above, there is one more situation where >>>> set_penalty is being called from the init context like. There is support >>>> for setting the penalty through kernel command line. >>>> >>>> Adding support to be called from early context for limited number of >>>> interrupts. >>>> >>>> Signed-off-by: Sinan Kaya <okaya@codeaurora.org> >>> >>> This looks somewhat hackish to me to be honest. >> I know. > > So after an e-mail exchange with Bjorn I've decided to revert the > problematic commit for 4.5, so please submit it again with the fix > folded in (or a better way to address the issue if you have one). > OK, I'll post a new version of the removed patch with this included. We can discuss on the list if there is a better way of doing things. > Thanks, > Rafael > -- > To unsubscribe from this list: send the line "unsubscribe linux-pci" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- Sinan Kaya Qualcomm Technologies, Inc. on behalf of Qualcomm Innovation Center, Inc. Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web