From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:57306) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZyNaV-00049D-OO for qemu-devel@nongnu.org; Mon, 16 Nov 2015 12:29:08 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZyNaQ-0001VV-P2 for qemu-devel@nongnu.org; Mon, 16 Nov 2015 12:29:07 -0500 Received: from mail-wm0-x229.google.com ([2a00:1450:400c:c09::229]:36029) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZyNaQ-0001VR-JF for qemu-devel@nongnu.org; Mon, 16 Nov 2015 12:29:02 -0500 Received: by wmww144 with SMTP id w144so120294421wmw.1 for ; Mon, 16 Nov 2015 09:29:02 -0800 (PST) Message-ID: <564A1250.3080908@gmail.com> Date: Mon, 16 Nov 2015 18:28:48 +0100 From: Jiri 'Ghormoon' Novak MIME-Version: 1.0 References: <5647937B.40901@gmail.com> <1447690852.11547.66.camel@redhat.com> <564A071D.2000804@gmail.com> <564A08DC.8050109@gmail.com> <1447694178.11547.84.camel@redhat.com> In-Reply-To: <1447694178.11547.84.camel@redhat.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] virtio-input questions List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gerd Hoffmann Cc: "alex.williamson" , "qemu-devel@nongnu.org" Hi, Gerd Hoffmann wrote: > Hi, > >>> Seems I'll try to start from the curses.c then, if that's better way >>> (my knowledge of qemu codebase is zero and I'm not a good developer >>> either, but I may try in my free time since I need this and I'd like > I wouldn't bother with curses. Better grab input events directly at the > source, like virtio-input-host does. Check out > hw/input/virtio-input-host.c, or https://www.kraxel.org/cgit/input/ > (probably gives a better idea how to interpret the linux input layer > events). > > Also note that hw/input/virtio-input-hid.c has a qcode -> linux mapping > table, which should be usable to generate a reverse mapping. You'll > need that to feed linux keyboard events into the qemu input code. Maybe I've formulated it bit wrong, the part I should be taking from curses was mainly about how to feed it to qemu input. I'll have to look into that a more in detail, I don't understand it much yet :) >>> to see it upstream - there are more people trying vga passthrough who >>> possibly need this :)) At least keyboard, mouse is nice to have, but >>> that can be done with the virtio-input, it's not crucial eg. during >>> installation where you may not have those drivers. > If virtio-input works for the mouse it should work equally well for > keyboard. Guest drivers are upstream in kernel 4.1 & newer. Fedora 22 > should work once you've updated the kernel (shipped with kernel 4.0.x, > now at 4.2.x). With the just released Fedora 23 virtio-input should > even work on the install media (didn't test that yet though ...). Well, but eg. for Debian, stable doesn't have the drivers yet. You need a backport kernel :) Or even worse - Windows guest which won't take it at all yet. Or maybe others. if you're booting something in the guest with vga and keyboard passthrough, there's still big chance you won't have the keyboard working. so that's the reason to use qemu input. And for the windows - that's a quite common reason for vga passthrough - you have disposable gaming VM (running on LUKS+ZFS drive and it doesn't complain :P) >>> I was just wondering if you don't have a bunch of testing VMs that >>> you've already used for this to quickly rule out one side (host or >>> guest). > I'm using standard fedora install, without any special tweaks (other > than a self-compiled kernel in the early days, but even that isn't > needed any more). > cheers, > Gerd > >