Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 7 Jun 2017 19:32:52 -0400
From:      Anthony Jenkins <Scoobi_doo@yahoo.com>
To:        =?UTF-8?Q?Jan_Kokem=c3=bcller?= <jan.kokemueller@gmail.com>, Vladimir Kondratyev <vladimir@kondratyev.su>
Cc:        current@freebsd.org, freebsd-mobile@freebsd.org
Subject:   Re: CFT: EVDEV support in psm(4) driver
Message-ID:  <420c37d0-79bf-ac53-58aa-dcf1b99bd5c7@yahoo.com>
In-Reply-To: <5446ec03-c501-a369-01fc-e58a7d8712d9@gmail.com>
References:  <5fa9225de944d6cdac0b7e5749b452a9@kondratyev.su> <5446ec03-c501-a369-01fc-e58a7d8712d9@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.
--------------CB2650C7656876520F46E561
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 8bit

I'm seeing flakiness in X11 (KDE) with evdev enabled - a couple keys are
reporting multiple (wrong) events and some aren't emitting any events
(or they are, but they're NoSymbol):

 - Down arrow: emits KeyPress for keycode 116 (Super_R), KeyRelease for
keycode 116, KeyRelease for keycode 104 (Down)
 - Left arrow: emits KeyPress for keycode 113 (Alt_R), KeyPress for
keycode 100 (Left), KeyRelease for keycode 113, KeyRelease for keycode 100
 - Volume up: emits KeyPress 123 (NoSymbol), KeyPress 176 (NoSymbol),
KeyRelease for same
 - Volume down: emits KeyPress 122 (NoSymbol), KeyPress 174 (NoSymbol),
KeyRelease for same
 - Volume mute toggle: emits KeyPress 121 (NoSymbol), KeyRelease 121
(NoSymbol), KeyRelease 140 (NoSymbol)
 - Keypad end: emits KeyPress 115 (Super_L), KeyPress 103 (End),
KeyRelease for same

I'll attach the output of 'evdev -event keyboard' for everything but the
Keypad end key which I recently found.

/usr/local/etc/X11/xorg.conf.d/evdev1.conf:

Section "InputDevice"
        Identifier "Keyboard0"
        Driver "evdev"
        Option "Device"   "/dev/input/event1"
EndSection


dmesg | grep kbd:

[ajenkins@ajenkins-hplaptop ~]$ dmesg | grep kbd
kbd: new array size 4
kbd1 at kbdmux0
atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
atkbd: the current kbd controller command byte 0067
atkbd: keyboard ID 0x41ab (2)
kbdc: RESET_KBD return code:00fa
kbdc: RESET_KBD status:00aa
kbd0 at atkbd0
kbd0: atkbd0, AT 101/102 (2), config:0x0, flags:0x1d0000
atkbd0: [GIANT-LOCKED]
random: harvesting attach, 8 bytes (4 bits) from atkbd0
random: harvesting attach, 8 bytes (4 bits) from atkbdc0
kbdc: TEST_AUX_PORT status:0000
kbdc: RESET_AUX return code:00fa
kbdc: RESET_AUX status:00aa
kbdc: RESET_AUX ID:0000
kbdc: RESET_AUX return code:00fa
kbdc: RESET_AUX status:00aa
kbdc: RESET_AUX ID:0000
psm0: <PS/2 Mouse> irq 12 on atkbdc0
atkbdc: atkbdc0 already exists; skipping it


/var/log/Xorg.0.log stuff:
[    24.763] (**) Option "config_info" "udev:/dev/input/event1"
[    24.763] (II) XINPUT: Adding extended input device "System keyboard
multiplexer" (type: KEYBOARD, id 7)
[    24.763] (**) Option "xkb_rules" "evdev"
[    24.839] (II) config/udev: Adding input device AT keyboard
(/dev/input/event2)
[    24.839] (**) AT keyboard: Applying InputClass "evdev keyboard catchall"
[    24.839] (II) Using input driver 'evdev' for 'AT keyboard'
[    24.839]    Option "_source" "server/udev"
[    24.839]    Option "name" "AT keyboard"
[    24.839]    Option "path" "/dev/input/event2"
[    24.839]    Option "device" "/dev/input/event2"
[    24.839]    Option "major" "0"
[    24.839]    Option "minor" "45"
[    24.839]    Option "driver" "evdev"
[    24.839]    Option "config_info" "udev:/dev/input/event2"
[    24.839] (**) AT keyboard: always reports core events
[    24.839] (**) evdev: AT keyboard: Device: "/dev/input/event2"
[    24.839] (--) evdev: AT keyboard: Vendor 0x1 Product 0x1
[    24.839] (--) evdev: AT keyboard: Found keys
[    24.839] (II) evdev: AT keyboard: Configuring as keyboard
[    24.839] (**) Option "config_info" "udev:/dev/input/event2"
[    24.840] (II) XINPUT: Adding extended input device "AT keyboard"
(type: KEYBOARD, id 8)
[    24.840] (**) Option "xkb_rules" "evdev"
[    24.840] (II) XKB: Reusing cached keymap
[    24.840] (II) config/udev: Adding input device Synaptics Touchpad
(/dev/input/event3)
[    24.841] (**) Synaptics Touchpad: Applying InputClass "evdev pointer
catchall"
[    24.841] (**) Synaptics Touchpad: Applying InputClass "evdev
touchpad catchall"
[    24.841] (**) Synaptics Touchpad: Applying InputClass "touchpad
catchall"
[    24.841] (**) Synaptics Touchpad: Applying InputClass "Default
clickpad buttons"
[    24.841] (II) LoadModule: "synaptics"
[    24.841] (II) Loading /usr/local/lib/xorg/modules/input/synaptics_drv.so
[    24.842] (II) Module synaptics: vendor="X.Org Foundation"
[    24.842]    compiled for 1.19.3, module version = 1.9.0
[    24.842]    Module class: X.Org XInput Driver
[    24.843]    ABI class: X.Org XInput driver, version 24.1
[    24.843] (II) Using input driver 'synaptics' for 'Synaptics Touchpad'
[    24.843]    Option "_source" "server/udev"
[    24.843]    Option "name" "Synaptics Touchpad"
[    24.843]    Option "path" "/dev/input/event3"
[    24.843]    Option "device" "/dev/input/event3"
[    24.843]    Option "major" "0"
[    24.843]    Option "minor" "50"
[    24.843]    Option "driver" "synaptics"


Not sure what else to add.  I have applied the patches from this email
thread.  Any ideas?

Thanks in advance,
Anthony Jenkins

On 04/17/17 06:59, Jan Kokemüller wrote:
> Hi Vladimir,
> this patch works great for me!
> I'm testing this with a semi-mt Synaptics touchpad and a TrackPoint of
> a Lenovo T420. I'm running 12-CURRENT (amd64) and Xorg 1.19.3 from
> Matthew's CFT with the libudev-devd backend. The Evdev devices are
> picked up correctly by libudev-devd and xf86-input-libinput (even the
> TrackPoint). I haven't tested this with xf86-input-synaptics (which is
> in maintenance mode) or xf86-input-evdev. I am not
> using xf86-input-mouse or xf86-input-keyboard.
>
> What works (everything):
>  - true smooth scrolling with Xinput2 (tested with GTK3 Firefox or
> gtk3-demo)
>  - TrackPoint scrolling holding the middle button
>  - both horizontal/vertical scrolling
>  - two finger scrolling powered by libinput (this semi-mt touchpad
> doesn't really support more gestures than this)
>
> The only thing that doesn't work out of the box is the mouse pointer
> on the VT console. It wouldn't be hard though to write a small tool
> that uses libinput to translate Evdev events into CONS_MOUSECTL ioctls
> needed for the VT pointer.
>
> Some comments:
>  - PS2_MOUSE_SYNAPTICS_PRODUCT should be 0x0007, not 0x0009
> (http://lxr.free-electrons.com/source/drivers/input/mouse/psmouse.h#L86)
>  - The TrackPoint should be added with product id 0x000A as on Linux
> and with the INPUT_PROP_POINTING_STICK Evdev property set
>  - I think it would be better if the same Evdev device names were
> exposed as on Linux (for example "SynPS/2 Synaptics TouchPad"). Many
> scripts using xinput to change device properties depend on the Linux
> device names.
>
> I've added a patch and comments to https://reviews.freebsd.org/D10265 .
>
> Even Linux 64-bit binaries work correctly with the created
> /dev/input/event* devices after applying those two patches here:
>  - https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=218625
>  - https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=218627
>
> This will be very useful for Linux games using joysticks, game
> controllers etc.

Hi Vladimir and Jan,

Thanks for the patches! I'm having some issues with 3 patches from this
thread:
 -
https://reviews.freebsd.org/file/data/pqjvpuhwfgsu5nnamibg/PHID-FILE-uuyjx66blb344hre3nc2/D10207.vson.id27478.whitespaceignore-most.diff
 - https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=218625
 - https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=218627

These may or may not have anything to do with the patches...

1. For some reason Xorg keyboard driver isn't getting some key events,
or had shuffled them.  When I first applied the patches, X thought my
<Down> arrow was <KP_Enter> and <KP_Enter> was something else.  At some
point that behavior changed and <Down> worked, but <KP_Divide> emits
<KP_Multiply> and <KP_Multiply> doesn't emit anything.  Rebooting didn't
change the new behavior, and I don't know what caused it to change. 
Switching to a console, I get the expected characters/actions when
pressing these keys.

2. My Synaptics clickpad (and the pointer in general) freeze for several
seconds, although it hasn't done it lately.  When a freeze occurs (in X
windows), other GUI processes don't seem to be affected.  If I have
another pointer device attached (e.g. USB mouse), it also doesn't move
the pointer during the freeze.

Here's my config:

--------------CB2650C7656876520F46E561
Content-Type: text/plain; charset=UTF-8;
 name="keyboard_issue.xev.txt"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
 filename="keyboard_issue.xev.txt"

IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMjIyMjIyBTVEFSVCB4
ZXYgLWV2ZW50IGtleWJvYXJkICMjIyMjIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMKCk91dGVyIHdpbmRvdyBpcyAweDU2MDAwMDEsIGlubmVyIHdpbmRvdyBp
cyAweDU2MDAwMDIKCktleW1hcE5vdGlmeSBldmVudCwgc2VyaWFsIDIxLCBzeW50aGV0aWMg
Tk8sIHdpbmRvdyAweDAsCiAgICBrZXlzOiAgNDI5NDk2NzIwNSAwICAgMCAgIDAgICAwICAg
MCAgIDAgICAwICAgMCAgIDAgICAwICAgMCAgIDAgICAwICAgMCAgIDAgICAKICAgICAgICAg
ICAwICAgMCAgIDAgICAwICAgMCAgIDAgICAwICAgMCAgIDAgICAwICAgMCAgIDAgICAwICAg
MCAgIDAgICAwICAgCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIyMjIyMgUFJF
U1MgVVAgQVJST1cgICMjIyMjIwojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKS2V5
UHJlc3MgZXZlbnQsIHNlcmlhbCAyNSwgc3ludGhldGljIE5PLCB3aW5kb3cgMHg1NjAwMDAx
LAogICAgcm9vdCAweDQ5OSwgc3VidyAweDAsIHRpbWUgMTA1MjE3OCwgKC0zNzEsNDY1KSwg
cm9vdDooNTI3LDQ4OCksCiAgICBzdGF0ZSAweDEwLCBrZXljb2RlIDExMSAoa2V5c3ltIDB4
ZmY2MSwgUHJpbnQpLCBzYW1lX3NjcmVlbiBZRVMsCiAgICBYTG9va3VwU3RyaW5nIGdpdmVz
IDAgYnl0ZXM6IAogICAgWG1iTG9va3VwU3RyaW5nIGdpdmVzIDAgYnl0ZXM6IAogICAgWEZp
bHRlckV2ZW50IHJldHVybnM6IEZhbHNlCgpLZXlQcmVzcyBldmVudCwgc2VyaWFsIDI1LCBz
eW50aGV0aWMgTk8sIHdpbmRvdyAweDU2MDAwMDEsCiAgICByb290IDB4NDk5LCBzdWJ3IDB4
MCwgdGltZSAxMDUyMTc5LCAoLTM3MSw0NjUpLCByb290Oig1MjcsNDg4KSwKICAgIHN0YXRl
IDB4MTAsIGtleWNvZGUgOTggKGtleXN5bSAweGZmNTIsIFVwKSwgc2FtZV9zY3JlZW4gWUVT
LAogICAgWExvb2t1cFN0cmluZyBnaXZlcyAwIGJ5dGVzOiAKICAgIFhtYkxvb2t1cFN0cmlu
ZyBnaXZlcyAwIGJ5dGVzOiAKICAgIFhGaWx0ZXJFdmVudCByZXR1cm5zOiBGYWxzZQoKTWFw
cGluZ05vdGlmeSBldmVudCwgc2VyaWFsIDI4LCBzeW50aGV0aWMgTk8sIHdpbmRvdyAweDAs
CiAgICByZXF1ZXN0IE1hcHBpbmdLZXlib2FyZCwgZmlyc3Rfa2V5Y29kZSA4LCBjb3VudCAy
NDgKCktleVJlbGVhc2UgZXZlbnQsIHNlcmlhbCAyOCwgc3ludGhldGljIE5PLCB3aW5kb3cg
MHg1NjAwMDAxLAogICAgcm9vdCAweDQ5OSwgc3VidyAweDAsIHRpbWUgMTA1MjI5NCwgKC0z
NzEsNDY1KSwgcm9vdDooNTI3LDQ4OCksCiAgICBzdGF0ZSAweDEwLCBrZXljb2RlIDExMSAo
a2V5c3ltIDB4ZmY2MSwgUHJpbnQpLCBzYW1lX3NjcmVlbiBZRVMsCiAgICBYTG9va3VwU3Ry
aW5nIGdpdmVzIDAgYnl0ZXM6IAogICAgWEZpbHRlckV2ZW50IHJldHVybnM6IEZhbHNlCgpN
YXBwaW5nTm90aWZ5IGV2ZW50LCBzZXJpYWwgMjgsIHN5bnRoZXRpYyBOTywgd2luZG93IDB4
MCwKICAgIHJlcXVlc3QgTWFwcGluZ0tleWJvYXJkLCBmaXJzdF9rZXljb2RlIDgsIGNvdW50
IDI0OAoKS2V5UmVsZWFzZSBldmVudCwgc2VyaWFsIDI4LCBzeW50aGV0aWMgTk8sIHdpbmRv
dyAweDU2MDAwMDEsCiAgICByb290IDB4NDk5LCBzdWJ3IDB4MCwgdGltZSAxMDUyMjk0LCAo
LTM3MSw0NjUpLCByb290Oig1MjcsNDg4KSwKICAgIHN0YXRlIDB4MTAsIGtleWNvZGUgOTgg
KGtleXN5bSAweGZmNTIsIFVwKSwgc2FtZV9zY3JlZW4gWUVTLAogICAgWExvb2t1cFN0cmlu
ZyBnaXZlcyAwIGJ5dGVzOiAKICAgIFhGaWx0ZXJFdmVudCByZXR1cm5zOiBGYWxzZQoKIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyMjIyMjIFBSRVNTIFJJR0hUIEFSUk9X
ICAjIyMjIyMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCk1hcHBpbmdOb3Rp
ZnkgZXZlbnQsIHNlcmlhbCAzMCwgc3ludGhldGljIE5PLCB3aW5kb3cgMHgwLAogICAgcmVx
dWVzdCBNYXBwaW5nS2V5Ym9hcmQsIGZpcnN0X2tleWNvZGUgOCwgY291bnQgMjQ4CgpLZXlQ
cmVzcyBldmVudCwgc2VyaWFsIDMwLCBzeW50aGV0aWMgTk8sIHdpbmRvdyAweDU2MDAwMDEs
CiAgICByb290IDB4NDk5LCBzdWJ3IDB4MCwgdGltZSAxMDU5NDM5LCAoLTM3MSw0NjUpLCBy
b290Oig1MjcsNDg4KSwKICAgIHN0YXRlIDB4MTAsIGtleWNvZGUgMTE0IChrZXlzeW0gMHgw
LCBOb1N5bWJvbCksIHNhbWVfc2NyZWVuIFlFUywKICAgIFhMb29rdXBTdHJpbmcgZ2l2ZXMg
MCBieXRlczogCiAgICBYbWJMb29rdXBTdHJpbmcgZ2l2ZXMgMCBieXRlczogCiAgICBYRmls
dGVyRXZlbnQgcmV0dXJuczogRmFsc2UKCk1hcHBpbmdOb3RpZnkgZXZlbnQsIHNlcmlhbCAz
MCwgc3ludGhldGljIE5PLCB3aW5kb3cgMHgwLAogICAgcmVxdWVzdCBNYXBwaW5nS2V5Ym9h
cmQsIGZpcnN0X2tleWNvZGUgOCwgY291bnQgMjQ4CgpLZXlQcmVzcyBldmVudCwgc2VyaWFs
IDMwLCBzeW50aGV0aWMgTk8sIHdpbmRvdyAweDU2MDAwMDEsCiAgICByb290IDB4NDk5LCBz
dWJ3IDB4MCwgdGltZSAxMDU5NDM5LCAoLTM3MSw0NjUpLCByb290Oig1MjcsNDg4KSwKICAg
IHN0YXRlIDB4MTAsIGtleWNvZGUgMTAyIChrZXlzeW0gMHhmZjUzLCBSaWdodCksIHNhbWVf
c2NyZWVuIFlFUywKICAgIFhMb29rdXBTdHJpbmcgZ2l2ZXMgMCBieXRlczogCiAgICBYbWJM
b29rdXBTdHJpbmcgZ2l2ZXMgMCBieXRlczogCiAgICBYRmlsdGVyRXZlbnQgcmV0dXJuczog
RmFsc2UKCk1hcHBpbmdOb3RpZnkgZXZlbnQsIHNlcmlhbCAzMiwgc3ludGhldGljIE5PLCB3
aW5kb3cgMHgwLAogICAgcmVxdWVzdCBNYXBwaW5nS2V5Ym9hcmQsIGZpcnN0X2tleWNvZGUg
OCwgY291bnQgMjQ4CgpLZXlSZWxlYXNlIGV2ZW50LCBzZXJpYWwgMzIsIHN5bnRoZXRpYyBO
Tywgd2luZG93IDB4NTYwMDAwMSwKICAgIHJvb3QgMHg0OTksIHN1YncgMHgwLCB0aW1lIDEw
NTk1MzcsICgtMzcxLDQ2NSksIHJvb3Q6KDUyNyw0ODgpLAogICAgc3RhdGUgMHgxMCwga2V5
Y29kZSAxMTQgKGtleXN5bSAweDAsIE5vU3ltYm9sKSwgc2FtZV9zY3JlZW4gWUVTLAogICAg
WExvb2t1cFN0cmluZyBnaXZlcyAwIGJ5dGVzOiAKICAgIFhGaWx0ZXJFdmVudCByZXR1cm5z
OiBGYWxzZQoKTWFwcGluZ05vdGlmeSBldmVudCwgc2VyaWFsIDMyLCBzeW50aGV0aWMgTk8s
IHdpbmRvdyAweDAsCiAgICByZXF1ZXN0IE1hcHBpbmdLZXlib2FyZCwgZmlyc3Rfa2V5Y29k
ZSA4LCBjb3VudCAyNDgKCktleVJlbGVhc2UgZXZlbnQsIHNlcmlhbCAzMiwgc3ludGhldGlj
IE5PLCB3aW5kb3cgMHg1NjAwMDAxLAogICAgcm9vdCAweDQ5OSwgc3VidyAweDAsIHRpbWUg
MTA1OTUzNywgKC0zNzEsNDY1KSwgcm9vdDooNTI3LDQ4OCksCiAgICBzdGF0ZSAweDEwLCBr
ZXljb2RlIDEwMiAoa2V5c3ltIDB4ZmY1MywgUmlnaHQpLCBzYW1lX3NjcmVlbiBZRVMsCiAg
ICBYTG9va3VwU3RyaW5nIGdpdmVzIDAgYnl0ZXM6IAogICAgWEZpbHRlckV2ZW50IHJldHVy
bnM6IEZhbHNlCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMj
IyMjIyBQUkVTUyBET1dOIEFSUk9XIChCUk9LRU4pICAjIyMjIyMKIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKTWFwcGluZ05vdGlmeSBldmVudCwgc2VyaWFs
IDM0LCBzeW50aGV0aWMgTk8sIHdpbmRvdyAweDAsCiAgICByZXF1ZXN0IE1hcHBpbmdLZXli
b2FyZCwgZmlyc3Rfa2V5Y29kZSA4LCBjb3VudCAyNDgKCktleVByZXNzIGV2ZW50LCBzZXJp
YWwgMzQsIHN5bnRoZXRpYyBOTywgd2luZG93IDB4NTYwMDAwMSwKICAgIHJvb3QgMHg0OTks
IHN1YncgMHgwLCB0aW1lIDEwODIxNDYsICgtMzcxLDQ2NSksIHJvb3Q6KDUyNyw0ODgpLAog
ICAgc3RhdGUgMHgxMCwga2V5Y29kZSAxMTYgKGtleXN5bSAweGZmZWMsIFN1cGVyX1IpLCBz
YW1lX3NjcmVlbiBZRVMsCiAgICBYTG9va3VwU3RyaW5nIGdpdmVzIDAgYnl0ZXM6IAogICAg
WG1iTG9va3VwU3RyaW5nIGdpdmVzIDAgYnl0ZXM6IAogICAgWEZpbHRlckV2ZW50IHJldHVy
bnM6IEZhbHNlCgpNYXBwaW5nTm90aWZ5IGV2ZW50LCBzZXJpYWwgMzQsIHN5bnRoZXRpYyBO
Tywgd2luZG93IDB4MCwKICAgIHJlcXVlc3QgTWFwcGluZ0tleWJvYXJkLCBmaXJzdF9rZXlj
b2RlIDgsIGNvdW50IDI0OAoKS2V5bWFwTm90aWZ5IGV2ZW50LCBzZXJpYWwgMzYsIHN5bnRo
ZXRpYyBOTywgd2luZG93IDB4MCwKICAgIGtleXM6ICAxICAgMCAgIDAgICAwICAgMCAgIDAg
ICAwICAgMCAgIDAgICAwICAgMCAgIDAgICAwICAgMSAgIDE2ICAwICAgCiAgICAgICAgICAg
MCAgIDAgICAwICAgMCAgIDAgICAwICAgMCAgIDAgICAwICAgMCAgIDAgICAwICAgMCAgIDAg
ICAwICAgMCAgIAoKTWFwcGluZ05vdGlmeSBldmVudCwgc2VyaWFsIDM2LCBzeW50aGV0aWMg
Tk8sIHdpbmRvdyAweDAsCiAgICByZXF1ZXN0IE1hcHBpbmdLZXlib2FyZCwgZmlyc3Rfa2V5
Y29kZSA4LCBjb3VudCAyNDgKCktleVJlbGVhc2UgZXZlbnQsIHNlcmlhbCAzNiwgc3ludGhl
dGljIE5PLCB3aW5kb3cgMHg1NjAwMDAxLAogICAgcm9vdCAweDQ5OSwgc3VidyAweDAsIHRp
bWUgMTA4MjMwNCwgKC0zNzEsNDY1KSwgcm9vdDooNTI3LDQ4OCksCiAgICBzdGF0ZSAweDUw
LCBrZXljb2RlIDExNiAoa2V5c3ltIDB4ZmZlYywgU3VwZXJfUiksIHNhbWVfc2NyZWVuIFlF
UywKICAgIFhMb29rdXBTdHJpbmcgZ2l2ZXMgMCBieXRlczogCiAgICBYRmlsdGVyRXZlbnQg
cmV0dXJuczogRmFsc2UKCk1hcHBpbmdOb3RpZnkgZXZlbnQsIHNlcmlhbCAzNiwgc3ludGhl
dGljIE5PLCB3aW5kb3cgMHgwLAogICAgcmVxdWVzdCBNYXBwaW5nS2V5Ym9hcmQsIGZpcnN0
X2tleWNvZGUgOCwgY291bnQgMjQ4CgpLZXlSZWxlYXNlIGV2ZW50LCBzZXJpYWwgMzYsIHN5
bnRoZXRpYyBOTywgd2luZG93IDB4NTYwMDAwMSwKICAgIHJvb3QgMHg0OTksIHN1YncgMHgw
LCB0aW1lIDEwODIzMDQsICgtMzcxLDQ2NSksIHJvb3Q6KDUyNyw0ODgpLAogICAgc3RhdGUg
MHgxMCwga2V5Y29kZSAxMDQgKGtleXN5bSAweGZmNTQsIERvd24pLCBzYW1lX3NjcmVlbiBZ
RVMsCiAgICBYTG9va3VwU3RyaW5nIGdpdmVzIDAgYnl0ZXM6IAogICAgWEZpbHRlckV2ZW50
IHJldHVybnM6IEZhbHNlCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjCiMjIyMjIyBQUkVTUyBMRUZUIEFSUk9XIChCUk9LRU4pICAjIyMjIyMKIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKTWFwcGluZ05vdGlmeSBldmVudCwg
c2VyaWFsIDM4LCBzeW50aGV0aWMgTk8sIHdpbmRvdyAweDAsCiAgICByZXF1ZXN0IE1hcHBp
bmdLZXlib2FyZCwgZmlyc3Rfa2V5Y29kZSA4LCBjb3VudCAyNDgKCktleVByZXNzIGV2ZW50
LCBzZXJpYWwgMzgsIHN5bnRoZXRpYyBOTywgd2luZG93IDB4NTYwMDAwMSwKICAgIHJvb3Qg
MHg0OTksIHN1YncgMHgwLCB0aW1lIDEwODk2NzMsICgtMzcxLDQ2NSksIHJvb3Q6KDUyNyw0
ODgpLAogICAgc3RhdGUgMHgxMCwga2V5Y29kZSAxMTMgKGtleXN5bSAweGZmZWEsIEFsdF9S
KSwgc2FtZV9zY3JlZW4gWUVTLAogICAgWExvb2t1cFN0cmluZyBnaXZlcyAwIGJ5dGVzOiAK
ICAgIFhtYkxvb2t1cFN0cmluZyBnaXZlcyAwIGJ5dGVzOiAKICAgIFhGaWx0ZXJFdmVudCBy
ZXR1cm5zOiBGYWxzZQoKTWFwcGluZ05vdGlmeSBldmVudCwgc2VyaWFsIDM4LCBzeW50aGV0
aWMgTk8sIHdpbmRvdyAweDAsCiAgICByZXF1ZXN0IE1hcHBpbmdLZXlib2FyZCwgZmlyc3Rf
a2V5Y29kZSA4LCBjb3VudCAyNDgKCktleVByZXNzIGV2ZW50LCBzZXJpYWwgMzgsIHN5bnRo
ZXRpYyBOTywgd2luZG93IDB4NTYwMDAwMSwKICAgIHJvb3QgMHg0OTksIHN1YncgMHgwLCB0
aW1lIDEwODk2NzMsICgtMzcxLDQ2NSksIHJvb3Q6KDUyNyw0ODgpLAogICAgc3RhdGUgMHgx
OCwga2V5Y29kZSAxMDAgKGtleXN5bSAweGZmNTEsIExlZnQpLCBzYW1lX3NjcmVlbiBZRVMs
CiAgICBYTG9va3VwU3RyaW5nIGdpdmVzIDAgYnl0ZXM6IAogICAgWG1iTG9va3VwU3RyaW5n
IGdpdmVzIDAgYnl0ZXM6IAogICAgWEZpbHRlckV2ZW50IHJldHVybnM6IEZhbHNlCgpNYXBw
aW5nTm90aWZ5IGV2ZW50LCBzZXJpYWwgNDAsIHN5bnRoZXRpYyBOTywgd2luZG93IDB4MCwK
ICAgIHJlcXVlc3QgTWFwcGluZ0tleWJvYXJkLCBmaXJzdF9rZXljb2RlIDgsIGNvdW50IDI0
OAoKS2V5UmVsZWFzZSBldmVudCwgc2VyaWFsIDQwLCBzeW50aGV0aWMgTk8sIHdpbmRvdyAw
eDU2MDAwMDEsCiAgICByb290IDB4NDk5LCBzdWJ3IDB4MCwgdGltZSAxMDg5Nzk4LCAoLTM3
MSw0NjUpLCByb290Oig1MjcsNDg4KSwKICAgIHN0YXRlIDB4MTgsIGtleWNvZGUgMTEzIChr
ZXlzeW0gMHhmZmVhLCBBbHRfUiksIHNhbWVfc2NyZWVuIFlFUywKICAgIFhMb29rdXBTdHJp
bmcgZ2l2ZXMgMCBieXRlczogCiAgICBYRmlsdGVyRXZlbnQgcmV0dXJuczogRmFsc2UKCk1h
cHBpbmdOb3RpZnkgZXZlbnQsIHNlcmlhbCA0MCwgc3ludGhldGljIE5PLCB3aW5kb3cgMHgw
LAogICAgcmVxdWVzdCBNYXBwaW5nS2V5Ym9hcmQsIGZpcnN0X2tleWNvZGUgOCwgY291bnQg
MjQ4CgpLZXlSZWxlYXNlIGV2ZW50LCBzZXJpYWwgNDAsIHN5bnRoZXRpYyBOTywgd2luZG93
IDB4NTYwMDAwMSwKICAgIHJvb3QgMHg0OTksIHN1YncgMHgwLCB0aW1lIDEwODk3OTgsICgt
MzcxLDQ2NSksIHJvb3Q6KDUyNyw0ODgpLAogICAgc3RhdGUgMHgxMCwga2V5Y29kZSAxMDAg
KGtleXN5bSAweGZmNTEsIExlZnQpLCBzYW1lX3NjcmVlbiBZRVMsCiAgICBYTG9va3VwU3Ry
aW5nIGdpdmVzIDAgYnl0ZXM6IAogICAgWEZpbHRlckV2ZW50IHJldHVybnM6IEZhbHNlCgoj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIyMjIyMjIFBSRVNTIFZP
TFVNRSBVUCAoQlJPS0VOKSAgIyMjIyMjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIwoKTWFwcGluZ05vdGlmeSBldmVudCwgc2VyaWFsIDQyLCBzeW50aGV0aWMg
Tk8sIHdpbmRvdyAweDAsCiAgICByZXF1ZXN0IE1hcHBpbmdLZXlib2FyZCwgZmlyc3Rfa2V5
Y29kZSA4LCBjb3VudCAyNDgKCktleVByZXNzIGV2ZW50LCBzZXJpYWwgNDIsIHN5bnRoZXRp
YyBOTywgd2luZG93IDB4NTYwMDAwMSwKICAgIHJvb3QgMHg0OTksIHN1YncgMHgwLCB0aW1l
IDEwOTg1NjIsICgtMzcxLDQ2NSksIHJvb3Q6KDUyNyw0ODgpLAogICAgc3RhdGUgMHgxMCwg
a2V5Y29kZSAxMjMgKGtleXN5bSAweDAsIE5vU3ltYm9sKSwgc2FtZV9zY3JlZW4gWUVTLAog
ICAgWExvb2t1cFN0cmluZyBnaXZlcyAwIGJ5dGVzOiAKICAgIFhtYkxvb2t1cFN0cmluZyBn
aXZlcyAwIGJ5dGVzOiAKICAgIFhGaWx0ZXJFdmVudCByZXR1cm5zOiBGYWxzZQoKTWFwcGlu
Z05vdGlmeSBldmVudCwgc2VyaWFsIDQyLCBzeW50aGV0aWMgTk8sIHdpbmRvdyAweDAsCiAg
ICByZXF1ZXN0IE1hcHBpbmdLZXlib2FyZCwgZmlyc3Rfa2V5Y29kZSA4LCBjb3VudCAyNDgK
CktleVByZXNzIGV2ZW50LCBzZXJpYWwgNDIsIHN5bnRoZXRpYyBOTywgd2luZG93IDB4NTYw
MDAwMSwKICAgIHJvb3QgMHg0OTksIHN1YncgMHgwLCB0aW1lIDEwOTg1NjIsICgtMzcxLDQ2
NSksIHJvb3Q6KDUyNyw0ODgpLAogICAgc3RhdGUgMHgxMCwga2V5Y29kZSAxNzYgKGtleXN5
bSAweDAsIE5vU3ltYm9sKSwgc2FtZV9zY3JlZW4gWUVTLAogICAgWExvb2t1cFN0cmluZyBn
aXZlcyAwIGJ5dGVzOiAKICAgIFhtYkxvb2t1cFN0cmluZyBnaXZlcyAwIGJ5dGVzOiAKICAg
IFhGaWx0ZXJFdmVudCByZXR1cm5zOiBGYWxzZQoKTWFwcGluZ05vdGlmeSBldmVudCwgc2Vy
aWFsIDQyLCBzeW50aGV0aWMgTk8sIHdpbmRvdyAweDAsCiAgICByZXF1ZXN0IE1hcHBpbmdL
ZXlib2FyZCwgZmlyc3Rfa2V5Y29kZSA4LCBjb3VudCAyNDgKCktleVJlbGVhc2UgZXZlbnQs
IHNlcmlhbCA0Miwgc3ludGhldGljIE5PLCB3aW5kb3cgMHg1NjAwMDAxLAogICAgcm9vdCAw
eDQ5OSwgc3VidyAweDAsIHRpbWUgMTA5ODU2NCwgKC0zNzEsNDY1KSwgcm9vdDooNTI3LDQ4
OCksCiAgICBzdGF0ZSAweDEwLCBrZXljb2RlIDEyMyAoa2V5c3ltIDB4MCwgTm9TeW1ib2wp
LCBzYW1lX3NjcmVlbiBZRVMsCiAgICBYTG9va3VwU3RyaW5nIGdpdmVzIDAgYnl0ZXM6IAog
ICAgWEZpbHRlckV2ZW50IHJldHVybnM6IEZhbHNlCgpNYXBwaW5nTm90aWZ5IGV2ZW50LCBz
ZXJpYWwgNDIsIHN5bnRoZXRpYyBOTywgd2luZG93IDB4MCwKICAgIHJlcXVlc3QgTWFwcGlu
Z0tleWJvYXJkLCBmaXJzdF9rZXljb2RlIDgsIGNvdW50IDI0OAoKS2V5UmVsZWFzZSBldmVu
dCwgc2VyaWFsIDQyLCBzeW50aGV0aWMgTk8sIHdpbmRvdyAweDU2MDAwMDEsCiAgICByb290
IDB4NDk5LCBzdWJ3IDB4MCwgdGltZSAxMDk4NTY1LCAoLTM3MSw0NjUpLCByb290Oig1Mjcs
NDg4KSwKICAgIHN0YXRlIDB4MTAsIGtleWNvZGUgMTc2IChrZXlzeW0gMHgwLCBOb1N5bWJv
bCksIHNhbWVfc2NyZWVuIFlFUywKICAgIFhMb29rdXBTdHJpbmcgZ2l2ZXMgMCBieXRlczog
CiAgICBYRmlsdGVyRXZlbnQgcmV0dXJuczogRmFsc2UKCiMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMjIyMjIyBQUkVTUyBWT0xVTUUgRE9XTiAoQlJPS0VO
KSAgIyMjIyMjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgpN
YXBwaW5nTm90aWZ5IGV2ZW50LCBzZXJpYWwgNDYsIHN5bnRoZXRpYyBOTywgd2luZG93IDB4
MCwKICAgIHJlcXVlc3QgTWFwcGluZ0tleWJvYXJkLCBmaXJzdF9rZXljb2RlIDgsIGNvdW50
IDI0OAoKS2V5UHJlc3MgZXZlbnQsIHNlcmlhbCA0Niwgc3ludGhldGljIE5PLCB3aW5kb3cg
MHg1NjAwMDAxLAogICAgcm9vdCAweDQ5OSwgc3VidyAweDAsIHRpbWUgMTEwMzQ2OCwgKC0z
NzEsNDY1KSwgcm9vdDooNTI3LDQ4OCksCiAgICBzdGF0ZSAweDEwLCBrZXljb2RlIDEyMiAo
a2V5c3ltIDB4MCwgTm9TeW1ib2wpLCBzYW1lX3NjcmVlbiBZRVMsCiAgICBYTG9va3VwU3Ry
aW5nIGdpdmVzIDAgYnl0ZXM6IAogICAgWG1iTG9va3VwU3RyaW5nIGdpdmVzIDAgYnl0ZXM6
IAogICAgWEZpbHRlckV2ZW50IHJldHVybnM6IEZhbHNlCgpNYXBwaW5nTm90aWZ5IGV2ZW50
LCBzZXJpYWwgNDYsIHN5bnRoZXRpYyBOTywgd2luZG93IDB4MCwKICAgIHJlcXVlc3QgTWFw
cGluZ0tleWJvYXJkLCBmaXJzdF9rZXljb2RlIDgsIGNvdW50IDI0OAoKS2V5UHJlc3MgZXZl
bnQsIHNlcmlhbCA0Niwgc3ludGhldGljIE5PLCB3aW5kb3cgMHg1NjAwMDAxLAogICAgcm9v
dCAweDQ5OSwgc3VidyAweDAsIHRpbWUgMTEwMzQ2OSwgKC0zNzEsNDY1KSwgcm9vdDooNTI3
LDQ4OCksCiAgICBzdGF0ZSAweDEwLCBrZXljb2RlIDE3NCAoa2V5c3ltIDB4MCwgTm9TeW1i
b2wpLCBzYW1lX3NjcmVlbiBZRVMsCiAgICBYTG9va3VwU3RyaW5nIGdpdmVzIDAgYnl0ZXM6
IAogICAgWG1iTG9va3VwU3RyaW5nIGdpdmVzIDAgYnl0ZXM6IAogICAgWEZpbHRlckV2ZW50
IHJldHVybnM6IEZhbHNlCgpLZXlSZWxlYXNlIGV2ZW50LCBzZXJpYWwgNDYsIHN5bnRoZXRp
YyBOTywgd2luZG93IDB4NTYwMDAwMSwKICAgIHJvb3QgMHg0OTksIHN1YncgMHgwLCB0aW1l
IDExMDM0NzEsICgtMzcxLDQ2NSksIHJvb3Q6KDUyNyw0ODgpLAogICAgc3RhdGUgMHgxMCwg
a2V5Y29kZSAxNzQgKGtleXN5bSAweDAsIE5vU3ltYm9sKSwgc2FtZV9zY3JlZW4gWUVTLAog
ICAgWExvb2t1cFN0cmluZyBnaXZlcyAwIGJ5dGVzOiAKICAgIFhGaWx0ZXJFdmVudCByZXR1
cm5zOiBGYWxzZQoKTWFwcGluZ05vdGlmeSBldmVudCwgc2VyaWFsIDQ2LCBzeW50aGV0aWMg
Tk8sIHdpbmRvdyAweDAsCiAgICByZXF1ZXN0IE1hcHBpbmdLZXlib2FyZCwgZmlyc3Rfa2V5
Y29kZSA4LCBjb3VudCAyNDgKCktleVJlbGVhc2UgZXZlbnQsIHNlcmlhbCA0Niwgc3ludGhl
dGljIE5PLCB3aW5kb3cgMHg1NjAwMDAxLAogICAgcm9vdCAweDQ5OSwgc3VidyAweDAsIHRp
bWUgMTEwMzQ3MSwgKC0zNzEsNDY1KSwgcm9vdDooNTI3LDQ4OCksCiAgICBzdGF0ZSAweDEw
LCBrZXljb2RlIDEyMiAoa2V5c3ltIDB4MCwgTm9TeW1ib2wpLCBzYW1lX3NjcmVlbiBZRVMs
CiAgICBYTG9va3VwU3RyaW5nIGdpdmVzIDAgYnl0ZXM6IAogICAgWEZpbHRlckV2ZW50IHJl
dHVybnM6IEZhbHNlCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IwojIyMjIyMgUFJFU1MgVk9MVU1FIE1VVEUgKEJST0tFTikgICMjIyMjIwojIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKTWFwcGluZ05vdGlmeSBldmVudCwg
c2VyaWFsIDQ5LCBzeW50aGV0aWMgTk8sIHdpbmRvdyAweDAsCiAgICByZXF1ZXN0IE1hcHBp
bmdLZXlib2FyZCwgZmlyc3Rfa2V5Y29kZSA4LCBjb3VudCAyNDgKCktleVByZXNzIGV2ZW50
LCBzZXJpYWwgNDksIHN5bnRoZXRpYyBOTywgd2luZG93IDB4NTYwMDAwMSwKICAgIHJvb3Qg
MHg0OTksIHN1YncgMHgwLCB0aW1lIDExMTA4NzIsICgtMzcxLDQ2NSksIHJvb3Q6KDUyNyw0
ODgpLAogICAgc3RhdGUgMHgxMCwga2V5Y29kZSAxNDAgKGtleXN5bSAweDAsIE5vU3ltYm9s
KSwgc2FtZV9zY3JlZW4gWUVTLAogICAgWExvb2t1cFN0cmluZyBnaXZlcyAwIGJ5dGVzOiAK
ICAgIFhtYkxvb2t1cFN0cmluZyBnaXZlcyAwIGJ5dGVzOiAKICAgIFhGaWx0ZXJFdmVudCBy
ZXR1cm5zOiBGYWxzZQoKTWFwcGluZ05vdGlmeSBldmVudCwgc2VyaWFsIDQ5LCBzeW50aGV0
aWMgTk8sIHdpbmRvdyAweDAsCiAgICByZXF1ZXN0IE1hcHBpbmdLZXlib2FyZCwgZmlyc3Rf
a2V5Y29kZSA4LCBjb3VudCAyNDgKCktleVByZXNzIGV2ZW50LCBzZXJpYWwgNDksIHN5bnRo
ZXRpYyBOTywgd2luZG93IDB4NTYwMDAwMSwKICAgIHJvb3QgMHg0OTksIHN1YncgMHgwLCB0
aW1lIDExMTA4NzIsICgtMzcxLDQ2NSksIHJvb3Q6KDUyNyw0ODgpLAogICAgc3RhdGUgMHgx
MCwga2V5Y29kZSAxMjEgKGtleXN5bSAweDAsIE5vU3ltYm9sKSwgc2FtZV9zY3JlZW4gWUVT
LAogICAgWExvb2t1cFN0cmluZyBnaXZlcyAwIGJ5dGVzOiAKICAgIFhtYkxvb2t1cFN0cmlu
ZyBnaXZlcyAwIGJ5dGVzOiAKICAgIFhGaWx0ZXJFdmVudCByZXR1cm5zOiBGYWxzZQoKS2V5
UmVsZWFzZSBldmVudCwgc2VyaWFsIDUxLCBzeW50aGV0aWMgTk8sIHdpbmRvdyAweDU2MDAw
MDEsCiAgICByb290IDB4NDk5LCBzdWJ3IDB4MCwgdGltZSAxMTEwODc2LCAoLTM3MSw0NjUp
LCByb290Oig1MjcsNDg4KSwKICAgIHN0YXRlIDB4MTAsIGtleWNvZGUgMTIxIChrZXlzeW0g
MHgwLCBOb1N5bWJvbCksIHNhbWVfc2NyZWVuIFlFUywKICAgIFhMb29rdXBTdHJpbmcgZ2l2
ZXMgMCBieXRlczogCiAgICBYRmlsdGVyRXZlbnQgcmV0dXJuczogRmFsc2UKCk1hcHBpbmdO
b3RpZnkgZXZlbnQsIHNlcmlhbCA1MSwgc3ludGhldGljIE5PLCB3aW5kb3cgMHgwLAogICAg
cmVxdWVzdCBNYXBwaW5nS2V5Ym9hcmQsIGZpcnN0X2tleWNvZGUgOCwgY291bnQgMjQ4CgpL
ZXlSZWxlYXNlIGV2ZW50LCBzZXJpYWwgNTEsIHN5bnRoZXRpYyBOTywgd2luZG93IDB4NTYw
MDAwMSwKICAgIHJvb3QgMHg0OTksIHN1YncgMHgwLCB0aW1lIDExMTA4NzYsICgtMzcxLDQ2
NSksIHJvb3Q6KDUyNyw0ODgpLAogICAgc3RhdGUgMHgxMCwga2V5Y29kZSAxNDAgKGtleXN5
bSAweDAsIE5vU3ltYm9sKSwgc2FtZV9zY3JlZW4gWUVTLAogICAgWExvb2t1cFN0cmluZyBn
aXZlcyAwIGJ5dGVzOiAKICAgIFhGaWx0ZXJFdmVudCByZXR1cm5zOiBGYWxzZQoKQ2xpZW50
TWVzc2FnZSBldmVudCwgc2VyaWFsIDUyLCBzeW50aGV0aWMgWUVTLCB3aW5kb3cgMHg1NjAw
MDAxLAogICAgbWVzc2FnZV90eXBlIDB4MTQ4IChXTV9QUk9UT0NPTFMpLCBmb3JtYXQgMzIs
IG1lc3NhZ2UgMHgxNDkgKFdNX0RFTEVURV9XSU5ET1cpCgojIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIwojIyMjIyBFTkQgeGV2IC1ldmVudCBrZXlib2FyZCAjIyMjIwoj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwo=
--------------CB2650C7656876520F46E561--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?420c37d0-79bf-ac53-58aa-dcf1b99bd5c7>