Testing and gitdm updates
- add some more individual contributors - include SDL2 in centos images - skip checkpatch check when no commits found - use random port for gdb reverse debugging - make gitlab use it's own mirrors to clone - fix detection of make -nqp -----BEGIN PGP SIGNATURE----- iQEzBAABCgAdFiEEZoWumedRZ7yvyN81+9DbCVqeKkQFAl+X7qsACgkQ+9DbCVqe KkSpmAf/To0P/c/B6qMEvNfCiWtn/Nuypau8W60q/ZvE/J4IzFarwa5uc7COmyNR xjvxdoeKp17ykFdwBzGhiKeO83SO8DUH1JmzA6STs4RH5VSFGYycuE0cQ9KugrpE 4yOruOdEgAn2+35oYalE9u6/EugdIVBZsjMS/ofsgR9ysYPuju4Q9by6DEK6ArW0 AmdwJzKAYw75v+D2wKNq9coSWvbqWClsV6j0gaKgn+OQYqWo25T/DzWdr1okCRET TvB0HZLCDQHz9Friq5PtBtVsmNbZaL+CM9RRekFBGUFEvZE8i4VEDHFfzXsN3U0w VA5yhlBJzl1/prBQe1qRbrZQL4x58w== =Bnt1 -----END PGP SIGNATURE----- Merge remote-tracking branch 'remotes/stsquad/tags/pull-testing-and-misc-271020-1' into staging Testing and gitdm updates - add some more individual contributors - include SDL2 in centos images - skip checkpatch check when no commits found - use random port for gdb reverse debugging - make gitlab use it's own mirrors to clone - fix detection of make -nqp # gpg: Signature made Tue 27 Oct 2020 09:55:55 GMT # gpg: using RSA key 6685AE99E75167BCAFC8DF35FBD0DB095A9E2A44 # gpg: Good signature from "Alex Bennée (Master Work Key) <alex.bennee@linaro.org>" [full] # Primary key fingerprint: 6685 AE99 E751 67BC AFC8 DF35 FBD0 DB09 5A9E 2A44 * remotes/stsquad/tags/pull-testing-and-misc-271020-1: makefile: handle -n / -k / -q correctly gitlab-ci: Clone from GitLab itself tests/acceptance: pick a random gdb port for reverse debugging scripts: fix error from checkpatch.pl when no commits are found gitlab: skip checkpatch.pl checks if no commit delta on branch tests/docker/dockerfiles/centos: Use SDL2 instead of SDL1 contrib/gitdm: Add more individual contributors Adding ani's email as an individual contributor Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
commit
a5e7fb4d20
@ -33,8 +33,16 @@ ancestor = subprocess.check_output(["git", "merge-base",
|
|||||||
|
|
||||||
ancestor = ancestor.strip()
|
ancestor = ancestor.strip()
|
||||||
|
|
||||||
|
log = subprocess.check_output(["git", "log", "--format=%H %s",
|
||||||
|
ancestor + "..."],
|
||||||
|
universal_newlines=True)
|
||||||
|
|
||||||
subprocess.check_call(["git", "remote", "rm", "check-patch"])
|
subprocess.check_call(["git", "remote", "rm", "check-patch"])
|
||||||
|
|
||||||
|
if log == "":
|
||||||
|
print("\nNo commits since %s, skipping checks\n" % ancestor)
|
||||||
|
sys.exit(0)
|
||||||
|
|
||||||
errors = False
|
errors = False
|
||||||
|
|
||||||
print("\nChecking all commits since %s...\n" % ancestor)
|
print("\nChecking all commits since %s...\n" % ancestor)
|
||||||
|
@ -24,6 +24,7 @@ include:
|
|||||||
image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
|
image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
|
||||||
before_script:
|
before_script:
|
||||||
- JOBS=$(expr $(nproc) + 1)
|
- JOBS=$(expr $(nproc) + 1)
|
||||||
|
- sed -i s,git.qemu.org/git,gitlab.com/qemu-project, .gitmodules
|
||||||
script:
|
script:
|
||||||
- mkdir build
|
- mkdir build
|
||||||
- cd build
|
- cd build
|
||||||
|
10
Makefile
10
Makefile
@ -146,9 +146,12 @@ endif
|
|||||||
# 4. Rules to bridge to other makefiles
|
# 4. Rules to bridge to other makefiles
|
||||||
|
|
||||||
ifneq ($(NINJA),)
|
ifneq ($(NINJA),)
|
||||||
NINJAFLAGS = $(if $V,-v,) \
|
MAKE.n = $(findstring n,$(firstword $(MAKEFLAGS)))
|
||||||
|
MAKE.k = $(findstring k,$(firstword $(MAKEFLAGS)))
|
||||||
|
MAKE.q = $(findstring q,$(firstword $(MAKEFLAGS)))
|
||||||
|
MAKE.nq = $(if $(word 2, $(MAKE.n) $(MAKE.q)),nq)
|
||||||
|
NINJAFLAGS = $(if $V,-v) $(if $(MAKE.n), -n) $(if $(MAKE.k), -k0) \
|
||||||
$(filter-out -j, $(lastword -j1 $(filter -l% -j%, $(MAKEFLAGS)))) \
|
$(filter-out -j, $(lastword -j1 $(filter -l% -j%, $(MAKEFLAGS)))) \
|
||||||
$(subst -k, -k0, $(filter -n -k,$(MAKEFLAGS)))
|
|
||||||
|
|
||||||
ninja-cmd-goals = $(or $(MAKECMDGOALS), all)
|
ninja-cmd-goals = $(or $(MAKECMDGOALS), all)
|
||||||
ninja-cmd-goals += $(foreach t, $(.tests), $(.test.deps.$t))
|
ninja-cmd-goals += $(foreach t, $(.tests), $(.test.deps.$t))
|
||||||
@ -165,7 +168,8 @@ $(ninja-targets): run-ninja
|
|||||||
# --output-sync line.
|
# --output-sync line.
|
||||||
run-ninja: config-host.mak
|
run-ninja: config-host.mak
|
||||||
ifneq ($(filter $(ninja-targets), $(ninja-cmd-goals)),)
|
ifneq ($(filter $(ninja-targets), $(ninja-cmd-goals)),)
|
||||||
+@$(NINJA) $(NINJAFLAGS) $(sort $(filter $(ninja-targets), $(ninja-cmd-goals))) | cat
|
+$(quiet-@)$(if $(MAKE.nq),@:, $(NINJA) \
|
||||||
|
$(NINJAFLAGS) $(sort $(filter $(ninja-targets), $(ninja-cmd-goals))) | cat)
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -23,3 +23,9 @@ vr_qemu@t-online.de
|
|||||||
nieklinnenbank@gmail.com
|
nieklinnenbank@gmail.com
|
||||||
devnexen@gmail.com
|
devnexen@gmail.com
|
||||||
pauldzim@gmail.com
|
pauldzim@gmail.com
|
||||||
|
ani@anisinha.ca
|
||||||
|
sundeep.lkml@gmail.com
|
||||||
|
mrolnik@gmail.com
|
||||||
|
huth@tuxfamily.org
|
||||||
|
jhogan@kernel.org
|
||||||
|
atar4qemu@gmail.com
|
||||||
|
@ -392,7 +392,7 @@ if ($chk_branch) {
|
|||||||
|
|
||||||
close $HASH;
|
close $HASH;
|
||||||
|
|
||||||
die "$P: no revisions returned for revlist '$chk_branch'\n"
|
die "$P: no revisions returned for revlist '$ARGV[0]'\n"
|
||||||
unless @patches;
|
unless @patches;
|
||||||
|
|
||||||
my $i = 1;
|
my $i = 1;
|
||||||
|
@ -14,6 +14,7 @@ from avocado import skipIf
|
|||||||
from avocado_qemu import BUILD_DIR
|
from avocado_qemu import BUILD_DIR
|
||||||
from avocado.utils import gdb
|
from avocado.utils import gdb
|
||||||
from avocado.utils import process
|
from avocado.utils import process
|
||||||
|
from avocado.utils.network.ports import find_free_port
|
||||||
from avocado.utils.path import find_command
|
from avocado.utils.path import find_command
|
||||||
from boot_linux_console import LinuxKernelTest
|
from boot_linux_console import LinuxKernelTest
|
||||||
|
|
||||||
@ -33,7 +34,7 @@ class ReverseDebugging(LinuxKernelTest):
|
|||||||
STEPS = 10
|
STEPS = 10
|
||||||
endian_is_le = True
|
endian_is_le = True
|
||||||
|
|
||||||
def run_vm(self, record, shift, args, replay_path, image_path):
|
def run_vm(self, record, shift, args, replay_path, image_path, port):
|
||||||
logger = logging.getLogger('replay')
|
logger = logging.getLogger('replay')
|
||||||
vm = self.get_vm()
|
vm = self.get_vm()
|
||||||
vm.set_console()
|
vm.set_console()
|
||||||
@ -43,7 +44,7 @@ class ReverseDebugging(LinuxKernelTest):
|
|||||||
else:
|
else:
|
||||||
logger.info('replaying the execution...')
|
logger.info('replaying the execution...')
|
||||||
mode = 'replay'
|
mode = 'replay'
|
||||||
vm.add_args('-s', '-S')
|
vm.add_args('-gdb', 'tcp::%d' % port, '-S')
|
||||||
vm.add_args('-icount', 'shift=%s,rr=%s,rrfile=%s,rrsnapshot=init' %
|
vm.add_args('-icount', 'shift=%s,rr=%s,rrfile=%s,rrsnapshot=init' %
|
||||||
(shift, mode, replay_path),
|
(shift, mode, replay_path),
|
||||||
'-net', 'none')
|
'-net', 'none')
|
||||||
@ -109,9 +110,10 @@ class ReverseDebugging(LinuxKernelTest):
|
|||||||
process.run(cmd)
|
process.run(cmd)
|
||||||
|
|
||||||
replay_path = os.path.join(self.workdir, 'replay.bin')
|
replay_path = os.path.join(self.workdir, 'replay.bin')
|
||||||
|
port = find_free_port()
|
||||||
|
|
||||||
# record the log
|
# record the log
|
||||||
vm = self.run_vm(True, shift, args, replay_path, image_path)
|
vm = self.run_vm(True, shift, args, replay_path, image_path, port)
|
||||||
while self.vm_get_icount(vm) <= self.STEPS:
|
while self.vm_get_icount(vm) <= self.STEPS:
|
||||||
pass
|
pass
|
||||||
last_icount = self.vm_get_icount(vm)
|
last_icount = self.vm_get_icount(vm)
|
||||||
@ -120,9 +122,9 @@ class ReverseDebugging(LinuxKernelTest):
|
|||||||
logger.info("recorded log with %s+ steps" % last_icount)
|
logger.info("recorded log with %s+ steps" % last_icount)
|
||||||
|
|
||||||
# replay and run debug commands
|
# replay and run debug commands
|
||||||
vm = self.run_vm(False, shift, args, replay_path, image_path)
|
vm = self.run_vm(False, shift, args, replay_path, image_path, port)
|
||||||
logger.info('connecting to gdbstub')
|
logger.info('connecting to gdbstub')
|
||||||
g = gdb.GDBRemote('127.0.0.1', 1234, False, False)
|
g = gdb.GDBRemote('127.0.0.1', port, False, False)
|
||||||
g.connect()
|
g.connect()
|
||||||
r = g.cmd(b'qSupported')
|
r = g.cmd(b'qSupported')
|
||||||
if b'qXfer:features:read+' in r:
|
if b'qXfer:features:read+' in r:
|
||||||
|
@ -31,7 +31,7 @@ ENV PACKAGES \
|
|||||||
perl-Test-Harness \
|
perl-Test-Harness \
|
||||||
pixman-devel \
|
pixman-devel \
|
||||||
python3 \
|
python3 \
|
||||||
SDL-devel \
|
SDL2-devel \
|
||||||
spice-glib-devel \
|
spice-glib-devel \
|
||||||
spice-server-devel \
|
spice-server-devel \
|
||||||
tar \
|
tar \
|
||||||
|
@ -2,7 +2,7 @@ FROM centos:8.1.1911
|
|||||||
|
|
||||||
RUN dnf -y update
|
RUN dnf -y update
|
||||||
ENV PACKAGES \
|
ENV PACKAGES \
|
||||||
SDL-devel \
|
SDL2-devel \
|
||||||
bzip2 \
|
bzip2 \
|
||||||
bzip2-devel \
|
bzip2-devel \
|
||||||
dbus-daemon \
|
dbus-daemon \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user