diff options
author | Philippe Mathieu-Daudé <philmd@redhat.com> | 2020-05-14 16:34:32 +0200 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@redhat.com> | 2020-05-15 10:46:40 +0100 |
commit | 84cb0a6d20c94abab6bc868e0e92044fcebdb1d7 (patch) | |
tree | 5a0aa9332a32b0b829dd3f568b5e46eb9567cca0 | |
parent | 79e18a60ab456764eaa974b67b9c54281a5156db (diff) |
tests/fuzz: Extract pciconfig_fuzz_qos() method
Extract the generic pciconfig_fuzz_qos() method from
i440fx_fuzz_qos(). This will help to write tests not
specific to the i440FX controller.
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-id: 20200514143433.18569-6-philmd@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
-rw-r--r-- | tests/qtest/fuzz/i440fx_fuzz.c | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/tests/qtest/fuzz/i440fx_fuzz.c b/tests/qtest/fuzz/i440fx_fuzz.c index c197b026db..558fa17c93 100644 --- a/tests/qtest/fuzz/i440fx_fuzz.c +++ b/tests/qtest/fuzz/i440fx_fuzz.c @@ -84,7 +84,7 @@ static void i440fx_fuzz_qtest(QTestState *s, flush_events(s); } -static void i440fx_fuzz_qos(QTestState *s, +static void pciconfig_fuzz_qos(QTestState *s, QPCIBus *bus, const unsigned char *Data, size_t Size) { /* * Same as i440fx_fuzz_qtest, but using QOS. devfn is incorporated into the @@ -97,11 +97,6 @@ static void i440fx_fuzz_qos(QTestState *s, uint32_t value; } a; - static QPCIBus *bus; - if (!bus) { - bus = qpci_new_pc(s, fuzz_qos_alloc); - } - while (Size >= sizeof(a)) { memcpy(&a, Data, sizeof(a)); switch (a.opcode % ACTION_MAX) { @@ -130,6 +125,19 @@ static void i440fx_fuzz_qos(QTestState *s, flush_events(s); } +static void i440fx_fuzz_qos(QTestState *s, + const unsigned char *Data, + size_t Size) +{ + static QPCIBus *bus; + + if (!bus) { + bus = qpci_new_pc(s, fuzz_qos_alloc); + } + + pciconfig_fuzz_qos(s, bus, Data, Size); +} + static void i440fx_fuzz_qos_fork(QTestState *s, const unsigned char *Data, size_t Size) { if (fork() == 0) { |