All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stefan Weil <sw@weilnetz.de>
To: Gerd Hoffmann <kraxel@redhat.com>, qemu-devel@nongnu.org
Cc: Dave Airlie <airlied@redhat.com>, Anthony Liguori <aliguori@amazon.com>
Subject: Re: [Qemu-devel] [PATCH 01/42] ui/sdl2 : initial port to SDL 2.0 (v2.0)
Date: Mon, 16 Dec 2013 23:12:33 +0100	[thread overview]
Message-ID: <52AF7AD1.1070506@weilnetz.de> (raw)
In-Reply-To: <1387190958-19470-2-git-send-email-kraxel@redhat.com>

Am 16.12.2013 11:48, schrieb Gerd Hoffmann:
> From: Dave Airlie <airlied@redhat.com>
>
> I've ported the SDL1.2 code over, and rewritten it to use the SDL2 interface.
>
> The biggest changes were in the input handling, where SDL2 has done a major
> overhaul, and I've had to include a generated translation file to get from
> SDL2 codes back to qemu compatible ones. I'm still not sure how the keyboard
> layout code works in qemu, so there may be further work if someone can point
> me a test case that works with SDL1.2 and doesn't with SDL2.
>
> Some SDL env vars we used to set are no longer used by SDL2,
> Windows, OSX support is untested,
>
> I don't think we can link to SDL1.2 and SDL2 at the same time, so I felt
> using --with-sdlabi=2.0 to select the new code should be fine, like how
> gtk does it.
>
> v1.1: fix keys in text console
> v1.2: fix shutdown, cleanups a bit of code, support ARGB cursor
>
> v2.0: merge the SDL multihead patch into this, g_new the number of consoles
> needed, wrap DCL inside per-console structure.
>
> Signed-off-by: Dave Airlie <airlied@redhat.com>
> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
> ---
>  configure                    |  23 +-
>  ui/Makefile.objs             |   4 +-
>  ui/sdl.c                     |   3 +
>  ui/sdl2.c                    | 981 +++++++++++++++++++++++++++++++++++++++++++
>  ui/sdl2_scancode_translate.h | 260 ++++++++++++
>  ui/sdl_keysym.h              |   3 +-
>  6 files changed, 1267 insertions(+), 7 deletions(-)
>  create mode 100644 ui/sdl2.c
>  create mode 100644 ui/sdl2_scancode_translate.h
>
> diff --git a/configure b/configure
> index edfea95..88080cc 100755
> --- a/configure
> +++ b/configure
[...]
> @@ -1789,12 +1794,22 @@ fi
>  
>  # Look for sdl configuration program (pkg-config or sdl-config).  Try
>  # sdl-config even without cross prefix, and favour pkg-config over sdl-config.
> -if test "`basename $sdl_config`" != sdl-config && ! has ${sdl_config}; then
> -  sdl_config=sdl-config
> +
> +if test $sdlabi == "2.0"; then

Please replace '==' by a single '=' here. dash (and maybe other less
sophisticated shells) don't like '=='.

> +    sdl_config=$sdl2_config
> +    sdlname=sdl2
> +    sdlconfigname=sdl2_config
> +else
> +    sdlname=sdl
> +    sdlconfigname=sdl_config
> +fi
> +
> +if test "`basename $sdl_config`" != $sdlconfigname && ! has ${sdl_config}; then
> +  sdl_config=$sdlconfigname
>  fi
>  
> -if $pkg_config sdl --exists; then
> -  sdlconfig="$pkg_config sdl"
> +if $pkg_config $sdlname --exists; then
> +  sdlconfig="$pkg_config $sdlname"
>    _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`
>  elif has ${sdl_config}; then
>    sdlconfig="$sdl_config"
[...]


I know that sdl2.c is based on sdl.c which was coded before the
introduction of the current coding rules, but would you mind if I send a
follow-up patch which fixes the warnings from checkpatch.pl for sdl2.c?
Tools like astyle can do this automatically, and the result is pretty good.

Some of the other patches don't include a Signed-off-by, so those
patches are only ready for local testing.

I was very curious to get test results here in my environment because of
a strange effect which I had noticed recently: booting a Linux system
(Tiny Core Linux) with SDL 1.2 (1:06) takes twice as long as with GTK
(0:33) or curses (0:29). The test was run on a remote Linux x86_64
server (so X display output is slower than normal). The huge difference
is not caused by more activity but simply by delays were the QEMU
process is waiting.

I hoped that SDL 2.0 might do a better job but was disappointed: I had
to abort the test after 10 minutes, the Linux boot made progress, but
very slowly and with lots of timeout errors.

Regards
Stefan

Regards
Stefan

  reply	other threads:[~2013-12-16 22:13 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-16 10:48 [Qemu-devel] [PATCH 00/42] rework input handling, sdl2 support Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 01/42] ui/sdl2 : initial port to SDL 2.0 (v2.0) Gerd Hoffmann
2013-12-16 22:12   ` Stefan Weil [this message]
2013-12-16 22:18     ` Dave Airlie
2013-12-17 11:16     ` Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 02/42] sdl2: baum build fix Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 03/42] sdl2: remove text console logic Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 04/42] console: export QemuConsole index, width, height Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 05/42] input: rename file to legacy Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 06/42] input: qapi: define event types Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 07/42] input: qapi: add unmapped key Gerd Hoffmann
2013-12-17 21:06   ` Eric Blake
2013-12-16 10:48 ` [Qemu-devel] [PATCH 08/42] input: qapi: add pause key Gerd Hoffmann
2013-12-17 21:06   ` Eric Blake
2013-12-16 10:48 ` [Qemu-devel] [PATCH 09/42] input: add core bits of the new input layer Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 10/42] input: keyboard: add helper functions to core Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 11/42] input: keyboard: switch legacy handlers to new core Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 12/42] input: keyboard: switch qmp_send_key() " Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 13/42] input: keyboard: switch gtk ui " Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 14/42] input: keyboard: switch sdl " Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 15/42] sdl2: switch keyboard handling " Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 16/42] input: keyboard: switch vnc ui " Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 17/42] input: keyboard: switch spice " Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 18/42] input: keyboard: switch curses " Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 19/42] input: mouse: add helpers functions to core Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 20/42] input: mouse: add graphic_rotate support Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 21/42] input: mouse: add qemu_input_is_absolute() Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 22/42] input: mouse: switch legacy handlers to new core Gerd Hoffmann
2013-12-16 10:48 ` [Qemu-devel] [PATCH 23/42] input: mouse: switch gtk ui " Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 24/42] input: mouse: switch sdl " Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 25/42] sdl2: switch mouse handling " Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 26/42] input: mouse: switch vnc ui " Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 27/42] input: mouse: switch spice " Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 28/42] input: mouse: switch monitor " Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 29/42] input: keyboard: switch cocoa ui to new core [untested] Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 30/42] input: mouse: " Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 31/42] input: trace events Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 32/42] input-legacy: remove kbd_put_keycode Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 33/42] input-legacy: remove kbd_mouse_has_absolute Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 34/42] input-legacy: remove kbd_mouse_is_absolute Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 35/42] input-legacy: remove kbd_mouse_event Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 36/42] input: move mouse mode notifier to new core Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 37/42] input: add input_mouse_mode tracepoint Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 38/42] sdl2: simplify keymap handling Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 39/42] sdl2: codestyle fixups Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 40/42] input: move qmp_query_mice to new core Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 41/42] input: move do_mouse_set " Gerd Hoffmann
2013-12-16 10:49 ` [Qemu-devel] [PATCH 42/42] input: remove index_from_keycode (no users) Gerd Hoffmann
  -- strict thread matches above, loose matches on Subject: below --
2014-01-28  9:56 [Qemu-devel] [PULL 00/42] rework input handling, sdl2 support Gerd Hoffmann
2014-01-28  9:56 ` [Qemu-devel] [PATCH 01/42] ui/sdl2 : initial port to SDL 2.0 (v2.0) Gerd Hoffmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52AF7AD1.1070506@weilnetz.de \
    --to=sw@weilnetz.de \
    --cc=airlied@redhat.com \
    --cc=aliguori@amazon.com \
    --cc=kraxel@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.