a010bdbe71
gdbstub: extend GByteArray to read register helpers
...
Instead of passing a pointer to memory now just extend the GByteArray
to all the read register helpers. They can then safely append their
data through the normal way. We don't bother with this abstraction for
write registers as we have already ensured the buffer being copied
from is the correct size.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Acked-by: David Gibson <david@gibson.dropbear.id.au >
Reviewed-by: Damien Hedde <damien.hedde@greensocs.com >
Message-Id: <20200316172155.971-15-alex.bennee@linaro.org >
2020-03-17 17:38:38 +00:00
ef0a6249a8
cpu: Introduce cpu_class_set_parent_reset()
...
Similarly to what we already do with qdev, use a helper to overload the
reset QOM methods of the parent in children classes, for clarity.
Signed-off-by: Greg Kurz <groug@kaod.org >
Reviewed-by: David Gibson <david@gibson.dropbear.id.au >
Reviewed-by: Alistair Francis <alistair.francis@wdc.com >
Reviewed-by: Cornelia Huck <cohuck@redhat.com >
Acked-by: David Hildenbrand <david@redhat.com >
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com >
Message-Id: <157650847239.354886.2782881118916307978.stgit@bahia.lan >
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com >
2020-01-24 20:59:06 +01:00
894d354fd8
Remove unassigned_access CPU hook
...
All targets have now migrated away from the old unassigned_access
hook to the new do_transaction_failed hook. This means we can remove
the core-code infrastructure for that hook and the code that calls it.
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com >
Reviewed-by: Alistair Francis <alistair.francis@wdc.com >
Message-id: 20191108173732.11816-1-peter.maydell@linaro.org
2019-11-11 13:44:16 +00:00
54cb65d858
plugin: add core code
...
Signed-off-by: Emilio G. Cota <cota@braap.org >
[AJB: moved directory and merged various fixes]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2019-10-28 15:12:38 +00:00
cfbc3c6083
cpu: introduce cpu_in_exclusive_context()
...
Suggested-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Signed-off-by: Emilio G. Cota <cota@braap.org >
[AJB: moved inside start/end_exclusive fns + cleanup]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
2019-10-28 15:12:38 +00:00
b56668bbe1
cputlb: Remove cpu->mem_io_vaddr
...
With the merge of notdirty handling into store_helper,
the last user of cpu->mem_io_vaddr was removed.
Reviewed-by: Alex Bennée <alex.bennee@linaro.org >
Reviewed-by: David Hildenbrand <david@redhat.com >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2019-09-25 10:56:28 -07:00
56ad8b007d
exec: Factor out cpu_watchpoint_address_matches
...
We want to move the check for watchpoints from
memory_region_section_get_iotlb to tlb_set_page_with_attrs.
Isolate the loop over watchpoints to an exported function.
Rename the existing cpu_watchpoint_address_matches to
watchpoint_address_matches, since it doesn't actually
have a cpu argument.
Reviewed-by: David Hildenbrand <david@redhat.com >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2019-09-03 08:30:39 -07:00
0026348b48
exec: Factor out core logic of check_watchpoint()
...
We want to perform the same checks in probe_write() to trigger a cpu
exit before doing any modifications. We'll have to pass a PC.
Signed-off-by: David Hildenbrand <david@redhat.com >
Reviewed-by: Richard Henderson <richard.henderson@linaro.org >
Message-Id: <20190823100741.9621-9-david@redhat.com >
[rth: Use vaddr for len, like other watchpoint functions;
Move user-only stub to static inline.]
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2019-09-03 08:30:39 -07:00
74841f044e
exec: Move user-only watchpoint stubs inline
...
Let the user-only watchpoint stubs resolve to empty inline functions.
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com >
Reviewed-by: David Hildenbrand <david@redhat.com >
Signed-off-by: Richard Henderson <richard.henderson@linaro.org >
2019-09-03 08:30:39 -07:00
f3b8f18ebf
Merge remote-tracking branch 'remotes/armbru/tags/pull-monitor-2019-08-21' into staging
...
Monitor patches for 2019-08-21
# gpg: Signature made Wed 21 Aug 2019 16:35:07 BST
# gpg: using RSA key 354BC8B3D7EB2A6B68674E5F3870B400EB918653
# gpg: issuer "armbru@redhat.com "
# gpg: Good signature from "Markus Armbruster <armbru@redhat.com >" [full]
# gpg: aka "Markus Armbruster <armbru@pond.sub.org >" [full]
# Primary key fingerprint: 354B C8B3 D7EB 2A6B 6867 4E5F 3870 B400 EB91 8653
* remotes/armbru/tags/pull-monitor-2019-08-21:
monitor/qmp: Update comment for commit 4eaca8de26
qdev: Collect HMP handlers command handlers in qdev-monitor.c
qapi: Move query-target from misc.json to machine.json
hw/core: Move cpu.c, cpu.h from qom/ to hw/core/
Signed-off-by: Peter Maydell <peter.maydell@linaro.org >
2019-08-22 10:31:21 +01:00
2e5b09fd0e
hw/core: Move cpu.c, cpu.h from qom/ to hw/core/
...
Suggested-by: Daniel P. Berrangé <berrange@redhat.com >
Signed-off-by: Markus Armbruster <armbru@redhat.com >
Message-Id: <20190709152053.16670-2-armbru@redhat.com >
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com >
Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com >
[Rebased onto merge commit 95a9457fd44; missed instances of qom/cpu.h
in comments replaced]
2019-08-21 13:24:01 +02:00