[Qemu-devel] [RFC PATCH] tcg: add ability to dump /tmp/perf-.map files

2014-03-27 Thread alex . bennee
From: Alex Bennée This allows the perf tool to map samples to each individual translation block. This could be expanded for user space but currently it gives enough information to find any hotblocks by other means. --- qemu-options.hx | 10 ++ tcg/tcg.c | 21 +

[Qemu-devel] [RFC PATCH 3/4] qemu-log: new option -dfilter to limit output

2014-03-26 Thread alex . bennee
From: Alex Bennée When debugging big programs or system emulation sometimes you want both the verbosity of cpu,exec et all but don't want to generate lots of logs for unneeded stuff. This patch adds a new option -dfilter which allows you to specify interesting address ranges in the form: -dfil

[Qemu-devel] [RFC PATCH 1/4] qemu-log: correct help text for -d cpu

2014-03-26 Thread alex . bennee
From: Alex Bennée This doesn't just dump CPU state on translation but on every block entrance. Signed-off-by: Alex Bennée diff --git a/qemu-log.c b/qemu-log.c index 797f2af..35bbb56 100644 --- a/qemu-log.c +++ b/qemu-log.c @@ -105,7 +105,7 @@ const QEMULogItem qemu_log_items[] = { { CPU_L

[Qemu-devel] [RFC PATCH 2/4] qemu-log: support simple pid substitution in logfile

2014-03-26 Thread alex . bennee
From: Alex Bennée When debugging stuff that occurs over several forks it would be useful not to keep overwriting the one logfile you've set-up. This allows a simple %d to be included once in the logfile parameter which is substituted with getpid(). Signed-off-by: Alex Bennée diff --git a/qemu-

[Qemu-devel] [RFC PATCH 4/4] qemu-log: make in_asm, out_asm and op_opt understand dfilter

2014-03-26 Thread alex . bennee
From: Alex Bennée This ensures the code generation debug code will honour -dfilter if set. diff --git a/cpu-exec.c b/cpu-exec.c index 0914d3c..9aa3f3f 100644 --- a/cpu-exec.c +++ b/cpu-exec.c @@ -610,7 +610,7 @@ int cpu_exec(CPUArchState *env) next_tb = 0;

[Qemu-devel] [RFC PATCH 0/4] qemu-log: various fixes and enhancements

2014-03-26 Thread alex . bennee
From: Alex Bennée Hi, While working on aarch64 stuff I've made the following changes in my local tree to help me debug. The first is a simple documentation fix. The second is very helpful when your debugging missing instructions while several shells deep in a build system. The final two I've rec

[Qemu-devel] [PATCH] trace: teach lttng backend to use format strings

2014-03-24 Thread alex . bennee
From: Alex Bennée This makes the UST backend pay attention to the format string arguments that are defined when defining payload data. With this you can now ensure integers are reported in hex mode if you want. Signed-off-by: Alex Bennée --- v2 - remove silly debug statements --- scripts/t

[Qemu-devel] [PATCH] trace: teach lttng backend to use format strings

2014-03-24 Thread alex . bennee
From: Alex Bennée This makes the UST backend pay attention to the format string arguments that are defined when defining payload data. With this you can now ensure integers are reported in hex mode if you want. Signed-off-by: Alex Bennée --- scripts/tracetool/__init__.py| 13 +++--

[Qemu-devel] [PULL 2/4] .travis.yml: re-enable lttng user space trace test

2014-03-12 Thread alex . bennee
From: Alex Bennée This build was disabled while the lttng tracing was broken. Stefan has recently submitted a pull request with it re-enabled. Signed-off-by: Alex Bennée Reviewed-by: Stefan Hajnoczi diff --git a/.travis.yml b/.travis.yml index 286cf62..1d78421 100644 --- a/.travis.yml +++ b/.

[Qemu-devel] [RCF PATCH 1/2] tcg: add tcg_abort_dbg() for additional debug info

2014-03-12 Thread alex . bennee
From: Alex Bennée There are times the tcg aborts with a fatal but terse error which isn't overly helpful. This adds an alternative macro that can be used to show a little more helper information when an abort occurs. diff --git a/tcg/i386/tcg-target.c b/tcg/i386/tcg-target.c index f832282..1a6c5

[Qemu-devel] [PULL 1/4] .travis.yml: add a new build target with non-core devlibs

2014-03-12 Thread alex . bennee
From: Alex Bennée The current builds don't include all the features which are auto-detected and then disabled when the appropriate test packages don't exist. I've added another target that enables all known additional packages for increased coverage. I didn't add it to the core package list to re

[Qemu-devel] [PULL 4/4] .travis.yml: add IRC notifications for build failures

2014-03-12 Thread alex . bennee
From: Alex Bennée I'm trying to avoid spamming the IRC channel (not overly likely as builds take a while). So failure will always be reported but if the build continues to work then the IRC notifications will be quiet. Note any GitHub based repository with Travis enabled will use this notificati

[Qemu-devel] [PULL 0/4] Travis Updates

2014-03-12 Thread alex . bennee
From: Alex Bennée No changes from the original version posted except to add Stefan's reviewed-by tags. I thought it was worth submitting this before we froze for 2.0! The following changes since commit be813ef02d18ba58e1ff32f1706bcacb88f1f764: Merge remote-tracking branch 'remotes/mst/tags/fo

[Qemu-devel] [PULL 3/4] .travis.yml: trivial whitespace fixup

2014-03-12 Thread alex . bennee
From: Alex Bennée Purely cosmetic but satisfies my OCD. Signed-off-by: Alex Bennée Reviewed-by: Stefan Hajnoczi diff --git a/.travis.yml b/.travis.yml index 1d78421..0dbf2da 100644 --- a/.travis.yml +++ b/.travis.yml @@ -14,23 +14,23 @@ env: - GUI_PKGS="libgtk-3-dev libvte-2.90-dev libsd

[Qemu-devel] [RCF PATCH 2/2] tcg: add debug helpers tcg_debug_dump_i(32|64)

2014-03-12 Thread alex . bennee
From: Alex Benn??e The helpers are useful for debugging if you want to inspect interim values of tcg temp variables while executing TCG generated code. This is an alternative to tracing with logs or inspecting with GDB. The functions do take format strings but to prevent massive memory loss it w

[Qemu-devel] [RCF PATCH 0/2] Improving TCG debug output

2014-03-12 Thread alex . bennee
From: Alex Bennée Hi, These two patches have been sitting in my personal tree for a while and I thought it was worth soliciting feedback as to their wider usefulness. The first is simply an attempt to make tcg abort failures a little less terse. The second I found useful when I was debugging a

[Qemu-devel] [PULL 4/4] .travis.yml: add IRC notifications for build failures

2014-03-12 Thread alex . bennee
From: Alex Bennée I'm trying to avoid spamming the IRC channel (not overly likely as builds take a while). So failure will always be reported but if the build continues to work then the IRC notifications will be quiet. Note any GitHub based repository with Travis enabled will use this notificati

[Qemu-devel] [PULL 2/4] .travis.yml: re-enable lttng user space trace test

2014-03-12 Thread alex . bennee
From: Alex Bennée This build was disabled while the lttng tracing was broken. Stefan has recently submitted a pull request with it re-enabled. Signed-off-by: Alex Bennée Reviewed-by: Stefan Hajnoczi diff --git a/.travis.yml b/.travis.yml index 286cf62..1d78421 100644 --- a/.travis.yml +++ b/.

[Qemu-devel] [PULL 3/4] .travis.yml: trivial whitespace fixup

2014-03-12 Thread alex . bennee
From: Alex Bennée Purely cosmetic but satisfies my OCD. Signed-off-by: Alex Bennée Reviewed-by: Stefan Hajnoczi diff --git a/.travis.yml b/.travis.yml index 1d78421..0dbf2da 100644 --- a/.travis.yml +++ b/.travis.yml @@ -14,23 +14,23 @@ env: - GUI_PKGS="libgtk-3-dev libvte-2.90-dev libsd

[Qemu-devel] [PULL 1/4] .travis.yml: add a new build target with non-core devlibs

2014-03-12 Thread alex . bennee
From: Alex Bennée The current builds don't include all the features which are auto-detected and then disabled when the appropriate test packages don't exist. I've added another target that enables all known additional packages for increased coverage. I didn't add it to the core package list to re

[Qemu-devel] [PULL 0/4] Travis Updates

2014-03-12 Thread alex . bennee
From: Alex Bennée No changes from the original version posted except to add Stefan's reviewed-by tags. I thought it was worth submitting this before we froze for 2.0! The following changes since commit be813ef02d18ba58e1ff32f1706bcacb88f1f764: Merge remote-tracking branch 'remotes/mst/tags/fo

[Qemu-devel] [RCF PATCH 1/2] tcg: add tcg_abort_dbg() for additional debug info

2014-03-12 Thread alex . bennee
From: Alex Bennée There are times the tcg aborts with a fatal but terse error which isn't overly helpful. This adds an alternative macro that can be used to show a little more helper information when an abort occurs. diff --git a/tcg/i386/tcg-target.c b/tcg/i386/tcg-target.c index f832282..1a6c5

[Qemu-devel] [RCF PATCH 2/2] tcg: add debug helpers tcg_debug_dump_i(32|64)

2014-03-12 Thread alex . bennee
From: Alex Benn??e The helpers are useful for debugging if you want to inspect interim values of tcg temp variables while executing TCG generated code. This is an alternative to tracing with logs or inspecting with GDB. The functions do take format strings but to prevent massive memory loss it w

[Qemu-devel] [RCF PATCH 0/2] Improving TCG debug output

2014-03-12 Thread alex . bennee
From: Alex Bennée Hi, These two patches have been sitting in my personal tree for a while and I thought it was worth soliciting feedback as to their wider usefulness. The first is simply an attempt to make tcg abort failures a little less terse. The second I found useful when I was debugging a

[Qemu-devel] [PATCH v1 1/4] .travis.yml: add a new build target with non-core devlibs

2014-02-20 Thread alex . bennee
From: Alex Bennée The current builds don't include all the features which are auto-detected and then disabled when the appropriate test packages don't exist. I've added another target that enables all known additional packages for increased coverage. I didn't add it to the core package list to re

[Qemu-devel] [PATCH v1 0/4] Updates for Travis testing

2014-02-20 Thread alex . bennee
From: Alex Bennée Hi, I've now enabled Travis testing on the "official" QEMU GitHub mirror. Of the following patches two expand the testing, one is a cosmetic whitespace fix and the final one enabled IRC notification when the build fails. This is potentially controversial but on balance I think

[Qemu-devel] [PATCH v1 3/4] .travis.yml: trivial whitespace fixup

2014-02-20 Thread alex . bennee
From: Alex Bennée Purely cosmetic but satisfies my OCD. Signed-off-by: Alex Bennée diff --git a/.travis.yml b/.travis.yml index 1d78421..0dbf2da 100644 --- a/.travis.yml +++ b/.travis.yml @@ -14,23 +14,23 @@ env: - GUI_PKGS="libgtk-3-dev libvte-2.90-dev libsdl1.2-dev libpng12-dev libpixm

[Qemu-devel] [PATCH v1 4/4] .travis.yml: add IRC notifications for build failures

2014-02-20 Thread alex . bennee
From: Alex Bennée I'm trying to avoid spamming the IRC channel (not overly likely as builds take a while). So failure will always be reported but if the build continues to work then the IRC notifications will be quiet. Note any GitHub based repository with Travis enabled will use this notificati

[Qemu-devel] [PATCH v1 2/4] .travis.yml: re-enable lttng user space trace test

2014-02-20 Thread alex . bennee
From: Alex Bennée This build was disabled while the lttng tracing was broken. Stefan has recently submitted a pull request with it re-enabled. Signed-off-by: Alex Bennée diff --git a/.travis.yml b/.travis.yml index 286cf62..1d78421 100644 --- a/.travis.yml +++ b/.travis.yml @@ -69,8 +69,7 @@ m

[Qemu-devel] [PATCH 2/2] scripts/qemu-binfmt-check.py: a binfmt checker

2014-01-08 Thread alex . bennee
script +# +# Copyright 2014 Linaro +# +# Authors: +# Alex Bennee +# +# This work is licensed under the terms of the GNU GPL, version 2. See +# the COPYING file in the top-level directory. + +import os +import re +import binascii + +re_int = re.compile(r"interpreter (.+)$") +re_off = re

[Qemu-devel] [PATCH 1/2] scripts/qemu-binfmt-conf.sh: re-factor and clean-up

2014-01-08 Thread alex . bennee
From: Alex Bennée I was looking to set-up for development but found the script made some hard-coded assumptions. It doesn't seem the script is used by the distros but if it had a little more love maybe it would be ;-) * Add usage() instructions * Move all registering to a single function * Check

[Qemu-devel] [RFC PATCH 0/0] binfmt script patches

2014-01-08 Thread alex . bennee
Hi, While working on my aarch64 work I found setting up binfmt was more of a pain than it could have been. Specifically: * hard-coded for /usr/local installs * no help * no error checking Tellingly the script doesn't seem to be used by the distros who have rolled their own binfmt_misc stuff arou

[Qemu-devel] [PATCH v6] Add .travis.yml metadata for CI

2013-11-06 Thread alex . bennee
From: Alex Bennée Hi, I think this patch is ready to be merged via trivial. While I was testing it last night it caught yet another regression (register_subpage: Assertion, since fixed) so I think it proves it's worth with that alone. Since v5 - Forced the python to 2.4 (our current basel

[Qemu-devel] [PATCH v6] .travis.yml: basic compile and check recipes

2013-11-06 Thread alex . bennee
From: Alex Bennée This adds a build matrix definition for travis-ci.org continuous integration service. It is usable on any public repository hosted on GitHub. Once you have created an account signed into Travis you can enable it on selected projects via travis-ci.org/profile. Alternatively you c

[Qemu-devel] [PATCH v4] integrator: fix Linux boot failure by emulating dbg region

2013-10-22 Thread alex . bennee
From: Alex Bennée Commit 9b8c69243 (since reverted) broke the ability to boot the kernel as the value returned by unassigned_mem_read returned non-zero and left the kernel looping forever waiting for it to change (see integrator_led_set in the kernel code). Relying on a varying implementation de

[Qemu-devel] [PATCH v3] integrator: fix Linux boot failure by emulating dbg region

2013-10-18 Thread alex . bennee
From: Alex Bennée Commit 9b8c69243 (since reverted) broke the ability to boot the kernel as the value returned by unassigned_mem_read returned non-zero and left the kernel looping forever waiting for it to change (see integrator_led_set in the kernel code). Relying on a varying implementation de

[Qemu-devel] [PATCH v3 0/1] integrator: fix Linux boot failure

2013-10-18 Thread alex . bennee
>From Alex Bennée # This line is ignored. Hi, I finally got a chance to follow up on the review comments from Peter and Andreas. Changes for v3: * Moved into hw/arm/integrator_debug.c * Expanded QOM symbol to INTEGRATOR_DEBUG, moved to header * Use __func__, HWADDR_PRIx and PRIu64 for debug out

[Qemu-devel] [PATCH] .travis.yml: basic compile and check recipes

2013-10-15 Thread alex . bennee
From: Alex Bennée This adds a build matrix definition for travis-ci.org continuous integration service. It is usable on any public repository hosted on GitHub. Once you have created an account signed into Travis you can enable it on selected projects via travis-ci.org/profile. Alternatively you c

[Qemu-devel] [PULL v5 0/0] .travis.yml: basic compile and check recipies

2013-10-15 Thread alex . bennee
Hi Anthony, Here is my first pull request to add a simple .travis.yml profile to the code base. I'm hoping to expand the range of testing once this is merged (the tcg code gen tests are next on my list). However as it stands this already catches build failures and regressions. Since v4: - dropp

[Qemu-devel] [PATCH v4 0/0] .travis.yml: basic compile and check recipies and minor fixes

2013-10-03 Thread alex . bennee
Hi, While testing after Peter's review comments Travis detected a regression in the tree due to the updating of SeaBIOS (also found by a bunch of others in the following days) which I take to be a good indication of the usefulness of these tests. v4: - split debug build for with/without TCG int

[Qemu-devel] [PATCH 1/2] .travis.yml: basic compile and check recipes

2013-10-03 Thread alex . bennee
From: Alex Bennée This adds a build matrix definition for travis-ci.org continuous integration service. It is usable on any public repository hosted on GitHub. Once you have created an account signed into Travis you can enable it on selected projects via travis-ci.org/profile. Alternatively you c

[Qemu-devel] [PATCH 2/2] .gitmodules: use upstream SeaBIOS repo to fix submodule init

2013-10-03 Thread alex . bennee
From: Alex Bennée Currently master is broken as the wanted commit doesn't exist in qemu's mirror of SeaBIOS. --- .gitmodules | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitmodules b/.gitmodules index d7e3f3c..d5d5417 100644 --- a/.gitmodules +++ b/.gitmodules @@ -3,7 +3,

[Qemu-devel] [PATCH v3 0/0] .travis.yml: basic compile and check recipies

2013-09-24 Thread alex . bennee
Assuming there are no further comments from this submission I shall likely make my next posting a PULL request. v3 - re-based on current origin/master - squashed all .travis commits and re-worded commit - added clang builds - disabled "make check" for ftrace back-end - fixed broken build

[Qemu-devel] [PATCH] .travis.yml: basic compile and check recipes

2013-09-24 Thread alex . bennee
From: Alex Bennée This adds a build matrix definition for travis-ci.org continuous integration service. It is usable on any public repository hosted on GitHub. Once you have created an account signed into Travis you can enable it on selected projects via travis-ci.org/profile. Alternatively you c

[Qemu-devel] [PATCH 3/3] block/stream.c: ensure copy always set

2013-09-23 Thread alex . bennee
From: Alex Bennée This only showed up when compiling with --enable-trace-backend=stderr|ftrace at which point the compiler complains with the following: block/stream.c: In function ‘stream_run’: block/stream.c:141:22: error: ‘copy’ may be used uninitialized in this function [-Werror=uninitializ

[Qemu-devel] [PATCH 2/3] .travis.yml: greatly expand the coverage + more builds

2013-09-23 Thread alex . bennee
From: Alex Bennée I've made the definitions more modular to allow for greater build control in each part of the matrix. I've confined the additional stuff to x86/x86_64 for convenience. --- .travis.yml | 38 +- 1 file changed, 37 insertions(+), 1 deletion(-)

[Qemu-devel] [PATCH 1/3] .travis.yml: basic compile and check recipes

2013-09-23 Thread alex . bennee
From: Alex Bennée While QEMU already has various continuous integration set-ups in buildbot and commercial Jenkins setups there is some value in supporting travis-ci as well. It is well integrated into GitHub work flow and will trigger on all branch pushes and pull requests. This makes it easier

[Qemu-devel] [PATCH v2 0/0] .travis and minor compile fixes

2013-09-23 Thread alex . bennee
Hi, I've updated the .travis.yml following feedback from Stefan to greatly increase the number of compiles it does. In the process: * Disabled ust backend (horribly broken) * Found gov/gprof builds don't enforce --disable-pie * Fixed a minor compiler warning when stderr/ftrace back-end enabled I

[Qemu-devel] [PATCH v2 0/0] integrator: fix Linux boot failure by emulating dbg

2013-09-18 Thread alex . bennee
Hi, I mistakenly appended this to the previous patch revision. I'm now sending for further review. Since v1: - Updated with Peter Maydell's review comments. -- Alex Bennée

[Qemu-devel] [PATCH v2 1/1] integrator: fix Linux boot failure by emulating dbg

2013-09-18 Thread alex . bennee
From: Alex Bennée Commit 9b8c69243 broke the ability to boot the kernel as the value returned by unassigned_mem_read returned non-zero and left the kernel looping forever waiting for it to change (see integrator_led_set in the kernel code). Relying on a varying implementation detail is incorrect

[Qemu-devel] [PATCH v2 1/1] integrator: fix Linux boot failure by emulating dbg

2013-09-18 Thread alex . bennee
From: Alex Bennée Commit 9b8c69243 broke the ability to boot the kernel as the value returned by unassigned_mem_read returned non-zero and left the kernel looping forever waiting for it to change (see integrator_led_set in the kernel code). Relying on a varying implementation detail is incorrect

[Qemu-devel] [PATCH v2 0/0] integrator: fix Linux boot failure by emulating dbg

2013-09-16 Thread alex . bennee
Hi, I've applied the review comments from Peter. Alex.

[Qemu-devel] [PATCH v2 1/1] integrator: fix Linux boot failure by emulating dbg

2013-09-16 Thread alex . bennee
From: Alex Bennée Commit 9b8c69243 broke the ability to boot the kernel as the value returned by unassigned_mem_read returned non-zero and left the kernel looping forever waiting for it to change (see integrator_led_set in the kernel code). Relying on a varying implementation detail is incorrect

[Qemu-devel] [PATCH] .travis.yml: basic compile and check recipes

2013-09-13 Thread alex . bennee
From: Alex Bennée While QEMU already has various continuous integration set-ups in buildbot and commercial Jenkins setups there is some value in supporting travis-ci as well. It is well integrated into GitHub work flow and will trigger on all branch pushes and pull requests. This makes it easier

[Qemu-devel] [PATCH] integrator: fix Linux boot failure by emulating dbg

2013-09-13 Thread alex . bennee
From: Alex Benn??e Commit 9b8c69243 broke the ability to boot the kernel as the value returned by unassigned_mem_read returned non-zero and left the kernel looping forever waiting for it to change (see integrator_led_set in the kernel code). Relying on a varying implementation detail is incorrec