WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-users

Re: [Xen-users] Accessing /dev/ttyI0 in guest domain not possible?

> Making some progress now. However, I still have some problems although it
> looks I can access the ISDN card so now and then.
>
> This is what I have done:
>
> title Xen 2.0 / XenLinux 2.6.11 rks
>    kernel /boot/xen.gz dom0_mem=64000 console=vga
> physdev_dom0_hide=(01:0d.0) module /boot/vmlinuz-2.6.11-rks-xen0
> root=/dev/hda3 ro console=tty0

Looks good.  Do you see the appropriate message from Xen at boot time, 
confirming that the card really is hidden?

> And in my guest OS I put the line: pci = ['01,0e,0'] so I will have access
> to my ISDN PCI card. Asterisk is not complaining anymore, but no calls are
>  ISDN calls are "seen" by my gues OS.
>
> Using lspvc -v I found out that the ISDN card did not got an IRQ, so I
> inserted the card in another PCI-slot and rebooted the system. Now I get
> the message that shows me an IRQ has been found:

This is strange, it should just work.  I guess your machine is probably 
sharing IRQs but that should work with Xen too.
> The only thing that worries me is the line "HiSax: Total 0 card defined".
>
> lspci -v looks ok now:
> 0000:01:0d.0 Network controller: AVM Audiovisuelles MKTG & Computer System
> GmbH A1 ISDN [Fritz] (rev 02)
>         Subsystem: AVM Audiovisuelles MKTG & Computer System GmbH
> FRITZ!Card ISDN Controller
>         Flags: medium devsel, IRQ 21
>         Memory at febfff60 (32-bit, non-prefetchable) [size=32]
>         I/O ports at 7860 [size=32]

Looks sane.  Can you confirm that the card doesn't appear in dom0?  Try lspci 
(and inspect the boot output).  We don't want the domains to fight.

> But again, no calls are recognized.

Can you try doing an outgoing call (e.g. fax someone) and see if that works?

> I have the feeling that this is an IRQ problem. I restarted the system
> several times and I got it working once....
>
> Does xen do anything special with interrupts I should be aware of?

I guess it could be an IRQ problem.  We've not seen this behaviour before 
(that I know of) but I guess it could have been tickled by some quirk of your 
machine setup.

Cheers,
Mark

>
> Thanks,
> Rene
>
> >> Now I started up my xenU domain which does not show anything about found
> >> ISDN cards, but I am not worried as I don't see any message about
> >> network
> >> cards either which work perfectly.
> >
> > The default configuration uses a virtual network card - network traffic
> > gets
> > sent via dom0, which owns the *real* network card.
> >
> >> But when starting my Asterisk server in the xenU domain I get some
> >> errors:
> >> Jul  3 18:10:36 ERROR[865]: Unable to register channel '/dev/ttyI0'
> >> Jul  3 18:10:36 WARNING[865]: chan_modem.so: load_module failed,
> >> returning
> >> -1 Jul  3 18:10:36 WARNING[865]: Loading module chan_modem.so failed!
> >>
> >> So it looks that an unpriviliged domain cannot access my ISDN card?
> >
> > The XenU kernel won't support any real hardware devices, only Xen's
> > virtual
> > devices.
> >
> >> Digging further, I decided to boot a xen0 domain as guest instead of
> >> xenU.
> >> Now my ISDN card is recognized although not installed(?)
> >>
> >> HiSax: AVM PCI driver Rev. 1.29.2.4
> >> FritzPCI: No PCI card found
> >> HiSax: Card AVM Fritz PnP/PCI not installed !
> >>
> >> Asterisk doesn't complain anymore although I am not sure if it works...
> >>
> >> Does anyone know why xenU is not allowed to access my ISDN /dev/ttyI0?
> >
> > You need to give the domain direct access to the ISDN card.  This is
> > important
> > because only one domain can own a PCI card at once.  Multiple drivers
> > fighting over a PCI card will end in tears...
> >
> > You need to hide the PCI device from dom0 so that it doesn't try to drive
> > it:
> > add "physdev_dom0_hide=(xx.yy.z)" to Xen's commandline, substituting the
> > config address of your card (you can find this in the output of "lspci").
> >
> > When you boot, check "xm dmesg" for an explicit line from Xen saying that
> > it's
> > hiding the PCI device.  If there isn't one then something's wrong -
> > you'll have to debug this first.
> >
> > Once hiding the device works, you need to give the domain access to it.
> > You
> > need to add this to the config file - the syntax for this is (I think)
> > described in the user manual.
> >
> > Once you've done those things, boot the xen0 kernel in the domain and it
> > should work.  Let us know if you get stuck.
> >
> > Cheers,
> > Mark
> >
> > _______________________________________________
> > Xen-users mailing list
> > Xen-users@xxxxxxxxxxxxxxxxxxx
> > http://lists.xensource.com/xen-users

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users