diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | CODING_STYLE | 2 | ||||
-rw-r--r-- | MAINTAINERS | 38 | ||||
-rw-r--r-- | exec.c | 8 | ||||
-rw-r--r-- | hw/arm/nseries.c | 3 | ||||
-rw-r--r-- | hw/bt/hci-csr.c | 2 | ||||
-rw-r--r-- | hw/display/virtio-vga.c | 4 | ||||
-rw-r--r-- | hw/m68k/mcf5208.c | 2 | ||||
-rw-r--r-- | hw/usb/hcd-ehci.c | 1 | ||||
-rw-r--r-- | hw/virtio/virtio-pci.c | 20 | ||||
-rw-r--r-- | hw/virtio/virtio-pci.h | 8 | ||||
-rw-r--r-- | include/hw/bt.h | 2 | ||||
-rw-r--r-- | include/qemu/bitmap.h | 7 | ||||
-rw-r--r-- | linux-user/syscall.c | 2 | ||||
-rw-r--r-- | net/filter-mirror.c | 4 | ||||
-rw-r--r-- | qapi-schema.json | 3 | ||||
-rw-r--r-- | qapi/block-core.json | 5 | ||||
-rw-r--r-- | qemu-char.c | 1 | ||||
-rw-r--r-- | qemu-options.hx | 2 | ||||
-rw-r--r-- | rules.mak | 2 | ||||
-rw-r--r-- | tests/.gitignore | 2 | ||||
-rw-r--r-- | util/bitmap.c | 2 |
22 files changed, 70 insertions, 51 deletions
diff --git a/.gitignore b/.gitignore index c88ebf9598..3d7848cb7e 100644 --- a/.gitignore +++ b/.gitignore @@ -53,6 +53,7 @@ /qemu-monitor-info.texi /qemu-version.h /qemu-version.h.tmp +/module_block.h /vscclient /fsdev/virtfs-proxy-helper *.[1-9] diff --git a/CODING_STYLE b/CODING_STYLE index e7fde15003..f53180bf3f 100644 --- a/CODING_STYLE +++ b/CODING_STYLE @@ -9,7 +9,7 @@ patches before submitting. Of course, the most important aspect in any coding style is whitespace. Crusty old coders who have trouble spotting the glasses on their noses can tell the difference between a tab and eight spaces from a distance -of approximately fifteen parsecs. Many a flamewar have been fought and +of approximately fifteen parsecs. Many a flamewar has been fought and lost on this issue. QEMU indents are four spaces. Tabs are never used, except in Makefiles diff --git a/MAINTAINERS b/MAINTAINERS index a4d2dd4d52..b01fec0a7b 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -116,6 +116,7 @@ M: Edgar E. Iglesias <edgar.iglesias@gmail.com> S: Maintained F: target-cris/ F: hw/cris/ +F: include/hw/cris/ F: tests/tcg/cris/ F: disas/cris.c @@ -149,6 +150,13 @@ M: Yongbok Kim <yongbok.kim@imgtec.com> S: Maintained F: target-mips/ F: hw/mips/ +F: hw/misc/mips_* +F: hw/intc/mips_gic.c +F: hw/timer/mips_gictimer.c +F: include/hw/mips/ +F: include/hw/misc/mips_* +F: include/hw/intc/mips_gic.h +F: include/hw/timer/mips_gictimer.h F: tests/tcg/mips/ F: disas/mips.c @@ -157,6 +165,8 @@ M: Anthony Green <green@moxielogic.com> S: Maintained F: target-moxie/ F: disas/moxie.c +F: hw/moxie/ +F: default-configs/moxie-softmmu.mak OpenRISC M: Jia Liu <proljc@gmail.com> @@ -319,6 +329,9 @@ L: qemu-devel@nongnu.org M: Stefan Weil <sw@weilnetz.de> S: Maintained F: *win32* +F: */*win32* +F: include/*/*win32* +X: qga/*win32* F: qemu.nsi ARM Machines @@ -662,31 +675,38 @@ R2D M: Magnus Damm <magnus.damm@gmail.com> S: Maintained F: hw/sh4/r2d.c +F: hw/intc/sh_intc.c +F: hw/timer/sh_timer.c Shix M: Magnus Damm <magnus.damm@gmail.com> -S: Orphan +S: Odd Fixes F: hw/sh4/shix.c SPARC Machines -------------- Sun4m -M: Blue Swirl <blauwirbel@gmail.com> M: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> S: Maintained F: hw/sparc/sun4m.c +F: hw/dma/sparc32_dma.c +F: hw/dma/sun4m_iommu.c +F: include/hw/sparc/sparc32_dma.h +F: include/hw/sparc/sun4m.h +F: pc-bios/openbios-sparc32 Sun4u -M: Blue Swirl <blauwirbel@gmail.com> M: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> S: Maintained F: hw/sparc64/sun4u.c +F: pc-bios/openbios-sparc64 Leon3 M: Fabien Chouteau <chouteau@adacore.com> S: Maintained F: hw/sparc/leon3.c F: hw/*/grlib* +F: include/hw/sparc/grlib.h S390 Machines ------------- @@ -926,6 +946,8 @@ virtio M: Michael S. Tsirkin <mst@redhat.com> S: Supported F: hw/*/virtio* +F: hw/virtio/Makefile.objs +F: hw/virtio/trace-events F: net/vhost-user.c F: include/hw/virtio/ F: tests/virtio-balloon-test.c @@ -1013,6 +1035,8 @@ Rocker M: Jiri Pirko <jiri@resnulli.us> S: Maintained F: hw/net/rocker/ +F: tests/rocker/ +F: docs/specs/rocker.txt NVDIMM M: Xiao Guangrong <guangrong.xiao@linux.intel.com> @@ -1044,6 +1068,7 @@ M: Gerd Hoffmann <kraxel@redhat.com> S: Maintained F: audio/ F: hw/audio/ +F: include/hw/audio/ F: tests/ac97-test.c F: tests/es1370-test.c F: tests/intel-hda-test.c @@ -1181,8 +1206,9 @@ Human Monitor (HMP) M: Dr. David Alan Gilbert <dgilbert@redhat.com> S: Maintained F: monitor.c -F: hmp.c -F: hmp-commands.hx +F: hmp.[ch] +F: hmp-commands*.hx +F: include/monitor/hmp-target.h Network device backends M: Jason Wang <jasowang@redhat.com> @@ -1407,11 +1433,13 @@ F: user-exec.c BSD user S: Orphan F: bsd-user/ +F: default-configs/*-bsd-user.mak Linux user M: Riku Voipio <riku.voipio@iki.fi> S: Maintained F: linux-user/ +F: default-configs/*-linux-user.mak Tiny Code Generator (TCG) ------------------------- @@ -255,7 +255,7 @@ static void phys_page_set(AddressSpaceDispatch *d, /* Compact a non leaf page entry. Simply detect that the entry has a single child, * and update our entry so we can skip it and go directly to the destination. */ -static void phys_page_compact(PhysPageEntry *lp, Node *nodes, unsigned long *compacted) +static void phys_page_compact(PhysPageEntry *lp, Node *nodes) { unsigned valid_ptr = P_L2_SIZE; int valid = 0; @@ -275,7 +275,7 @@ static void phys_page_compact(PhysPageEntry *lp, Node *nodes, unsigned long *com valid_ptr = i; valid++; if (p[i].skip) { - phys_page_compact(&p[i], nodes, compacted); + phys_page_compact(&p[i], nodes); } } @@ -307,10 +307,8 @@ static void phys_page_compact(PhysPageEntry *lp, Node *nodes, unsigned long *com static void phys_page_compact_all(AddressSpaceDispatch *d, int nodes_nb) { - DECLARE_BITMAP(compacted, nodes_nb); - if (d->phys_map.skip) { - phys_page_compact(&d->phys_map, d->map.nodes, compacted); + phys_page_compact(&d->phys_map, d->map.nodes); } } diff --git a/hw/arm/nseries.c b/hw/arm/nseries.c index fea911e3e3..c86cf80514 100644 --- a/hw/arm/nseries.c +++ b/hw/arm/nseries.c @@ -786,8 +786,7 @@ static void n8x0_cbus_setup(struct n800_s *s) static void n8x0_uart_setup(struct n800_s *s) { - CharDriverState *radio = uart_hci_init( - qdev_get_gpio_in(s->mpu->gpio, N8X0_BT_HOST_WKUP_GPIO)); + CharDriverState *radio = uart_hci_init(); qdev_connect_gpio_out(s->mpu->gpio, N8X0_BT_RESET_GPIO, csrhci_pins_get(radio)[csrhci_pin_reset]); diff --git a/hw/bt/hci-csr.c b/hw/bt/hci-csr.c index d688372ca3..b77c0366e4 100644 --- a/hw/bt/hci-csr.c +++ b/hw/bt/hci-csr.c @@ -458,7 +458,7 @@ qemu_irq *csrhci_pins_get(CharDriverState *chr) return s->pins; } -CharDriverState *uart_hci_init(qemu_irq wakeup) +CharDriverState *uart_hci_init(void) { struct csrhci_s *s = (struct csrhci_s *) g_malloc0(sizeof(struct csrhci_s)); diff --git a/hw/display/virtio-vga.c b/hw/display/virtio-vga.c index f77b401264..f9b017d86b 100644 --- a/hw/display/virtio-vga.c +++ b/hw/display/virtio-vga.c @@ -120,8 +120,8 @@ static void virtio_vga_realize(VirtIOPCIProxy *vpci_dev, Error **errp) * virtio regions are moved to the end of bar #2, to make room for * the stdvga mmio registers at the start of bar #2. */ - vpci_dev->modern_mem_bar = 2; - vpci_dev->msix_bar = 4; + vpci_dev->modern_mem_bar_idx = 2; + vpci_dev->msix_bar_idx = 4; if (!(vpci_dev->flags & VIRTIO_PCI_FLAG_PAGE_PER_VQ)) { /* diff --git a/hw/m68k/mcf5208.c b/hw/m68k/mcf5208.c index 9240ebf9af..3438314c35 100644 --- a/hw/m68k/mcf5208.c +++ b/hw/m68k/mcf5208.c @@ -21,7 +21,7 @@ #include "elf.h" #include "exec/address-spaces.h" -#define SYS_FREQ 66000000 +#define SYS_FREQ 166666666 #define PCSR_EN 0x0001 #define PCSR_RLD 0x0002 diff --git a/hw/usb/hcd-ehci.c b/hw/usb/hcd-ehci.c index b093db729c..f4ece9abed 100644 --- a/hw/usb/hcd-ehci.c +++ b/hw/usb/hcd-ehci.c @@ -1426,6 +1426,7 @@ static int ehci_process_itd(EHCIState *ehci, if (off + len > 4096) { /* transfer crosses page border */ if (pg == 6) { + qemu_sglist_destroy(&ehci->isgl); return -1; /* avoid page pg + 1 */ } ptr2 = (itd->bufptr[pg + 1] & ITD_BUFPTR_MASK); diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c index 2d60a005b6..06831de5ff 100644 --- a/hw/virtio/virtio-pci.c +++ b/hw/virtio/virtio-pci.c @@ -1551,7 +1551,7 @@ static void virtio_pci_modern_mem_region_map(VirtIOPCIProxy *proxy, struct virtio_pci_cap *cap) { virtio_pci_modern_region_map(proxy, region, cap, - &proxy->modern_bar, proxy->modern_mem_bar); + &proxy->modern_bar, proxy->modern_mem_bar_idx); } static void virtio_pci_modern_io_region_map(VirtIOPCIProxy *proxy, @@ -1559,7 +1559,7 @@ static void virtio_pci_modern_io_region_map(VirtIOPCIProxy *proxy, struct virtio_pci_cap *cap) { virtio_pci_modern_region_map(proxy, region, cap, - &proxy->io_bar, proxy->modern_io_bar); + &proxy->io_bar, proxy->modern_io_bar_idx); } static void virtio_pci_modern_mem_region_unmap(VirtIOPCIProxy *proxy, @@ -1670,14 +1670,14 @@ static void virtio_pci_device_plugged(DeviceState *d, Error **errp) memory_region_init(&proxy->io_bar, OBJECT(proxy), "virtio-pci-io", 0x4); - pci_register_bar(&proxy->pci_dev, proxy->modern_io_bar, + pci_register_bar(&proxy->pci_dev, proxy->modern_io_bar_idx, PCI_BASE_ADDRESS_SPACE_IO, &proxy->io_bar); virtio_pci_modern_io_region_map(proxy, &proxy->notify_pio, ¬ify_pio.cap); } - pci_register_bar(&proxy->pci_dev, proxy->modern_mem_bar, + pci_register_bar(&proxy->pci_dev, proxy->modern_mem_bar_idx, PCI_BASE_ADDRESS_SPACE_MEMORY | PCI_BASE_ADDRESS_MEM_PREFETCH | PCI_BASE_ADDRESS_MEM_TYPE_64, @@ -1693,7 +1693,7 @@ static void virtio_pci_device_plugged(DeviceState *d, Error **errp) if (proxy->nvectors) { int err = msix_init_exclusive_bar(&proxy->pci_dev, proxy->nvectors, - proxy->msix_bar); + proxy->msix_bar_idx); if (err) { /* Notice when a system that supports MSIx can't initialize it. */ if (err != -ENOTSUP) { @@ -1716,7 +1716,7 @@ static void virtio_pci_device_plugged(DeviceState *d, Error **errp) &virtio_pci_config_ops, proxy, "virtio-pci", size); - pci_register_bar(&proxy->pci_dev, proxy->legacy_io_bar, + pci_register_bar(&proxy->pci_dev, proxy->legacy_io_bar_idx, PCI_BASE_ADDRESS_SPACE_IO, &proxy->bar); } @@ -1760,10 +1760,10 @@ static void virtio_pci_realize(PCIDevice *pci_dev, Error **errp) * region 4+5 -- virtio modern memory (64bit) bar * */ - proxy->legacy_io_bar = 0; - proxy->msix_bar = 1; - proxy->modern_io_bar = 2; - proxy->modern_mem_bar = 4; + proxy->legacy_io_bar_idx = 0; + proxy->msix_bar_idx = 1; + proxy->modern_io_bar_idx = 2; + proxy->modern_mem_bar_idx = 4; proxy->common.offset = 0x0; proxy->common.size = 0x1000; diff --git a/hw/virtio/virtio-pci.h b/hw/virtio/virtio-pci.h index 541cbdbc2b..b4edea6987 100644 --- a/hw/virtio/virtio-pci.h +++ b/hw/virtio/virtio-pci.h @@ -143,10 +143,10 @@ struct VirtIOPCIProxy { MemoryRegion io_bar; MemoryRegion modern_cfg; AddressSpace modern_as; - uint32_t legacy_io_bar; - uint32_t msix_bar; - uint32_t modern_io_bar; - uint32_t modern_mem_bar; + uint32_t legacy_io_bar_idx; + uint32_t msix_bar_idx; + uint32_t modern_io_bar_idx; + uint32_t modern_mem_bar_idx; int config_cap; uint32_t flags; bool disable_modern; diff --git a/include/hw/bt.h b/include/hw/bt.h index 963f330138..2fa22bdab6 100644 --- a/include/hw/bt.h +++ b/include/hw/bt.h @@ -128,7 +128,7 @@ enum { __csrhci_pins, }; qemu_irq *csrhci_pins_get(CharDriverState *chr); -CharDriverState *uart_hci_init(qemu_irq wakeup); +CharDriverState *uart_hci_init(void); /* bt-l2cap.c */ struct bt_l2cap_device_s; diff --git a/include/qemu/bitmap.h b/include/qemu/bitmap.h index 7247f14788..63ea2d0b1e 100644 --- a/include/qemu/bitmap.h +++ b/include/qemu/bitmap.h @@ -57,11 +57,8 @@ * find_next_bit(addr, nbits, bit) Position next set bit in *addr >= bit */ -#define BITMAP_LAST_WORD_MASK(nbits) \ - ( \ - ((nbits) % BITS_PER_LONG) ? \ - (1UL<<((nbits) % BITS_PER_LONG))-1 : ~0UL \ - ) +#define BITMAP_FIRST_WORD_MASK(start) (~0UL << ((start) & (BITS_PER_LONG - 1))) +#define BITMAP_LAST_WORD_MASK(nbits) (~0UL >> (-(nbits) & (BITS_PER_LONG - 1))) #define DECLARE_BITMAP(name,bits) \ unsigned long name[BITS_TO_LONGS(bits)] diff --git a/linux-user/syscall.c b/linux-user/syscall.c index fa559be47f..03339ba0de 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -42,7 +42,7 @@ int __clone2(int (*fn)(void *), void *child_stack_base, #include <sys/socket.h> #include <sys/un.h> #include <sys/uio.h> -#include <sys/poll.h> +#include <poll.h> #include <sys/times.h> #include <sys/shm.h> #include <sys/sem.h> diff --git a/net/filter-mirror.c b/net/filter-mirror.c index 35df37451d..0ee58d905e 100644 --- a/net/filter-mirror.c +++ b/net/filter-mirror.c @@ -198,7 +198,7 @@ static void filter_mirror_setup(NetFilterState *nf, Error **errp) MirrorState *s = FILTER_MIRROR(nf); if (!s->outdev) { - error_setg(errp, "filter filter mirror needs 'outdev' " + error_setg(errp, "filter mirror needs 'outdev' " "property set"); return; } @@ -315,7 +315,7 @@ filter_mirror_set_outdev(Object *obj, const char *value, Error **errp) g_free(s->outdev); s->outdev = g_strdup(value); if (!s->outdev) { - error_setg(errp, "filter filter mirror needs 'outdev' " + error_setg(errp, "filter mirror needs 'outdev' " "property set"); return; } diff --git a/qapi-schema.json b/qapi-schema.json index c3dcf11a4a..9e47b47cc7 100644 --- a/qapi-schema.json +++ b/qapi-schema.json @@ -752,6 +752,7 @@ 'cpu-throttle-increment': 'int', 'tls-creds': 'str', 'tls-hostname': 'str'} } + ## # @query-migrate-parameters # @@ -4118,7 +4119,6 @@ # # Since 1.6 ## - { 'struct': 'RxFilterInfo', 'data': { 'name': 'str', @@ -4338,7 +4338,6 @@ # # Since: 2.1 ## - { 'struct': 'Memdev', 'data': { 'size': 'size', diff --git a/qapi/block-core.json b/qapi/block-core.json index 9d797b8fe0..4badb97373 100644 --- a/qapi/block-core.json +++ b/qapi/block-core.json @@ -25,7 +25,6 @@ # Since: 1.3 # ## - { 'struct': 'SnapshotInfo', 'data': { 'id': 'str', 'name': 'str', 'vm-state-size': 'int', 'date-sec': 'int', 'date-nsec': 'int', @@ -81,7 +80,6 @@ # # Since: 1.7 ## - { 'union': 'ImageInfoSpecific', 'data': { 'qcow2': 'ImageInfoSpecificQCow2', @@ -129,7 +127,6 @@ # Since: 1.3 # ## - { 'struct': 'ImageInfo', 'data': {'filename': 'str', 'format': 'str', '*dirty-flag': 'bool', '*actual-size': 'int', 'virtual-size': 'int', @@ -181,7 +178,6 @@ # Since: 1.4 # ## - { 'struct': 'ImageCheck', 'data': {'filename': 'str', 'format': 'str', 'check-errors': 'int', '*image-end-offset': 'int', '*corruptions': 'int', '*leaks': 'int', @@ -518,7 +514,6 @@ # # Since: 2.5 ## - { 'struct': 'BlockDeviceTimedStats', 'data': { 'interval_length': 'int', 'min_rd_latency_ns': 'int', 'max_rd_latency_ns': 'int', 'avg_rd_latency_ns': 'int', diff --git a/qemu-char.c b/qemu-char.c index 4b330ea90f..59e1042d4d 100644 --- a/qemu-char.c +++ b/qemu-char.c @@ -3140,6 +3140,7 @@ static void tcp_chr_tls_init(CharDriverState *chr) if (tioc == NULL) { error_free(err); tcp_chr_disconnect(chr); + return; } object_unref(OBJECT(s->ioc)); s->ioc = QIO_CHANNEL(tioc); diff --git a/qemu-options.hx b/qemu-options.hx index 01f01dfadc..b1fbdb08cd 100644 --- a/qemu-options.hx +++ b/qemu-options.hx @@ -2374,7 +2374,7 @@ console with the given dimensions. @item -chardev ringbuf ,id=@var{id} [,size=@var{size}] Create a ring buffer with fixed size @option{size}. -@var{size} must be a power of two, and defaults to @code{64K}). +@var{size} must be a power of two and defaults to @code{64K}. @item -chardev file ,id=@var{id} ,path=@var{path} @@ -138,7 +138,7 @@ endef # Looks in the PATH if the argument contains no slash, else only considers one # specific directory. Returns an # empty string if the program doesn't exist # there. -find-in-path = $(if $(find-string /, $1), \ +find-in-path = $(if $(findstring /, $1), \ $(wildcard $1), \ $(wildcard $(patsubst %, %/$1, $(subst :, ,$(PATH))))) diff --git a/tests/.gitignore b/tests/.gitignore index 0f0c79b1a9..9f3d2ee038 100644 --- a/tests/.gitignore +++ b/tests/.gitignore @@ -12,7 +12,9 @@ rcutorture test-aio test-base64 test-bitops +test-blockjob test-blockjob-txn +test-bufferiszero test-clone-visitor test-coroutine test-crypto-afsplit diff --git a/util/bitmap.c b/util/bitmap.c index 40aadfb4f3..43ed011720 100644 --- a/util/bitmap.c +++ b/util/bitmap.c @@ -157,8 +157,6 @@ int slow_bitmap_andnot(unsigned long *dst, const unsigned long *bitmap1, return result != 0; } -#define BITMAP_FIRST_WORD_MASK(start) (~0UL << ((start) % BITS_PER_LONG)) - void bitmap_set(unsigned long *map, long start, long nr) { unsigned long *p = map + BIT_WORD(start); |