Am 10.01.2016 um 16:11 schrieb Marek Marczykowski-Górecki:
> On Sun, Jan 10, 2016 at 03:18:25PM +0100, Achim Patzner wrote:
> > We've got a test system running r3.1 plus all updates where one of the
> > users wanted to connect his wireless Logitech K400 (keyboard with
> > built-in touch pad) and MX Master mouse which are aired with the same
> > universal receiver. While all other devices are working on their own,
> > bringing up two mice and one keyboard at the same time seems to be a
> > problem. Two of the devices are working (usually the mice, but this is
> > not deterministic), the third gets lost on the way.
>
> I assume you're using USB VM, right?
Yes.
> Currently by default only mouse input proxy is enabled, for the keyboard
> one it is set to "deny" in /etc/qubes-rpc/policy/qubes.InputKeyboard.
I enabled it before trying... I would have been wondering about
Jan 07 11:38:47 sys-usb systemd-udevd[5554]: RUN '/bin/systemctl
--no-block start qubes-input-sender-keyboard@%k.service'
/usr/lib/udev/rules.d/90-qubes-input-proxy.rules:4
and the fact that the keyboard is working sometimes. But we can't figure
out under which conditions.
I tried it and it worked form me... Well. 50 kB won't kill anyone. I hope.
> But it can be also something else: if logitech receiver expose
> only one HID device, with all the functions (keyboard, mouse), you'll
> need separate proxy service to handle all of them in single proxy
> connection (it is possible to attach only one proxy connection to a
> device).
Take a look at the insertion log; something else is going on. I asked
the user in question who had this set-up conected to a r3.0 machine
without sys-usb and it was doing its job.
> I don't think it is the case, since I see "bNumInterfaces 3" in
> lsusb output (but not actual interface descriptors, so not sure).
Any place to look for to get more interesting/precise information
(sorry, I've spent the last 20+ years as far away from Linux as I could)?
> Anyway, to do that, take a look at input-proxy documentation, or simply
> existing proxy services and create new one, with different service name
> (like qubes.InputKeyboardMouse) and configure it to run
> "input-proxy-receiver --mouse --keyboard" at dom0 side. You'll also need
> to disarm existing services to not conflict, but you can simply disable
> them in qubes-rpc policy.
I'll try that after you've taken a look at the udevd log; I'm a bit
unhappy about the /dev/input/event* that have been created but don't
have the slightest idea if the thing is broken or if some of the
Qubes-related scripts are causing a problem.
This
an 07 11:38:47 sys-usb systemd-udevd[5554]: starting '/bin/systemctl
--no-block start qubes-input-...@event4.service'
Jan 07 11:38:47 sys-usb systemd-udevd[5554]: Process '/bin/systemctl
--no-block start qubes-input-...@event3.service' succeeded.
Jan 07 11:38:47 sys-usb systemd-udevd[5554]: starting '/bin/systemctl
--no-block start qubes-input-s...@event3.service'
Jan 07 11:38:47 sys-usb systemd-udevd[5554]: Process '/bin/systemctl
--no-block start qubes-input-...@event4.service' succeeded.
Jan 07 11:38:47 sys-usb systemd-udevd[5554]: starting '/bin/systemctl
--no-block start qubes-input-s...@event4.service'
Jan 07 11:38:47 sys-usb systemd-udevd[5554]: Process '/bin/systemctl
--no-block start qubes-input-s...@event3.service' succeeded.
is definitely looking messy. Like in "my parents told me I could be
everything so I am".
> Also one important warning: "ask" in qrexec policy works only after user
> login. So if you depend on such USB keyboard to enter login password,
> you unfortunately need to set it to "allow", with all its consequences.
We found out the hard way 8-). Right now I'm looking for an affordable
small desktop system that has as many independent and accessible USBs as
possible...
Achim