# [solved] qemu kvm not supporting usb redirection anymore

## Elleni

After having migrated my harddisks to new hardware, I only can start virtual machines from virtmanager, when I remove usb redirectors. virtual manager states a not supported configuration and that usb redirection is not supported  with this version of qemu. Where can that come from ? 

As new hardware has usb 3 ports, I changed kernel to xHCI. I tried recompiling kernel with all of them enabled, xhci, ohci, uhci and ehci without success

The old hardware was an old core2 duo box. New hardware is an asus mainboard. 

lspci | grep --color -i usb

```

01:00.0 USB controller: Advanced Micro Devices, Inc. [AMD] Device 43bb (rev 02)

08:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Device 145c
```

emerge --info                            

```
Portage 2.3.13 (python 3.5.4-final-0, default/linux/amd64/17.0/desktop/plasma, gcc-6.4.0, glibc-2.25-r9, 4.14.8-gentoo-r1 x86_64)

=================================================================

System uname: Linux-4.14.8-gentoo-r1-x86_64-AMD_Ryzen_5_1600_Six-Core_Processor-with-gentoo-2.4.1

KiB Swap:    9767516 total,   9767516 free

Timestamp of repository gentoo: Mon, 25 Dec 2017 00:00:01 +0000

Head commit of repository gentoo: 44d72fe2005c1dd48af8d44b12b8cf609db5468a

sh bash 4.3_p48-r1

ld GNU ld (Gentoo 2.29.1 p3) 2.29.1

app-shells/bash:          4.3_p48-r1::gentoo

dev-lang/perl:            5.24.3::gentoo

dev-lang/python:          2.7.14-r1::gentoo, 3.5.4-r1::gentoo

dev-util/cmake:           3.8.2::gentoo

dev-util/pkgconfig:       0.29.2::gentoo

sys-apps/baselayout:      2.4.1-r2::gentoo

sys-apps/openrc:          0.34.11::gentoo

sys-apps/sandbox:         2.10-r4::gentoo

sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo

sys-devel/automake:       1.11.6-r2::gentoo, 1.12.6-r1::gentoo, 1.15.1-r1::gentoo

sys-devel/binutils:       2.29.1-r1::gentoo

sys-devel/gcc:            6.4.0::gentoo

sys-devel/gcc-config:     1.8-r1::gentoo

sys-devel/libtool:        2.4.6-r3::gentoo

sys-devel/make:           4.2.1::gentoo

sys-kernel/linux-headers: 4.4::gentoo (virtual/os-headers)

sys-libs/glibc:           2.25-r9::gentoo

Repositories:                                                                                                                                       

                                                                                                                                                    

gentoo                                                                                                                                              

    location: /usr/portage                                                                                                                          

    sync-type: rsync                                                                                                                                

    sync-uri: rsync://rsync.gentoo.org/gentoo-portage                                                                                               

    priority: -1000                                                                                                                                 

    sync-rsync-extra-opts:                                                                                                                          

seden

    location: /var/lib/layman/seden

    masters: gentoo

    priority: 50

test

    location: /usr/local/portage

    masters: gentoo

    priority: 100

ACCEPT_KEYWORDS="amd64"

ACCEPT_LICENSE="* -@EULA"

CBUILD="x86_64-pc-linux-gnu"

CFLAGS="-O2 -march=znver1"

CHOST="x86_64-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt"

CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo"

CXXFLAGS="-O2 -march=znver1"

DISTDIR="/usr/portage/distfiles"

FCFLAGS="-O2 -pipe"

FEATURES="assume-digests binpkg-logs buildpkg candy config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync multilib-strict news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"

FFLAGS="-O2 -pipe"

GENTOO_MIRRORS="http://distfiles.gentoo.org"

LANG="de_CH.UTF-8"

LC_ALL="de_CH.UTF-8"

LDFLAGS="-Wl,-O1 -Wl,--as-needed"

MAKEOPTS="-j13"

PKGDIR="/usr/portage/packages"

PORTAGE_CONFIGROOT="/"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"

PORTAGE_TMPDIR="/tmp"

USE="X a52 aac acl acpi activities aes alsa amd64 avx avx2 berkdb bluetooth branding bzip2 cairo cdda cdr cli consolekit cracklib crypt cups cxx d3d9 dbus declarative dri dri3 dts dvd dvdr emboss encode exif fam ffmpeg firefox flac fma3 fortran frei0r gdbm gif glamor gnutls gpm gtk iconv icu ipv6 jpeg kde kipi kwallet lcms ldap libnotify llvm lm_sensors mad mmx mmxext mng modules mp3 mp4 mpeg mtp multilib ncurses nls nptl ocr ogg openal opencl opengl openmax openmp osmesa pam pango pclmul pcre pdf pdfpopcnt phonon plasma png policykit ppds pulseaudio qml qt3support qt5 readline realtime s3tc scanner sdl seccomp semantic-desktop session spell spice sse sse2 sse3 sse4_1 sse4_2 sse4a ssh ssl ssse3 staging startup-notification svg tcpd theora tiff truetype udev udisks unicode upower usb uxa vaapi vdpau vhost-net vorbis vpx webrtc-aec widgets wxwidgets x264 xattr xcb xcomposite xinerama xml xv xvid zlib" ABI_X86="64 32" ALSA_CARDS="hda-intel" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext smp sse sse2 sse3 sse4_1 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev" KERNEL="linux" L10N="de el en fr it tr" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="de de_DE el en fr fr_FR it tr" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-0" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_5" PYTHON_TARGETS="python2_7 python3_5" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby22" SANE_BACKENDS="pixma" USERLAND="GNU" VIDEO_CARDS="amdgpu radeonsi radeon virgl" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"

Unset:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
```

```
traceback (most recent call last):

  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 89, in cb_wrapper

    callback(asyncjob, *args, **kwargs)

  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 125, in tmpcb

    callback(*args, **kwargs)

  File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 82, in newfn

    ret = fn(self, *args, **kwargs)

  File "/usr/share/virt-manager/virtManager/domain.py", line 1505, in startup

    self._backend.create()

  File "/usr/lib64/python2.7/site-packages/libvirt.py", line 1069, in create

    if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self)
```

----------

## Elleni

I solved this by myself. After profile switch and having built emerge -e world, I thought, it was about time to review my /etc/package.* files, and clean them up. In fact, I realized, that every package in package.accept_keywords became obsolete by now. I then deleted all stuff in package.use and trying to emerge world, I saw which useflags were needed. It is there, that I became aware that the usbredir useflag on app-emulation/qemu was not set. Strange thing is, that I am quite sure, that I have never removed this useflag manually. 

Well long story short. Re-emerged qemu with usbredir did the trick  :Smile: 

----------

