Como posso identificar o componente responsável pela reordenação da entrada do teclado?

Como posso identificar o componente responsável pela reordenação da entrada do teclado?

Tenho o Ubuntu 14.04 rodando em um laptop Dell Latitude 13. Quando inicio o Chromium e abro várias páginas do stackexchange em guias diferentes. Qualquer texto que eu digitar frequentemente terá caracteres aparecendo em uma ordem diferente de como foram digitados. Por exemplo, este parágrafo realmente apareceu como:

Eu tenho o Ubuntu 14.04 rodando em um laptop Dell Latitude 1 3. Quando eu aluguei Chormium na dopne várias páginas formam tsackexchnag ei ​​diferentes guias. Qualquer texto que eu digitar provavelmente terá caracteres aparecendo em uma forma diferente da forma como foram digitados. Por exemplo, este apragraph realmente apareceu como

Como você pode imaginar, ter que consertar isso manualmente sempre que isso acontece pode ser muito frustrante. O comportamento parece que alguma camada da pilha de software está inserindo pressionamentos de teclas em uma pilha em vez de em uma fila e, se não forem consumidos tão rapidamente quanto chegam, aparecerão na ordem errada.

Isso só acontece esporadicamente e parece acontecer com mais frequência quando o Chromium está trocando muito. Não consegui identificar qual camada da pilha de software está causando o problema. Existe alguma depuração/registro adicional que eu possa ativar para me mostrar em que ordem os caracteres aparecem em diferentes camadas na pilha de software?

O que eu tentei até agora

Ao enviar sinais alternados STOPpara CONTum xterm, consegui desacelerar o xterm apenas o suficiente para reproduzir o sintoma. Como a reordenação da entrada do teclado não deve acontecer mesmo que o xterm esteja congelado por um tempo, acho que é seguro concluir que a falha não está no Chromium ou no stackexchange, mas sim em algum software envolvido em ambos os casos.

Para descartar a possibilidade de ser uma falha no hardware do teclado, testei pressionando teclas sintéticas.

sleep 10 ; for K in {a..z} ; do xdotool type "$K" ; sleep 0.2 ; done

Com esse comando consegui reproduzir o problema. Certa vez, as chaves apareceram no pedido abcdefghlmkjpnioqrstuvwxyz. Portanto, quando isso também acontece com pressionamentos de tecla gerados por xdotool, não pode ser uma falha no teclado ou no controlador do teclado.

Se eu acelerar ainda mais a entrada produzida usando xdotool, isso fará com que o xterm trave.

Ver um xterm travado quando a entrada do teclado chega rapidamente é algo que tenho visto mesmo sem desacelerá-lo artificialmente usando sinais STOP. Quando vejo o xterm travar assim, geralmente continua acontecendo depois que eu mato o xterm e inicio um novo. Esse problema persiste até eu executar o compiz --replace. Depois de executar esse comando, tudo corre mais rápido e o xterm não trava mais, pelo menos nos primeiros dias.

Portanto, há algumas evidências que sugerem que os dois problemas estão relacionados e de alguma forma têm algo a ver com compiz, mas não tenho nenhuma evidência sólida para apoiar essa suspeita.

informação relacionada