[Qemu-devel] [PULL 00/11] Ui 20171013 patches

Gerd Hoffmann posted 11 patches 6 years, 6 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20171013081450.29647-1-kraxel@redhat.com
Test checkpatch passed
Test docker passed
Test s390x passed
configure                 |   75 ++-
Makefile                  |   55 ++-
include/ui/input.h        |   12 +-
qemu-keymap.c             |  258 +++++++++++
ui/gtk-gl-area.c          |    3 +-
ui/gtk.c                  |    5 +
ui/input-keymap.c         |  336 +-------------
ui/input.c                |   24 +-
.gitignore                |    2 +
.gitmodules               |    3 +
MAINTAINERS               |    6 +
pc-bios/keymaps/Makefile  |   56 +++
pc-bios/keymaps/ar        |  819 +++++++++++++++++++++++++++++----
pc-bios/keymaps/bepo      | 1108 +++++++++++++++++++++++++++++++--------------
pc-bios/keymaps/cz        |  861 ++++++++++++++++++++++++++++++++---
pc-bios/keymaps/da        |  732 +++++++++++++++++++++++++++++-
pc-bios/keymaps/de        |  767 ++++++++++++++++++++++++++++++-
pc-bios/keymaps/de-ch     |  915 ++++++++++++++++++++++++++++++++-----
pc-bios/keymaps/en-gb     |  724 ++++++++++++++++++++++++++++-
pc-bios/keymaps/en-us     |  718 ++++++++++++++++++++++++++++-
pc-bios/keymaps/es        |  744 +++++++++++++++++++++++++++++-
pc-bios/keymaps/et        |  818 +++++++++++++++++++++++++++++----
pc-bios/keymaps/fi        |  814 ++++++++++++++++++++++++++++++---
pc-bios/keymaps/fo        |  881 ++++++++++++++++++++++++++++++++---
pc-bios/keymaps/fr        |  704 +++++++++++++++++++++++++++-
pc-bios/keymaps/fr-be     |  724 ++++++++++++++++++++++++++++-
pc-bios/keymaps/fr-ca     |  804 ++++++++++++++++++++++++++++++--
pc-bios/keymaps/fr-ch     |  800 ++++++++++++++++++++++++++++++--
pc-bios/keymaps/hr        |  752 +++++++++++++++++++++++++++++-
pc-bios/keymaps/hu        |  887 ++++++++++++++++++++++++++++++++----
pc-bios/keymaps/is        |  802 +++++++++++++++++++++++++++++---
pc-bios/keymaps/it        |  757 ++++++++++++++++++++++++++++++-
pc-bios/keymaps/ja        |  792 +++++++++++++++++++++++++++++---
pc-bios/keymaps/lt        |  844 ++++++++++++++++++++++++++++++++--
pc-bios/keymaps/lv        |  766 +++++++++++++++++++++++++++++--
pc-bios/keymaps/mk        |  814 +++++++++++++++++++++++++++++----
pc-bios/keymaps/nl        |  794 +++++++++++++++++++++++++++++++-
pc-bios/keymaps/no        |  758 ++++++++++++++++++++++++++++++-
pc-bios/keymaps/pl        |  789 ++++++++++++++++++++++++++++++--
pc-bios/keymaps/pt        |  737 +++++++++++++++++++++++++++++-
pc-bios/keymaps/pt-br     |  775 ++++++++++++++++++++++++++++++-
pc-bios/keymaps/ru        |  835 ++++++++++++++++++++++++++++++----
pc-bios/keymaps/th        |  878 +++++++++++++++++++++++++++++------
pc-bios/keymaps/tr        |  819 ++++++++++++++++++++++++++++++---
scripts/archive-source.sh |   34 +-
scripts/git-submodule.sh  |   38 ++
ui/keycodemapdb           |    1 +
47 files changed, 24565 insertions(+), 2075 deletions(-)
create mode 100644 qemu-keymap.c
create mode 100644 pc-bios/keymaps/Makefile
create mode 100755 scripts/git-submodule.sh
create mode 160000 ui/keycodemapdb
[Qemu-devel] [PULL 00/11] Ui 20171013 patches
Posted by Gerd Hoffmann 6 years, 6 months ago
The following changes since commit bac960832015bf4c4c1b873011612e2675e4464c:

  Merge remote-tracking branch 'remotes/elmarco/tags/vus-pull-request' into staging (2017-10-11 13:10:36 +0100)

are available in the git repository at:

  git://git.kraxel.org/qemu tags/ui-20171013-pull-request

for you to fetch changes up to 942a35335b2efa2f2997d51eb5142fc9903efe43:

  gtk: fix wrong id between texture and framebuffer (2017-10-13 10:10:36 +0200)

----------------------------------------------------------------
ui: use keycodemapdb for key code mappings, part one (v2)
ui: add qemu-keymap, update reverse keymaps (for qemu -k $map)
ui: fix for vte 0.50
ui: gtk texture fix

----------------------------------------------------------------

Anthoine Bourgeois (1):
  gtk: fix wrong id between texture and framebuffer

Anthony PERARD (1):
  ui/gtk: Fix deprecation of vte_terminal_copy_clipboard

Daniel P. Berrange (6):
  build: automatically handle GIT submodule checkout for dtc
  docker: don't rely on submodules existing in the main checkout
  ui: add keycodemapdb repository as a GIT submodule
  ui: convert common input code to keycodemapdb
  ui: convert key events to QKeyCodes immediately
  ui: don't export qemu_input_event_new_key

Gerd Hoffmann (3):
  tools: add qemu-keymap
  Add pc-bios/keymaps/Makefile
  pc-bios/keymaps: keymaps update

 configure                 |   75 ++-
 Makefile                  |   55 ++-
 include/ui/input.h        |   12 +-
 qemu-keymap.c             |  258 +++++++++++
 ui/gtk-gl-area.c          |    3 +-
 ui/gtk.c                  |    5 +
 ui/input-keymap.c         |  336 +-------------
 ui/input.c                |   24 +-
 .gitignore                |    2 +
 .gitmodules               |    3 +
 MAINTAINERS               |    6 +
 pc-bios/keymaps/Makefile  |   56 +++
 pc-bios/keymaps/ar        |  819 +++++++++++++++++++++++++++++----
 pc-bios/keymaps/bepo      | 1108 +++++++++++++++++++++++++++++++--------------
 pc-bios/keymaps/cz        |  861 ++++++++++++++++++++++++++++++++---
 pc-bios/keymaps/da        |  732 +++++++++++++++++++++++++++++-
 pc-bios/keymaps/de        |  767 ++++++++++++++++++++++++++++++-
 pc-bios/keymaps/de-ch     |  915 ++++++++++++++++++++++++++++++++-----
 pc-bios/keymaps/en-gb     |  724 ++++++++++++++++++++++++++++-
 pc-bios/keymaps/en-us     |  718 ++++++++++++++++++++++++++++-
 pc-bios/keymaps/es        |  744 +++++++++++++++++++++++++++++-
 pc-bios/keymaps/et        |  818 +++++++++++++++++++++++++++++----
 pc-bios/keymaps/fi        |  814 ++++++++++++++++++++++++++++++---
 pc-bios/keymaps/fo        |  881 ++++++++++++++++++++++++++++++++---
 pc-bios/keymaps/fr        |  704 +++++++++++++++++++++++++++-
 pc-bios/keymaps/fr-be     |  724 ++++++++++++++++++++++++++++-
 pc-bios/keymaps/fr-ca     |  804 ++++++++++++++++++++++++++++++--
 pc-bios/keymaps/fr-ch     |  800 ++++++++++++++++++++++++++++++--
 pc-bios/keymaps/hr        |  752 +++++++++++++++++++++++++++++-
 pc-bios/keymaps/hu        |  887 ++++++++++++++++++++++++++++++++----
 pc-bios/keymaps/is        |  802 +++++++++++++++++++++++++++++---
 pc-bios/keymaps/it        |  757 ++++++++++++++++++++++++++++++-
 pc-bios/keymaps/ja        |  792 +++++++++++++++++++++++++++++---
 pc-bios/keymaps/lt        |  844 ++++++++++++++++++++++++++++++++--
 pc-bios/keymaps/lv        |  766 +++++++++++++++++++++++++++++--
 pc-bios/keymaps/mk        |  814 +++++++++++++++++++++++++++++----
 pc-bios/keymaps/nl        |  794 +++++++++++++++++++++++++++++++-
 pc-bios/keymaps/no        |  758 ++++++++++++++++++++++++++++++-
 pc-bios/keymaps/pl        |  789 ++++++++++++++++++++++++++++++--
 pc-bios/keymaps/pt        |  737 +++++++++++++++++++++++++++++-
 pc-bios/keymaps/pt-br     |  775 ++++++++++++++++++++++++++++++-
 pc-bios/keymaps/ru        |  835 ++++++++++++++++++++++++++++++----
 pc-bios/keymaps/th        |  878 +++++++++++++++++++++++++++++------
 pc-bios/keymaps/tr        |  819 ++++++++++++++++++++++++++++++---
 scripts/archive-source.sh |   34 +-
 scripts/git-submodule.sh  |   38 ++
 ui/keycodemapdb           |    1 +
 47 files changed, 24565 insertions(+), 2075 deletions(-)
 create mode 100644 qemu-keymap.c
 create mode 100644 pc-bios/keymaps/Makefile
 create mode 100755 scripts/git-submodule.sh
 create mode 160000 ui/keycodemapdb

-- 
2.9.3


Re: [Qemu-devel] [PULL 00/11] Ui 20171013 patches
Posted by Daniel P. Berrange 6 years, 6 months ago
On Fri, Oct 13, 2017 at 10:14:39AM +0200, Gerd Hoffmann wrote:
> The following changes since commit bac960832015bf4c4c1b873011612e2675e4464c:
> 
>   Merge remote-tracking branch 'remotes/elmarco/tags/vus-pull-request' into staging (2017-10-11 13:10:36 +0100)
> 
> are available in the git repository at:
> 
>   git://git.kraxel.org/qemu tags/ui-20171013-pull-request
> 
> for you to fetch changes up to 942a35335b2efa2f2997d51eb5142fc9903efe43:
> 
>   gtk: fix wrong id between texture and framebuffer (2017-10-13 10:10:36 +0200)
> 
> ----------------------------------------------------------------
> ui: use keycodemapdb for key code mappings, part one (v2)
> ui: add qemu-keymap, update reverse keymaps (for qemu -k $map)
> ui: fix for vte 0.50
> ui: gtk texture fix
> 
> ----------------------------------------------------------------

I'm afraid this is quite likely to fail build smoke test again. I've
just tried a build on OpenBSD with the bash -> sh fix in it, and I
found that it still tried to build the keycodemap files in parallel
with checking out the GIT submodules. It also tried to run the
mkdir -p dtc/libfdt in parallel and this caused git to refuse to
checkout the dtc module due to that empty dir existing. So there's
still some deps problems in here I think that let make build in
the wrong order :-(

  GEN     config-host.h
  GEN     module_block.h
  GEN     ui/input-keymap-linux-to-qcode.c
  GEN     ui/input-keymap-qcode-to-qnum.c
  GEN     ui/input-keymap-qnum-to-qcode.c
python: can't open file '/home/berrange/src/virt/qemu/ui/keycodemapdb/tools/keymap-gen': [Errno 2] No such file or directory
python: can't open file '/home/berrange/src/virt/qemu/ui/keycodemapdb/tools/keymap-gen': [Errno 2] No such file or directory
python: can't open file '/home/berrange/src/virt/qemu/ui/keycodemapdb/tools/keymap-gen': [Errno 2] No such file or directory
mkdir -p dtc/libfdt
  GIT     ui/keycodemapdb dtc
mkdir -p dtc/tests

This should be impossible because ui/input-keymap-* depends on the
tools/keymap-gen, and that depends on the submodule status file,
which in turn should trigger the checkout, but the build log
showed that isn't working as we expect.

In all my debugging the one thing I've seen work correctly is the
re-running of configure (via config.status), which always happens
earlier and is serialized wrt everything else. So I wonder if we
should change direction slightly, and have configure checkout the
submodules. Then just make sure that config.status is triggered
when submodules are out of date.

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|

Re: [Qemu-devel] [PULL 00/11] Ui 20171013 patches
Posted by Gerd Hoffmann 6 years, 6 months ago
  Hi,

> I'm afraid this is quite likely to fail build smoke test again. I've
> just tried a build on OpenBSD with the bash -> sh fix in it, and I
> found that it still tried to build the keycodemap files in parallel
> with checking out the GIT submodules. It also tried to run the
> mkdir -p dtc/libfdt in parallel and this caused git to refuse to
> checkout the dtc module due to that empty dir existing. So there's
> still some deps problems in here I think that let make build in
> the wrong order :-(

> In all my debugging the one thing I've seen work correctly is the
> re-running of configure (via config.status), which always happens
> earlier and is serialized wrt everything else. So I wonder if we
> should change direction slightly, and have configure checkout the
> submodules. Then just make sure that config.status is triggered
> when submodules are out of date.

I've noticed configure running *in parallel* to other stuff. 
Reproducer:

  (1) Apply patch #1
  (2) run normal build
  (3) make -C dtc clean
  (4) touch configure
  (5) make

Watch configure and dtc build running in parallel.
I think the added Makefile dependency breaks it.

Incremental fix (also pushed to queue/ui):

--- a/Makefile
+++ b/Makefile
@@ -35,8 +35,6 @@ endif
 
 .git-submodule-status: git-submodule-update config-host.mak
 
-Makefile: .git-submodule-status
-
 # Check that we're not trying to do an out-of-tree build from
 # a tree that's been used for an in-tree build.
 ifneq ($(realpath $(SRC_PATH)),$(realpath .))
@@ -107,6 +105,7 @@ endif
 GENERATED_FILES += $(TRACE_HEADERS)
 GENERATED_FILES += $(TRACE_SOURCES)
 GENERATED_FILES += $(BUILD_DIR)/trace-events-all
+GENERATED_FILES += .git-submodule-status
 
 trace-group-name = $(shell dirname $1 | sed -e 's/[^a-zA-Z0-9]/_/g')

cheers,
  Gerd


Re: [Qemu-devel] [PULL 00/11] Ui 20171013 patches
Posted by Daniel P. Berrange 6 years, 6 months ago
On Mon, Oct 16, 2017 at 11:19:13AM +0200, Gerd Hoffmann wrote:
>   Hi,
> 
> > I'm afraid this is quite likely to fail build smoke test again. I've
> > just tried a build on OpenBSD with the bash -> sh fix in it, and I
> > found that it still tried to build the keycodemap files in parallel
> > with checking out the GIT submodules. It also tried to run the
> > mkdir -p dtc/libfdt in parallel and this caused git to refuse to
> > checkout the dtc module due to that empty dir existing. So there's
> > still some deps problems in here I think that let make build in
> > the wrong order :-(
> 
> > In all my debugging the one thing I've seen work correctly is the
> > re-running of configure (via config.status), which always happens
> > earlier and is serialized wrt everything else. So I wonder if we
> > should change direction slightly, and have configure checkout the
> > submodules. Then just make sure that config.status is triggered
> > when submodules are out of date.
> 
> I've noticed configure running *in parallel* to other stuff. 
> Reproducer:
> 
>   (1) Apply patch #1
>   (2) run normal build
>   (3) make -C dtc clean
>   (4) touch configure
>   (5) make
> 
> Watch configure and dtc build running in parallel.
> I think the added Makefile dependency breaks it.
> 
> Incremental fix (also pushed to queue/ui):
> 
> --- a/Makefile
> +++ b/Makefile
> @@ -35,8 +35,6 @@ endif
>  
>  .git-submodule-status: git-submodule-update config-host.mak
>  
> -Makefile: .git-submodule-status
> -
>  # Check that we're not trying to do an out-of-tree build from
>  # a tree that's been used for an in-tree build.
>  ifneq ($(realpath $(SRC_PATH)),$(realpath .))
> @@ -107,6 +105,7 @@ endif
>  GENERATED_FILES += $(TRACE_HEADERS)
>  GENERATED_FILES += $(TRACE_SOURCES)
>  GENERATED_FILES += $(BUILD_DIR)/trace-events-all
> +GENERATED_FILES += .git-submodule-status
>  
>  trace-group-name = $(shell dirname $1 | sed -e 's/[^a-zA-Z0-9]/_/g')

Yep, that looks to have fixed the races I was able to reproduce


Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|