1. 24 10月, 2017 4 次提交
    • P
      Merge remote-tracking branch 'remotes/kraxel/tags/input-20171023-pull-request' into staging · 328f6f79
      Peter Maydell 提交于
      input: fixes for ui input code and ps/2 keyboard (mostly sysrq key)
      
      # gpg: Signature made Mon 23 Oct 2017 10:19:22 BST
      # gpg:                using RSA key 0x4CB6D8EED3E87138
      # gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>"
      # gpg:                 aka "Gerd Hoffmann <gerd@kraxel.org>"
      # gpg:                 aka "Gerd Hoffmann (private) <kraxel@gmail.com>"
      # Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138
      
      * remotes/kraxel/tags/input-20171023-pull-request:
        ui: pull in latest keycodemapdb
        ui: normalize the 'sysrq' key into the 'print' key
        ps2: fix scancodes sent for Ctrl+Pause key combination
        ps2: fix scancodess sent for Pause key in AT set 1
        ps2: fix scancodes sent for Shift/Ctrl+Print key combination
        ps2: fix scancodes sent for Alt-Print key combination (aka SysRq)
        ui: use correct union field for key number
        ui: fix crash with sendkey and raw key numbers
        input: use hex in ps2 keycode trace events
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      328f6f79
    • P
      Merge remote-tracking branch 'remotes/kraxel/tags/usb-20171023-pull-request' into staging · 3d7196d4
      Peter Maydell 提交于
      usb: ccid fix.
      
      # gpg: Signature made Mon 23 Oct 2017 09:45:00 BST
      # gpg:                using RSA key 0x4CB6D8EED3E87138
      # gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>"
      # gpg:                 aka "Gerd Hoffmann <gerd@kraxel.org>"
      # gpg:                 aka "Gerd Hoffmann (private) <kraxel@gmail.com>"
      # Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138
      
      * remotes/kraxel/tags/usb-20171023-pull-request:
        usb-ccid: remove needless migration state code
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      3d7196d4
    • P
      Merge remote-tracking branch 'remotes/kraxel/tags/fixes-20171023-pull-request' into staging · 9293fcfe
      Peter Maydell 提交于
      fixes for the fallout of the recent ui and keymap merges.
      
      # gpg: Signature made Mon 23 Oct 2017 09:02:24 BST
      # gpg:                using RSA key 0x4CB6D8EED3E87138
      # gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>"
      # gpg:                 aka "Gerd Hoffmann <gerd@kraxel.org>"
      # gpg:                 aka "Gerd Hoffmann (private) <kraxel@gmail.com>"
      # Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138
      
      * remotes/kraxel/tags/fixes-20171023-pull-request:
        scripts: don't throw away stderr when checking out git submodules
        ui: add qemu-keymap and shader to .gitignore
        configure: disable qemu-keymap for linux-user qemu
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      9293fcfe
    • P
      Merge remote-tracking branch 'remotes/shorne/tags/openrisc-20171021-smp-pr' into staging · a61837da
      Peter Maydell 提交于
      OpenRISC SMP patchset 20171021
      
      # gpg: Signature made Fri 20 Oct 2017 22:51:16 BST
      # gpg:                using RSA key 0xC3B31C2D5E6627E4
      # gpg: Good signature from "Stafford Horne <shorne@gmail.com>"
      # gpg: WARNING: This key is not certified with a trusted signature!
      # gpg:          There is no indication that the signature belongs to the owner.
      # Primary key fingerprint: D9C4 7354 AEF8 6C10 3A25  EFF1 C3B3 1C2D 5E66 27E4
      
      * remotes/shorne/tags/openrisc-20171021-smp-pr:
        openrisc: Only kick cpu on timeout, not on update
        openrisc: Initial SMP support
        openrisc/cputimer: Perparation for Multicore
        target/openrisc: Make coreid and numcores variable
        openrisc/ompic: Add OpenRISC Multicore PIC (OMPIC)
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      a61837da
  2. 23 10月, 2017 13 次提交
    • D
      ui: pull in latest keycodemapdb · 2182608f
      Daniel P. Berrange 提交于
      Latest keycodemapdb has a fix for Sun keyboard Pause mapping
      and backcompat fix for QEMU's treatment of 0xb7 as an alternative
      to 0x54 for triggering Print/SysRq
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      Message-id: 20171019142848.572-10-berrange@redhat.com
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      2182608f
    • D
      ui: normalize the 'sysrq' key into the 'print' key · 80b857f0
      Daniel P. Berrange 提交于
      The 'sysrq' key was mistakenly added to QEMU to deal with incorrect handling
      of the 'print' key in the ps2 device:
      
        commit f2289cb6
        Author: balrog <balrog@c046a42c-6fe2-441c-8c8c-71466251a162>
        Date:   Wed Jun 4 10:14:16 2008 +0000
      
          Add sysrq to key names known by "sendkey".
      
          Adding sysrq keycode to the table enabling running sysrq debugging in
          the guest via the monitor sendkey command, like:
      
          (qemu) sendkey alt-sysrq-t
      
          Tested on x86-64 target and Linux guest.
      Signed-off-by: NRyan Harper <ryanh@us.ibm.com>
      
      The ps2 device is now fixed wrt modifiers and the 'print' key. Further the
      handling of the 'sysrq' key has some problems of its own, documented in the
      previous commit. To cleanup this mess, we convert any use of 'sysrq' into
      'print' prior to dispatching the event to device models.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      Message-id: 20171019142848.572-9-berrange@redhat.com
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      80b857f0
    • D
      ps2: fix scancodes sent for Ctrl+Pause key combination · 29fd23a5
      Daniel P. Berrange 提交于
      The 'Pause' key is special in the AT set 1 / set 2 scancode definitions.
      
      An unmodified 'Pause' key is supposed to send
      
       AT Set 1:  e1 1d 45 91 9d c5 (Down)  <nothing> (Up)
       AT Set 2:  e1 14 77 e1 f0 14 f0 77 (Down)  <nothing> (Up)
      
      which QEMU gets right. When combined with Ctrl (both left and right variants),
      a different sequence is expected
      
       AT Set 1:  e0 46 e0 c6 (Down)  <nothing> (Up)
       AT Set 2:  e0 7e e0 f0 73 (Down)  <nothing> (Up)
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      Message-id: 20171019142848.572-8-berrange@redhat.com
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      29fd23a5
    • D
      ps2: fix scancodess sent for Pause key in AT set 1 · 927f0425
      Daniel P. Berrange 提交于
      The ps2 device was previously fixed to send the special Pause/Print
      scancode sequences in:
      
        commit 8c10e0ba
        Author: Hervé Poussineau <hpoussin@reactos.org>
        Date:   Thu Sep 15 22:06:26 2016 +0200
      
          ps2: use QEMU qcodes instead of scancodes
      
      The sequence used for Pause had a small typo in the AT set 1, with a 0xe1
      accidentally changed to 0x91.  This is not immediately visible with Linux
      guests since they run the ps2 device with AT set 2 scancodes.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      Message-id: 20171019142848.572-7-berrange@redhat.com
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      927f0425
    • D
      ps2: fix scancodes sent for Shift/Ctrl+Print key combination · 8f63458f
      Daniel P. Berrange 提交于
      The 'Print' key is special in the AT set 1 / set 2 scancode definitions.
      
      An unmodified 'Print' key is supposed to send
      
       AT Set 1:  e0 2a e0 37 (Down)  e0 b7 e0 aa (Up)
       AT Set 2:  e0 12 e0 7c (Down)  e0 f0 7c e0 f0 12 (Up)
      
      which QEMU gets right. When combined with Shift/Ctrl (both left and right
      variants), the leading two bytes should be dropped, resulting in
      
       AT Set 1:  e0 37 (Down)  e0 b7 (Up)
       AT Set 2:  e0 7c (Down)  e0 f0 7c (Up)
      
      This difference is pretty benign, since of all the operating systems I have
      checked (Linux, FreeBSD and OpenStack), none bother to check the leading two
      bytes anyway. This change none the less makes the ps2 device better follow real
      hardware behaviour.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      Message-id: 20171019142848.572-6-berrange@redhat.com
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      8f63458f
    • D
      ps2: fix scancodes sent for Alt-Print key combination (aka SysRq) · 620775d1
      Daniel P. Berrange 提交于
      The 'Print' key is special in the AT set 1 / set 2 scancode definitions.
      
      An unmodified 'Print' key is supposed to send
      
       AT Set 1:  e0 2a e0 37 (Down)  e0 b7 e0 aa (Up)
       AT Set 2:  e0 12 e0 7c (Down)  e0 f0 7c e0 f0 12 (Up)
      
      which QEMU gets right. When pressed in combination with the 'Alt_L' or 'Alt_R'
      keys (which signify SysRq), the scancodes are required to follow a different
      scheme. With Alt_L, the expected sequences are
      
       AT set 1:  38, 54 (Down) d4, b8 (Up)
       AT set 2:  11, 84 (Down) f0 84, f0 11 (Up)
      
      And with Alt_R
      
       AT set 1:  e0 38, 54 (Down) d4, e0 b8 (Up)
       AT set 2:  e0 11, 84 (Down) f0 84, f0 e0 11 (Up)
      
      It is actually slightly more complicated than that, because (according results
      of 'showkey -s', keyboards will in fact first release the currently pressed
      modifier before sending the sequence above (which effectively re-presses &
      then releases the modifier) and finally re-press the original modifier
      afterwards. IOW, with Alt_L we need to send
      
       AT set 1:  b8, 38, 54 (Down) d4, b8, 38 (Up)
       AT set 2:  f0 11, 11, 84 (Down) f0 84, f0 11, 11 (Up)
      
      And with Alt_R
      
       AT set 1:  e0 b8, e0 38, 54 (Down) d4, e0 b8, e0 38 (Up)
       AT set 2:  e0 f0 11, e0 11, 84 (Down) f0 84, e0 f0 11, e0 11 (Up)
      
      The AT set 3 scancodes have no special handling for Alt-Print.
      
      Rather than fixing the handling of the 'print' key in the ps2 driver to consider
      the Alt modifiers, way back, a patch was commited that defined an extra 'sysrq'
      key name:
      
        commit f2289cb6
        Author: balrog <balrog@c046a42c-6fe2-441c-8c8c-71466251a162>
        Date:   Wed Jun 4 10:14:16 2008 +0000
      
          Add sysrq to key names known by "sendkey".
      
          Adding sysrq keycode to the table enabling running sysrq debugging in
          the guest via the monitor sendkey command, like:
      
          (qemu) sendkey alt-sysrq-t
      
          Tested on x86-64 target and Linux guest.
      Signed-off-by: NRyan Harper <ryanh@us.ibm.com>
      
      With this patch QEMU would send
      
       AT set 1:  38, 54 (Down) d4, b8 (Up)
       AT set 2:  11, 84 (Down) f0 84, f0 11 (Up)
      
      but this doesn't match what actual real keyboards send, as it is not releasing
      the original modifier & pressing it again afterwards. In addition the original
      problem remains, and a new problem was added:
      
        - The sequence 'alt-print-t' is still broken, acting as if 'print-t' was
          requested
        - The sequence 'sysrq-t' is broken, injecting an undefine scancode sequence
          tot he guest os (bare 0x54)
      
      To deal with this mess we make these changes to the ps2 code, so that we track
      the state of modifier keys (Alt, Shift, Ctrl - both left & right). Then we can
      vary what scancodes are sent for Q_KEY_CODE_PRINT according to the Alt key
      modifier state
      
      Interestingly, it appears that of operating systems I've checked (Linux, FreeBSD
      and OpenSolaris), none of them actually bother to validate the full sequences
      for a unmodified 'Print' key. They all just ignore the leading "e0 2a" and
      trigger based off "e0 37" alone. The latter two byte sequence is what keyboards
      send with 'Print' is combined with 'Shift' or 'Ctrl' modifiers.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      Message-id: 20171019142848.572-5-berrange@redhat.com
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      620775d1
    • D
      ui: use correct union field for key number · 237925ba
      Daniel P. Berrange 提交于
      The code converting key numbers to QKeyCode in the 'input-send-event'
      command mistakenly accessed the key->u.qcode union field instead of
      the key->u.number field. This is harmless because the fields use the
      same size datatype in both cases, but none the less it should be fixed
      to avoid confusion.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Message-id: 20171019142848.572-4-berrange@redhat.com
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      237925ba
    • D
      ui: fix crash with sendkey and raw key numbers · 1d5b8d77
      Daniel P. Berrange 提交于
      Previously we enforced that all key events are using QKeyCodes
      at time they are sent:
      
        commit af07e5ff
        Author: Daniel P. Berrange <berrange@redhat.com>
        Date:   Fri Sep 29 11:12:00 2017 +0100
      
          ui: convert key events to QKeyCodes immediately
      
      This commit forget to fix the code for the legacy 'sendkey'
      command which still accepts key numbers from the user, which
      then need converting to QKeyCodes
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Message-id: 20171019142848.572-3-berrange@redhat.com
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      1d5b8d77
    • D
      input: use hex in ps2 keycode trace events · 700c85c0
      Daniel P. Berrange 提交于
      Hardware scancodes are all documented in hex, so use that in trace
      events to make it easier to understand.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Message-id: 20171019142848.572-2-berrange@redhat.com
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      700c85c0
    • M
      usb-ccid: remove needless migration state code · 31bd59db
      Marc-André Lureau 提交于
      This code appears to be unused since its introduction. We need to keep
      the state_vmstate field byte in VMState for compatibility reasons.
      Signed-off-by: NMarc-André Lureau <marcandre.lureau@redhat.com>
      Message-id: 20171013125533.9153-1-marcandre.lureau@redhat.com
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      31bd59db
    • D
      scripts: don't throw away stderr when checking out git submodules · 8172bdb2
      Daniel P. Berrange 提交于
      The stderr from git is important if git fails to checkout modules
      due to network problems, or other unexpected errors.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
      Message-id: 20171020130748.22983-1-berrange@redhat.com
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      8172bdb2
    • G
      ui: add qemu-keymap and shader to .gitignore · 2fb6eeac
      Gerd Hoffmann 提交于
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      Reviewed-by: NEric Blake <eblake@redhat.com>
      Message-id: 20171020070914.7785-1-kraxel@redhat.com
      2fb6eeac
    • L
      configure: disable qemu-keymap for linux-user qemu · ff69fd8c
      Laurent Vivier 提交于
      We don't need qemu-keymap when we build only linux-user qemu.
      
      When we compile in static mode, the libxkbcommon is detected
      by configure if the shared one is available, but cannot
      be linked if the static version is not available.
      
      As we don't need it for qemu-linux-user, and we generally need
      a static link to use it in a chroot, disable qemu-keymap in
      this case.
      Signed-off-by: NLaurent Vivier <laurent@vivier.eu>
      Message-id: 20171019191606.14129-1-laurent@vivier.eu
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      ff69fd8c
  3. 21 10月, 2017 5 次提交
  4. 20 10月, 2017 18 次提交