Open netvm terminal (menu->Applications->ServiceVM: netvm->netvm: Terminal)
and check the following things:
1. Does 'lspci' list your network adapter?
2. Do you have interface detected (does 'ifconfig -a' contains en* device)?
3. Does kernel messages ('dmesg') contains some errors regarding network
device initialization?
4. Check if linux-firmware package is installed (rpm -q linux-firmware).
You can download the package using other computer/system, then transfer it
with USB stick. URL to the package:
[user@netvm ~]$ yumdownloader --urls linux-firmware
(...)
http://mirror.karneval.cz/pub/linux/fedora/linux/updates/20/x86_64/linux-firmware-20140605-38.gita4f3bc03.fc20.noarch.rpm
on 9-9-2014 20:04 Marek Marczykowski-Górecki wrote:
Just to be sure - now your netvm have linux-firmware package (that installed in the template), right?
Yep!
One another idea - check dom0 dmesg for messages from pciback driver (some errors about config space access?).
Here is what it says regarding pciback: [ 35.375830] pciback 0000:04:00.0: Driver tried to write to a read-only configuration space field at offset 0x52, size 2. This may be harmless, but if you have problems with your device: 1) see permissive attribute in sysfs 2) report problems to the xen-devel mailing list along with details of your device obtained from lspci. ... [44.081163] pciback 0000:04:00.0: enabling device (0000 -> 0002) Best regards and thanks so far! Jos
You can modify Xen config by copying autogenerated one
(/var/lib/qubes/servicevms/netvm/netvm.conf) and starting the netvm with
qvm-start --custom-config=/path/to/modified/config.
Alternatively, you can enable permissive mode directly in sysfs:
echo BDF-OF-THE-DEVICE > /sys/bus/pci/drivers/pciback/permissive
Yes, you need to copy netvm.conf (the original netvm.conf is overwritten at
each VM startup), then restart netvm using above command (yes, add "netvm" at
the end).
Swich to root with "sudo -s", then enter the command.
Uhm... replace BDF-OF-THE-DEVICE with actuall BDF (for example 0000:00:19.0).
Better to add new ExecStartPre (with above command). But note that this file
will be overwritten during system update. To prevent this, you can create
simple new service. Create /etc/systemd/system/qubes-pre-netvm.service with:
-----
[Unit]
Description=Netvm fixup
Before=qubes-netvm.service
[Service]
ExecStart=/bin/sh -c 'echo 0000:04:00.0 > /sys/bus/pci/drivers/pciback/permissive'
Type=oneshot
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
-----
Then enable it with "systemctl enable qubes-pre-netvm.service".
AGREED, but noone ever thinks about that, because the system is designed for end-users, not coders, and yet they don't make allowances for the end-users that aren't coders.
I was told that the solution was here, all I see is a bunch of stuff that doesn't make sense to me. and I'm a programmer.