* 2.6.14-rc2-ge484585e: kexec into same kernel: irq 11 nobody cared; but ehci_hcd should
@ 2005-09-24 11:56 thomas.mey3r
2005-09-24 12:30 ` Denis Vlasenko
0 siblings, 1 reply; 5+ messages in thread
From: thomas.mey3r @ 2005-09-24 11:56 UTC (permalink / raw)
To: linux-kernel
Hi.
I played a bit with the new kexec function:
when i kexec into the same kernel i get this error message:
[17179593.108000] ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 11
[17179593.108000] PCI: setting IRQ 11 as level-triggered
[17179593.108000] ACPI: PCI Interrupt 0000:00:10.3[D] -> Link [LNKD] -> GSI 11 (level, low) -> IRQ 11
[17179593.108000] ehci_hcd 0000:00:10.3: EHCI Host Controller
[17179593.124000] ehci_hcd 0000:00:10.3: new USB bus registered, assigned bus number 4
[17179593.936000] irq 11: nobody cared (try booting with the "irqpoll" option)
[17179593.936000] [<c0103f9e>] dump_stack+0x1e/0x20
[17179593.936000] [<c013dc6b>] __report_bad_irq+0x2b/0x90
[17179593.936000] [<c013dd90>] note_interrupt+0x90/0xf0
[17179593.936000] [<c013d69a>] __do_IRQ+0xca/0xe0
[17179593.936000] [<c010530c>] do_IRQ+0x1c/0x30
[17179593.936000] [<c0103b26>] common_interrupt+0x1a/0x20
[17179593.936000] [<c0120ffa>] do_softirq+0x2a/0x30
[17179593.936000] [<c01210a5>] irq_exit+0x35/0x40
[17179593.936000] [<c0105311>] do_IRQ+0x21/0x30
[17179593.936000] [<c0103b26>] common_interrupt+0x1a/0x20
[17179593.936000] [<c013d931>] setup_irq+0xb1/0x110
[17179593.936000] [<c013dae6>] request_irq+0x86/0xb0
[17179593.936000] [<ec99c344>] usb_add_hcd+0x234/0x3a0 [usbcore]
[17179593.936000] [<ec9a3a59>] usb_hcd_pci_probe+0x269/0x390 [usbcore]
[17179593.936000] [<c01da239>] pci_call_probe+0x19/0x20
[17179593.936000] [<c01da297>] __pci_device_probe+0x57/0x70
[17179593.936000] [<c01da2df>] pci_device_probe+0x2f/0x60
[17179593.936000] [<c021fa49>] driver_probe_device+0x39/0xc0
[17179593.936000] [<c021fbaf>] __driver_attach+0x4f/0x60
[17179593.936000] [<c021ef84>] bus_for_each_dev+0x54/0x80
[17179593.936000] [<c021fbe8>] driver_attach+0x28/0x30
[17179593.936000] [<c021f49d>] bus_add_driver+0x7d/0xe0
[17179593.936000] [<c0220098>] driver_register+0x78/0x80
[17179593.936000] [<c01da5d0>] pci_register_driver+0xb0/0xd0
[17179593.936000] [<eca3d020>] init+0x20/0x26 [ehci_hcd]
[17179593.936000] [<c0137e24>] sys_init_module+0x144/0x1c0
[17179593.936000] [<c01030ff>] sysenter_past_esp+0x54/0x75
[17179593.936000] handlers:
[17179593.936000] [<ec99bf20>] (usb_hcd_irq+0x0/0x70 [usbcore])
[17179593.936000] Disabling IRQ #11
[17179593.972000] ehci_hcd 0000:00:10.3: irq 11, io mem 0xd0004800
[17179593.972000] ehci_hcd 0000:00:10.3: USB 2.0 initialized, EHCI 1.00, driver 10 Dec 2004
[17179593.976000] hub 4-0:1.0: USB hub found
[17179593.976000] hub 4-0:1.0: 6 ports detected
CPU0
0: 245067 XT-PIC timer
1: 2877 XT-PIC i8042
2: 0 XT-PIC cascade
4: 37766 XT-PIC uhci_hcd:usb1, eth0, via@pci:0000:01:00.0
5: 296 XT-PIC yenta, ohci1394, uhci_hcd:usb2
7: 2 XT-PIC parport0
8: 2 XT-PIC rtc
9: 51497 XT-PIC uhci_hcd:usb3, VIA8233
10: 9 XT-PIC acpi
11: 100000 XT-PIC ehci_hcd:usb4
12: 86427 XT-PIC i8042
14: 10409 XT-PIC ide0
15: 19973 XT-PIC ide1
NMI: 0
LOC: 0
ERR: 0
MIS: 0
any ideas?
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: 2.6.14-rc2-ge484585e: kexec into same kernel: irq 11 nobody cared; but ehci_hcd should
2005-09-24 11:56 2.6.14-rc2-ge484585e: kexec into same kernel: irq 11 nobody cared; but ehci_hcd should thomas.mey3r
@ 2005-09-24 12:30 ` Denis Vlasenko
2005-09-24 14:12 ` Aw: " thomas.mey3r
0 siblings, 1 reply; 5+ messages in thread
From: Denis Vlasenko @ 2005-09-24 12:30 UTC (permalink / raw)
To: thomas.mey3r; +Cc: linux-kernel
On Saturday 24 September 2005 14:56, thomas.mey3r@arcor.de wrote:
> Hi.
>
> I played a bit with the new kexec function:
>
> when i kexec into the same kernel i get this error message:
>
> [17179593.108000] ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 11
> [17179593.108000] PCI: setting IRQ 11 as level-triggered
> [17179593.108000] ACPI: PCI Interrupt 0000:00:10.3[D] -> Link [LNKD] -> GSI 11 (level, low) -> IRQ 11
> [17179593.108000] ehci_hcd 0000:00:10.3: EHCI Host Controller
> [17179593.124000] ehci_hcd 0000:00:10.3: new USB bus registered, assigned bus number 4
> [17179593.936000] irq 11: nobody cared (try booting with the "irqpoll" option)
> [17179593.936000] [<c0103f9e>] dump_stack+0x1e/0x20
> [17179593.936000] [<c013dc6b>] __report_bad_irq+0x2b/0x90
> [17179593.936000] [<c013dd90>] note_interrupt+0x90/0xf0
> [17179593.936000] [<c013d69a>] __do_IRQ+0xca/0xe0
> [17179593.936000] [<c010530c>] do_IRQ+0x1c/0x30
> [17179593.936000] [<c0103b26>] common_interrupt+0x1a/0x20
> [17179593.936000] [<c0120ffa>] do_softirq+0x2a/0x30
> [17179593.936000] [<c01210a5>] irq_exit+0x35/0x40
> [17179593.936000] [<c0105311>] do_IRQ+0x21/0x30
> [17179593.936000] [<c0103b26>] common_interrupt+0x1a/0x20
> [17179593.936000] [<c013d931>] setup_irq+0xb1/0x110
> [17179593.936000] [<c013dae6>] request_irq+0x86/0xb0
> [17179593.936000] [<ec99c344>] usb_add_hcd+0x234/0x3a0 [usbcore]
> [17179593.936000] [<ec9a3a59>] usb_hcd_pci_probe+0x269/0x390 [usbcore]
> [17179593.936000] [<c01da239>] pci_call_probe+0x19/0x20
> [17179593.936000] [<c01da297>] __pci_device_probe+0x57/0x70
> [17179593.936000] [<c01da2df>] pci_device_probe+0x2f/0x60
> [17179593.936000] [<c021fa49>] driver_probe_device+0x39/0xc0
> [17179593.936000] [<c021fbaf>] __driver_attach+0x4f/0x60
> [17179593.936000] [<c021ef84>] bus_for_each_dev+0x54/0x80
> [17179593.936000] [<c021fbe8>] driver_attach+0x28/0x30
> [17179593.936000] [<c021f49d>] bus_add_driver+0x7d/0xe0
> [17179593.936000] [<c0220098>] driver_register+0x78/0x80
> [17179593.936000] [<c01da5d0>] pci_register_driver+0xb0/0xd0
> [17179593.936000] [<eca3d020>] init+0x20/0x26 [ehci_hcd]
> [17179593.936000] [<c0137e24>] sys_init_module+0x144/0x1c0
> [17179593.936000] [<c01030ff>] sysenter_past_esp+0x54/0x75
> [17179593.936000] handlers:
> [17179593.936000] [<ec99bf20>] (usb_hcd_irq+0x0/0x70 [usbcore])
> [17179593.936000] Disabling IRQ #11
> [17179593.972000] ehci_hcd 0000:00:10.3: irq 11, io mem 0xd0004800
> [17179593.972000] ehci_hcd 0000:00:10.3: USB 2.0 initialized, EHCI 1.00, driver 10 Dec 2004
> [17179593.976000] hub 4-0:1.0: USB hub found
> [17179593.976000] hub 4-0:1.0: 6 ports detected
>
> CPU0
> 0: 245067 XT-PIC timer
> 1: 2877 XT-PIC i8042
> 2: 0 XT-PIC cascade
> 4: 37766 XT-PIC uhci_hcd:usb1, eth0, via@pci:0000:01:00.0
> 5: 296 XT-PIC yenta, ohci1394, uhci_hcd:usb2
> 7: 2 XT-PIC parport0
> 8: 2 XT-PIC rtc
> 9: 51497 XT-PIC uhci_hcd:usb3, VIA8233
> 10: 9 XT-PIC acpi
> 11: 100000 XT-PIC ehci_hcd:usb4
> 12: 86427 XT-PIC i8042
> 14: 10409 XT-PIC ide0
> 15: 19973 XT-PIC ide1
> NMI: 0
> LOC: 0
> ERR: 0
> MIS: 0
>
> any ideas?
I suspect that interrupt happens before intr mast is written
ot corresponding register.
Add two printks, one before this writel:
printk("setting ehci->regs->intr_enable to %x\n", INTR_MASK);
writel (INTR_MASK, &ehci->regs->intr_enable); /* Turn On Interrupts */
and one here:
status &= INTR_MASK;
if (!status) { /* irq sharing? */
static int ratelimit = 20;
if(ratelimit) ratelimit--, printk("ehci_irq: IRQ_NONE\n");
spin_unlock(&ehci->lock);
return IRQ_NONE;
}
and see whether first printk happens before second.
--
vda
^ permalink raw reply [flat|nested] 5+ messages in thread* Aw: Re: 2.6.14-rc2-ge484585e: kexec into same kernel: irq 11 nobody cared; but ehci_hcd should
2005-09-24 12:30 ` Denis Vlasenko
@ 2005-09-24 14:12 ` thomas.mey3r
2005-09-24 15:07 ` Denis Vlasenko
0 siblings, 1 reply; 5+ messages in thread
From: thomas.mey3r @ 2005-09-24 14:12 UTC (permalink / raw)
To: vda; +Cc: linux-kernel
Correct.
The interrupt happens before the interrupt is enabled by the ehci driver. the question is why is the interrupt already enabled? or: who forgot to disable the interrupt?
See:
[17179591.828000] ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 11
[17179591.828000] PCI: setting IRQ 11 as level-triggered
[17179591.828000] ACPI: PCI Interrupt 0000:00:10.3[D] -> Link [LNKD] -> GSI 11 (level, low) -> IRQ 11
[17179591.828000] ehci_hcd 0000:00:10.3: EHCI Host Controller
[17179591.840000] ehci_hcd 0000:00:10.3: new USB bus registered, assigned bus number 4
[17179592.648000] irq 11: nobody cared (try booting with the "irqpoll" option)
[17179592.648000] [<c0103f9e>] dump_stack+0x1e/0x20
[17179592.648000] [<c013dc9b>] __report_bad_irq+0x2b/0x90
[17179592.648000] [<c013ddc0>] note_interrupt+0x90/0xf0
[17179592.648000] [<c013d6ca>] __do_IRQ+0xca/0xe0
[17179592.648000] [<c010530c>] do_IRQ+0x1c/0x30
[17179592.648000] [<c0103b26>] common_interrupt+0x1a/0x20
[17179592.648000] [<c0120ffa>] do_softirq+0x2a/0x30
[17179592.648000] [<c01210a5>] irq_exit+0x35/0x40
[17179592.648000] [<c0105311>] do_IRQ+0x21/0x30
[17179592.648000] [<c0103b26>] common_interrupt+0x1a/0x20
[17179592.648000] [<c013d961>] setup_irq+0xb1/0x110
[17179592.648000] [<c013db16>] request_irq+0x86/0xb0
[17179592.648000] [<ec99c344>] usb_add_hcd+0x234/0x3a0 [usbcore]
[17179592.648000] [<ec9a3a59>] usb_hcd_pci_probe+0x269/0x390 [usbcore]
[17179592.648000] [<c01da2c9>] pci_call_probe+0x19/0x20
[17179592.648000] [<c01da327>] __pci_device_probe+0x57/0x70
[17179592.648000] [<c01da36f>] pci_device_probe+0x2f/0x60
[17179592.648000] [<c021fad9>] driver_probe_device+0x39/0xc0
[17179592.648000] [<c021fc3f>] __driver_attach+0x4f/0x60
[17179592.648000] [<c021f014>] bus_for_each_dev+0x54/0x80
[17179592.648000] [<c021fc78>] driver_attach+0x28/0x30
[17179592.648000] [<c021f52d>] bus_add_driver+0x7d/0xe0
[17179592.648000] [<c0220128>] driver_register+0x78/0x80
[17179592.648000] [<c01da660>] pci_register_driver+0xb0/0xd0
[17179592.648000] [<eca3d020>] init+0x20/0x26 [ehci_hcd]
[17179592.648000] [<c0137e54>] sys_init_module+0x144/0x1c0
[17179592.648000] [<c01030ff>] sysenter_past_esp+0x54/0x75
[17179592.648000] handlers:
[17179592.648000] [<ec99bf20>] (usb_hcd_irq+0x0/0x70 [usbcore])
[17179592.648000] Disabling IRQ #11
[17179592.648000] ehci_hcd 0000:00:10.3: irq 11, io mem 0xd0004800
[17179592.648000] ehci_hcd 0000:00:10.3: USB 2.0 initialized, EHCI 1.00, driver 10 Dec 2004
[17179592.648000] setting ehci->regs->intr_enable to 37
[17179592.652000] hub 4-0:1.0: USB hub found
[17179592.652000] hub 4-0:1.0: 6 ports detected
----- Original Nachricht ----
Von: Denis Vlasenko <vda@ilport.com.ua>
An: thomas.mey3r@arcor.de
Datum: 24.09.2005 14:30
Betreff: Re: 2.6.14-rc2-ge484585e: kexec into same kernel: irq 11 nobody cared; but ehci_hcd should
> On Saturday 24 September 2005 14:56, thomas.mey3r@arcor.de wrote:
> > Hi.
> >
> > I played a bit with the new kexec function:
> >
> > when i kexec into the same kernel i get this error message:
> >
> > [17179593.108000] ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 11
> > [17179593.108000] PCI: setting IRQ 11 as level-triggered
> > [17179593.108000] ACPI: PCI Interrupt 0000:00:10.3[D] -> Link [LNKD] ->
> GSI 11 (level, low) -> IRQ 11
> > [17179593.108000] ehci_hcd 0000:00:10.3: EHCI Host Controller
> > [17179593.124000] ehci_hcd 0000:00:10.3: new USB bus registered, assigned
> bus number 4
> > [17179593.936000] irq 11: nobody cared (try booting with the "irqpoll"
> option)
> > [17179593.936000] [<c0103f9e>] dump_stack+0x1e/0x20
> > [17179593.936000] [<c013dc6b>] __report_bad_irq+0x2b/0x90
> > [17179593.936000] [<c013dd90>] note_interrupt+0x90/0xf0
> > [17179593.936000] [<c013d69a>] __do_IRQ+0xca/0xe0
> > [17179593.936000] [<c010530c>] do_IRQ+0x1c/0x30
> > [17179593.936000] [<c0103b26>] common_interrupt+0x1a/0x20
> > [17179593.936000] [<c0120ffa>] do_softirq+0x2a/0x30
> > [17179593.936000] [<c01210a5>] irq_exit+0x35/0x40
> > [17179593.936000] [<c0105311>] do_IRQ+0x21/0x30
> > [17179593.936000] [<c0103b26>] common_interrupt+0x1a/0x20
> > [17179593.936000] [<c013d931>] setup_irq+0xb1/0x110
> > [17179593.936000] [<c013dae6>] request_irq+0x86/0xb0
> > [17179593.936000] [<ec99c344>] usb_add_hcd+0x234/0x3a0 [usbcore]
> > [17179593.936000] [<ec9a3a59>] usb_hcd_pci_probe+0x269/0x390 [usbcore]
> > [17179593.936000] [<c01da239>] pci_call_probe+0x19/0x20
> > [17179593.936000] [<c01da297>] __pci_device_probe+0x57/0x70
> > [17179593.936000] [<c01da2df>] pci_device_probe+0x2f/0x60
> > [17179593.936000] [<c021fa49>] driver_probe_device+0x39/0xc0
> > [17179593.936000] [<c021fbaf>] __driver_attach+0x4f/0x60
> > [17179593.936000] [<c021ef84>] bus_for_each_dev+0x54/0x80
> > [17179593.936000] [<c021fbe8>] driver_attach+0x28/0x30
> > [17179593.936000] [<c021f49d>] bus_add_driver+0x7d/0xe0
> > [17179593.936000] [<c0220098>] driver_register+0x78/0x80
> > [17179593.936000] [<c01da5d0>] pci_register_driver+0xb0/0xd0
> > [17179593.936000] [<eca3d020>] init+0x20/0x26 [ehci_hcd]
> > [17179593.936000] [<c0137e24>] sys_init_module+0x144/0x1c0
> > [17179593.936000] [<c01030ff>] sysenter_past_esp+0x54/0x75
> > [17179593.936000] handlers:
> > [17179593.936000] [<ec99bf20>] (usb_hcd_irq+0x0/0x70 [usbcore])
> > [17179593.936000] Disabling IRQ #11
> > [17179593.972000] ehci_hcd 0000:00:10.3: irq 11, io mem 0xd0004800
> > [17179593.972000] ehci_hcd 0000:00:10.3: USB 2.0 initialized, EHCI 1.00,
> driver 10 Dec 2004
> > [17179593.976000] hub 4-0:1.0: USB hub found
> > [17179593.976000] hub 4-0:1.0: 6 ports detected
> >
> > CPU0
> > 0: 245067 XT-PIC timer
> > 1: 2877 XT-PIC i8042
> > 2: 0 XT-PIC cascade
> > 4: 37766 XT-PIC uhci_hcd:usb1, eth0,
> via@pci:0000:01:00.0
> > 5: 296 XT-PIC yenta, ohci1394, uhci_hcd:usb2
> > 7: 2 XT-PIC parport0
> > 8: 2 XT-PIC rtc
> > 9: 51497 XT-PIC uhci_hcd:usb3, VIA8233
> > 10: 9 XT-PIC acpi
> > 11: 100000 XT-PIC ehci_hcd:usb4
> > 12: 86427 XT-PIC i8042
> > 14: 10409 XT-PIC ide0
> > 15: 19973 XT-PIC ide1
> > NMI: 0
> > LOC: 0
> > ERR: 0
> > MIS: 0
> >
> > any ideas?
>
> I suspect that interrupt happens before intr mast is written
> ot corresponding register.
>
> Add two printks, one before this writel:
>
> printk("setting ehci->regs->intr_enable to %x\n", INTR_MASK);
> writel (INTR_MASK, &ehci->regs->intr_enable); /* Turn On Interrupts
> */
>
> and one here:
>
> status &= INTR_MASK;
> if (!status) { /* irq sharing? */
> static int ratelimit = 20;
> if(ratelimit) ratelimit--, printk("ehci_irq: IRQ_NONE\n");
> spin_unlock(&ehci->lock);
> return IRQ_NONE;
> }
>
> and see whether first printk happens before second.
> --
> vda
>
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: Aw: Re: 2.6.14-rc2-ge484585e: kexec into same kernel: irq 11 nobody cared; but ehci_hcd should
2005-09-24 14:12 ` Aw: " thomas.mey3r
@ 2005-09-24 15:07 ` Denis Vlasenko
0 siblings, 0 replies; 5+ messages in thread
From: Denis Vlasenko @ 2005-09-24 15:07 UTC (permalink / raw)
To: thomas.mey3r; +Cc: linux-kernel
On Saturday 24 September 2005 17:12, thomas.mey3r@arcor.de wrote:
> Correct.
> The interrupt happens before the interrupt is enabled by the ehci driver. the question is why is the interrupt already enabled? or: who forgot to disable the interrupt?
Correct question is "who forgot to set ehci->regs->intr_enable before request_irq'ing?"
IOW: writel (INTR_MASK, &ehci->regs->intr_enable); /* Turn On Interrupts */
needs to be moved so that it happens before request_irq.
--
vda
^ permalink raw reply [flat|nested] 5+ messages in thread
[parent not found: <20050924163149.4d68ad07.akpm@osdl.org>]
* Re: 2.6.14-rc2-ge484585e: kexec into same kernel: irq 11 nobody cared; but ehci_hcd should
[not found] <20050924163149.4d68ad07.akpm@osdl.org>
@ 2005-09-25 16:43 ` David Brownell
0 siblings, 0 replies; 5+ messages in thread
From: David Brownell @ 2005-09-25 16:43 UTC (permalink / raw)
To: thomas.mey3r, linux-kernel
> when i kexec into the same kernel i get this error message:
>
> [17179593.108000] ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 11
> [17179593.108000] PCI: setting IRQ 11 as level-triggered
> [17179593.108000] ACPI: PCI Interrupt 0000:00:10.3[D] -> Link [LNKD] -> GSI 11 (level, low) -> IRQ 11
> [17179593.108000] ehci_hcd 0000:00:10.3: EHCI Host Controller
> [17179593.124000] ehci_hcd 0000:00:10.3: new USB bus registered, assigned bus number 4
> [17179593.936000] irq 11: nobody cared (try booting with the "irqpoll" option)
> ...
>
> any ideas?
This patch (compile-tested only) ought to do it. Alternatively,
try the "usb-handoff" kernel parameter; it happens that will also
forcibly disable the IRQs.
(And notice how far that "usb-handoff" code has gotten out of sync
with the HCDs ... for EHCI the bug is that only that "pci quirks"
clone of the handoff code disables the IRQs, but for OHCI the bug
is the other way around: only the HCD disables them. Bleech.)
- Dave
This tweaks the EHCI reboot notifier to also halt the EHCI controller, and
makes that halt code force IRQs off. Both should always have been done.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
--- g26.orig/drivers/usb/host/ehci-hcd.c 2005-09-23 10:40:21.000000000 -0700
+++ g26/drivers/usb/host/ehci-hcd.c 2005-09-25 09:17:01.000000000 -0700
@@ -182,6 +182,9 @@
{
u32 temp = readl (&ehci->regs->status);
+ /* disable any irqs left enabled by previous code */
+ writel (0, &ehci->regs->intr_enable);
+
if ((temp & STS_HALT) != 0)
return 0;
@@ -297,12 +300,17 @@
spin_unlock_irqrestore (&ehci->lock, flags);
}
+/* Reboot notifiers kick in for silicon on any bus (not just pci, etc).
+ * This forcibly disables dma and IRQs, helping kexec and other cases
+ * where the next system software may expect clean state.
+ */
static int
ehci_reboot (struct notifier_block *self, unsigned long code, void *null)
{
struct ehci_hcd *ehci;
ehci = container_of (self, struct ehci_hcd, reboot_notifier);
+ (void) ehci_halt (ehci);
/* make BIOS/etc use companion controller during reboot */
writel (0, &ehci->regs->configured_flag);
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2005-09-25 16:43 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-09-24 11:56 2.6.14-rc2-ge484585e: kexec into same kernel: irq 11 nobody cared; but ehci_hcd should thomas.mey3r
2005-09-24 12:30 ` Denis Vlasenko
2005-09-24 14:12 ` Aw: " thomas.mey3r
2005-09-24 15:07 ` Denis Vlasenko
[not found] <20050924163149.4d68ad07.akpm@osdl.org>
2005-09-25 16:43 ` David Brownell
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.