Current-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Dom0 and puc(4)
> On Tue, Sep 14, 2010 at 01:26:09PM +0200, Christoph Egger wrote:
> >
> > Hi!
> >
> > I have this serial PCI card in a machine where I boot Dom0:
> >
> > puc0 at pci6 dev 0 function 0: Oxford Semiconductor OXmPCI952 UARTs
> (com, com)
> > com2 at puc0 port 0: interrupting at ioapic0 pin 17, event channel 10
> > com2: ns16550a, working fifo
> > com3 at puc0 port 1: interrupting at ioapic0 pin 17, event channel 10
> > com3: ns16550a, working fifo
> >
> >
> > And I get those kernel messages:
> >
> > com2: com_iflush timeout ff
> > com2: com_iflush timeout ff
> > com2: com_iflush timeout ff
> > com2: com_iflush timeout ff
> > com2: com_iflush timeout ff
> >
> >
> > evtchn_do_event: handler 0xffffffff801e957a didn't lower ipl 8 7
> > evtchn_do_event: handler 0xffffffff801e957a didn't lower ipl 8 7
> > evtchn_do_event: handler 0xffffffff801e957a didn't lower ipl 8 7
> > evtchn_do_event: handler 0xffffffff801e957a didn't lower ipl 8 7
> > evtchn_do_event: handler 0xffffffff801e957a didn't lower ipl 8 7
> > evtchn_do_event: handler 0xffffffff801e957a didn't lower ipl 8 7
> > evtchn_do_event: handler 0xffffffff801e957a didn't lower ipl 8 7
>
> Can you see what 0xffffffff801e957a points to in your kernel ?
Its's one of the interrupt handlers in the
ci->ci_isources[i]->ipl_handlers list.
It looks to me that the splx C implementation in evtchn_do_event()
does not correctly handle the case where more than one handlers
are in the list.
To reproduce this put a multi serial port pci card into your
machine and use it as a Xen serial console.
(pass com1=<speed>,8n1,<mmio base> console=com1 sync_console
to the xen kernel command line)
Christoph
Home |
Main Index |
Thread Index |
Old Index