summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2012-08-01net: Rename VLANClientState to NetClientStateStefan Hajnoczi50-283/+282
The vlan feature is no longer part of net core. Rename VLANClientState to NetClientState because net clients are not explicitly associated with a vlan at all, instead they have a peer net client to which they are connected. This patch is a mechanical search-and-replace except for a few whitespace fixups where changing VLANClientState to NetClientState misaligned whitespace. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
2012-08-01net: Rename non_vlan_clients to net_clientsStefan Hajnoczi1-11/+11
There is no longer a distinction between vlan clients and non-vlan clients in the net core. The net core only knows about point-to-point clients which are connected to a peer. It's time to rename the global list of net clients since it no longer refers to vlans at all. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
2012-08-01net: Remove VLANStateStefan Hajnoczi18-137/+31
VLANState is no longer used and can be removed. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
2012-08-01net: Remove vlan code from net.cStefan Hajnoczi3-110/+0
The vlan implementation in net.c has been replaced by hubs so we can remove the code. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
2012-08-01net: Convert qdev_prop_vlan to peer with hubZhi Yong Wu5-17/+54
Instead of using VLANState use net/hub.h to support the vlan qdev property. The vlan qdev property becomes an alias for the peer qdev property but is represented as a VLAN ID number. When a VLAN ID is selected the device will really peer with a hub port. Signed-off-by: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com> Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
2012-08-01net: Drop vlan argument to qemu_new_net_client()Stefan Hajnoczi9-26/+18
Since hubs are now used to implement the 'vlan' feature and the vlan argument is always NULL, remove the argument entirely and update all net clients that use qemu_new_net_client(). Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
2012-08-01hub: Check that hubs are configured correctlyStefan Hajnoczi3-24/+47
Checks can be performed to make sure that hubs have at least one NIC and one host device, warning the user if this is not the case. Configurations which do not meet this rule tend to be broken but just emit a warning. This patch preserves compatibility with the checks performed by net core on vlans. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
2012-08-01net: Look up 'vlan' net clients using hubsStefan Hajnoczi4-29/+30
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
2012-08-01net: Use hubs for the vlan featureStefan Hajnoczi14-75/+85
Stop using the special-case vlan code in net.c. Instead use the hub net client to implement the vlan feature. The next patch will remove vlan code from net.c completely. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
2012-08-01net: Add a hub net clientStefan Hajnoczi5-16/+282
The vlan feature can be implemented in terms of hubs. By introducing a hub net client it becomes possible to remove the special case vlan code from net.c and push the vlan feature out of generic networking code. Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: Zhi Yong Wu <wuzhy@linux.vnet.ibm.com> Reviewed-by: Laszlo Ersek <lersek@redhat.com>
2012-08-01net: Add interface to bridge when SIOCBRADDIF isn't availableCorey Bryant1-3/+21
The bridge helper uses the SIOCBRADDIF ioctl to add an inteface to a bridge. SIOCBRADDIF is not available on old Linux versions. This patch adds support to use the SIOCDEVPRIVATE ioctl with BRCTL_ADD_IF if SIOCBRADDIF is not available. Reported-by: Fabien Chouteau <chouteau@adacore.com> Signed-off-by: Corey Bryant <coreyb@linux.vnet.ibm.com> Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
2012-07-31configure: -I\$(SRC_PATH) goes in QEMU_INCLUDES not QEMU_CFLAGSPeter Maydell1-2/+3
If the smartcard configure check passes, add '-I\$(SRC_PATH)/libcacard' to QEMU_INCLUDES, not QEMU_CFLAGS. Otherwise the unexpanded SRC_PATH will cause a warning in every following configure test. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-31configure: Fix compile warning in utimensat/futimens testPeter Maydell1-0/+1
Fix compile warning in the utimensat/futimens test ("implicit declaration of function 'utimensat'", ditto futimens) by adding a missing include. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Stefan Weil <sw@weilnetz.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-31configure: Fix warnings in VDE library probePeter Maydell1-1/+2
Fix compile warnings in the VDE library probe ("passing argument 1 of 'vde_open_real' discards 'const' qualifier from pointer target type", ditto argument 2). Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-31configure: Fix compile warning in PNG testPeter Maydell1-1/+1
Fix compile warning (variable 'png_ptr' set but not used) in the PNG detection test code. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Stefan Weil <sw@weilnetz.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-31configure: Fix errors in test for__sync_fetch_and_andStefan Weil1-1/+1
The old test code raises two compiler warnings which are errors since commit 417c9d72d48275d19c60861896efd4962d21aca2. These errors could result in compilations with compiler flag -march486 (so all nice features of newer processors got lost). Signed-off-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-31configure: -march=i486 belongs in QEMU_CFLAGS, not CFLAGSPeter Maydell1-1/+1
The distinction between QEMU_CFLAGS and CFLAGS is that the former is for flags without which QEMU can't compile, whereas the latter is for flags like "-g -O2" which the user can safely override. "-march=i486" is in the former category, and so belongs in QEMU_CFLAGS. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-31configure: Replace bash code by standard shell codeStefan Weil1-1/+1
"+=" does not work with dash and other simple /bin/sh implementations. The new code prepends the flag while the old code either did not work (it continued after an error message which typically was not read) or appended the flag. That difference should not matter here. Reported-by: Olaf Hering <olaf@aepfle.de> Signed-off-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-31configure: Fix build with capabilitiesStefan Weil1-1/+1
Since commit 417c9d72d48275d19c60861896efd4962d21aca2 all configure tests normally run with -Werror. Some of these tests now fail because they raised a compiler warning. This patch fixes support for capabilities. Signed-off-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-31configure: Fix build with ALSA audio driverStefan Weil1-1/+1
Since commit 417c9d72d48275d19c60861896efd4962d21aca2, all configure tests normally run with -Werror. Some of these tests now fail because they raised a compiler warning. Here a build breakage for ALSA (configure --audio-drv-list=alsa) is fixed. Signed-off-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-31configure: Don't run configure tests with -Werror enabledPeter Maydell1-4/+18
Don't run configure tests with -Werror in the compiler flags. The idea of -Werror is that it makes problems very obvious to developers, so they get fixed quickly. However, when running configure tests, failures due to -Werror are far from obvious -- they simply result in the test quietly failing when it should have passed. Not using -Werror is in line with recommended practice in the Autoconf world. This commit is essentially backing out the changes in commit 417c9d72. Instead we fix the problem that commit was trying to address in a different way: we add -Werror only for the test of the nss headers, with a comment that this is specifically intended to detect a bug in some releases of nss. We also have to clean up a bug in the smartcard test where it was trying to include smartcard_cflags in the test compile flags: this would always result in a failure with -Werror, because they include an escaped "$(SRC_PATH)" which is only valid when used in the final makefile. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Stefan Weil <sw@weilnetz.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-31configure: Split valgrind test into pragma test and valgrind.h testPeter Maydell2-2/+25
Split the configure test that checks for valgrind into two, one part checking whether we have the gcc pragma to disable unused-but-set variables, and the other part checking for the existence of valgrind.h. The first of these has to be compiled with -Werror and the second does not and shouldn't generate any warnings. This (a) allows us to enable "make errors in configure tests be build failures" and (b) enables use of valgrind on systems with a gcc which doesn't know about -Wunused-but-set-varibale, like Debian squeeze. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-30Merge remote-tracking branch 'mst/tags/for_anthony' into stagingAnthony Liguori33-248/+337
* mst/tags/for_anthony: msi/msix: added API to set MSI message address and data pci: Add INTx routing notifier pci: Add pci_device_route_intx_to_irq pci: Unregister BARs before device exit pci: convert PCIUnregisterFunc to void msix: Switch msix_uninit to return void msix: Allow full specification of MSIX layout msix: Split PBA into it's own MemoryRegion msix: Note endian TODO item msix: Move msix_mmio_read virtio: Convert to msix_init_exclusive_bar() interface ivshmem: Convert to msix_init_exclusive_bar() interface msix: Add simple BAR allocation MSIX setup functions msix: fix PCIDevice naming inconsistency msix: drop unused msix_bar_size, require valid bar_size
2012-07-30Merge remote-tracking branch 'bonzini/nbd-next' into stagingAnthony Liguori1-13/+62
* bonzini/nbd-next: qemu-nbd: add --cache and --aio options qemu-nbd: reorganize help message
2012-07-30Merge remote-tracking branch 'bonzini/scsi-next' into stagingAnthony Liguori10-317/+796
* bonzini/scsi-next: (32 commits) virtio-scsi: enable MSI-X support virtio-scsi: add ioeventfd support virtio-scsi: report parameter change events virtio-scsi: do not report dropped events after reset virtio-scsi: Report missed events virtio-scsi: Implement hotplug support for virtio-scsi scsi: report parameter changes to HBA drivers scsi-disk: report resized disk via sense codes scsi: establish precedence levels for unit attention scsi: introduce hotplug() and hot_unplug() interfaces for SCSI bus scsi: add tracepoint for scsi_req_cancel scsi-disk: removable hard disks support load/eject scsi-disk: Fail medium writes with proper sense for readonly LUNs scsi-disk: improve the lba-out-of-range tests for read/write/verify scsi-disk: rd/wr/vr-protect !=0 is an error scsi-disk: support toggling the write cache scsi-disk: parse MODE SELECT commands and parameters scsi-disk: fix changeable values for MODE_PAGE_R_W_ERROR scsi-disk: adjust offsets in MODE SENSE by 2 scsi-disk: support emulated TO_DEV requests ...
2012-07-30Merge commit 'quintela/migration-next-v5' into stagingAnthony Liguori6-147/+245
* commit '6c779f22a93cc6e4565b940ef616e3efc5b50ba5': Change ram_save_block to return -1 if there are no more changes ram: save_live_setup() we don't need to synchronize the dirty bitmap. ram: iterate phase ram: save_live_complete() only do one loop ram: save_live_setup() don't need to sent pages savevm: split save_live into stage2 and stage3 savevm: split save_live_setup from save_live_state savevm: introduce is_active method savevm: Refactor cancel operation in its own operation savevm: remove SaveLiveStateHandler savevm: remove SaveSetParamsHandler savevm: Live migration handlers register the struct directly savevm: Use a struct to pass all handlers
2012-07-29Merge branch pci into masterMichael S. Tsirkin33-248/+337
Merge master and pci branch, resolve build breakage in hw/esp.c introduced by f90c2bcd. Conflicts: hw/esp.c
2012-07-29x86: Fixed incorrect segment base address addition in 64-bits modeVitaly Chipounov1-18/+25
According to the Intel manual "Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 3", "3.4.4 Segment Loading Instructions in IA-32e Mode": "When in compatibility mode, FS and GS overrides operate as defined by 32-bit mode behavior regardless of the value loaded into the upper 32 linear-address bits of the hidden descriptor register base field. Compatibility mode ignores the upper 32 bits when calculating an effective address." However, the code misses the 64-bit mode case, where an instruction with address and segment size override would be translated incorrectly. For example, inc dword ptr gs:260h[ebx*4] gets incorrectly translated to: (uint32_t)(gs.base + ebx * 4 + 0x260) instead of gs.base + (uint32_t)(ebx * 4 + 0x260) Signed-off-by: Vitaly Chipounov <vitaly.chipounov@epfl.ch> Reviewed-by: Max Filippov <jcmvbkbc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-29place qemu-sockets.c contributions since 2012-01-13 under GPLv2+Paolo Bonzini1-0/+3
Past contributions since 2012-01-13 were only made by Red Hat people, so they are already available under GPLv2+. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Stefan Weil <sw@weilnetz.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-29build: Fix linking failure for qemu-gaDunrong Huang2-12/+11
This patch will fix the following linking failed: LINK qemu-ga gcc: error: qga/../qapi-generated/qga-qapi-types.o: No such file or directory gcc: error: qga/../qapi-generated/qga-qapi-visit.o: No such file or directory gcc: error: qga/../qapi-generated/qga-qmp-marshal.o: No such file or directory make: *** [qemu-ga] Error 1 Commit cdc976b040f2760103ce2fb49f4d504093a7163f changes the dependencies of qemu-ga to depend "../qapi-generated/qga-qapi-types.o", which will be expanded to "qga/../qapi-generated/qga-qapi-types.o" when building qemu-ga. In top-level Makefile, we defined a target "qapi-generated/qga-qapi-types.o" which was not equal to "qga/../qapi-generated/qga-qapi-types" in the Makefile world. So "No such file" error happened when qemu-ga was linking. The easy approach to fix is to change the target name to "qga/../qapi-generated/qga-qapi-types.o", but it is weird. So, in order to solve it more graciously, I move those temporary files(qga-qapi-*.{c,h}) qemu-ga depends on to qemu-ga/qapi-generated, this makes dependencies more clearer. Signed-off-by: Dunrong Huang <riegamaths@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-28Avoid redefining inlineBlue Swirl1-0/+2
System headers (e.g. gutils.h) may define 'inline', #undefine it before #defining. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-28Avoid returning voidBlue Swirl12-28/+46
It's silly and non-conforming to standards to return void, don't do it. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-28hw/escc: Drop duplicate definition of 'disabled' propertyPeter Maydell1-1/+0
Drop a duplicate definition of the 'disabled' property from the escc qdev property list: this redefinition is currently effectively ignored but will become an error. (The duplication was inadvertently introduced in 2009 in commit ec02f7dec2.) Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Acked-by: Andreas Färber <afaerber@suse.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-28build: get dependency file directories from object file namesPaolo Bonzini6-15/+4
After commit dcff25f2cd8c11a9368cc2369aeb0319c32d9e26, Dependency file are taken from the directories that have a Makefile.objs file. This is not enough, since files can be included from other directories. So, pick them from directories that have an object file in them. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-28build: include qapi-generated/ files in qga/Makefile.objsPaolo Bonzini2-1/+3
No reason to leave them out, and it will ensure that the dependencies are picked up. Later we can perhaps move the files to another directory to avoid ../ usage. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Reviewed-by: Michael Roth <mdroth@linux.vnet.ibm.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-28tests: Makefile: include dependency filesEduardo Habkost1-0/+2
Otherwise 'make check' won't recompile files that need to be recompiled because of header changes. To reproduce the bug, run: $ make check # succeeds $ echo B0RKED > hw/mc146818rtc_regs.h $ make check # is supposed to try to rebuild tests/rtc-test.o and fail Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> Acked-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-28vl.c: Don't print errno after failed qemu_chr_new()Peter Maydell1-6/+6
The qemu_chr_new() function doesn't set errno on failure, so don't print strerror(errno) on the error handling path when dealing with the -serial, -parallel and -virtioconsole arguments. This avoids nonsensical error messages like: $ ./arm-softmmu/qemu-system-arm -serial wombat qemu: could not open serial device 'wombat': Success We also rephrase the message slightly to make it a little clearer that we're expecting the name of a QEMU chr backend rather than a host or guest serial/parallel/etc device. Reported-by: Christian Müller <christian.mueller@heig-vd.ch> Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-28target-xtensa: fix big-endian BBS/BBC implementationMax Filippov1-2/+14
Quote from ISA, 2.1: For most Xtensa instructions, bit numbering is irrelevant; only the BBC and BBS instructions assign bit numbers to values on which the processor operates. The BBC/BBS instructions use big-endian bit ordering (0 is the most-significant bit) on a big-endian processor configuration. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-27target-or32: Add testcasesJia Liu52-0/+2579
Add testcases for OpenRISC. Signed-off-by: Jia Liu <proljc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-27target-or32: Add linux user supportJia Liu8-4/+422
Add QEMU OpenRISC linux user support. Signed-off-by: Jia Liu <proljc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-27target-or32: Add linux syscall, signal and termbitsJia Liu4-0/+850
Add OpenRISC linux syscall, signal and termbits. Signed-off-by: Jia Liu <proljc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-27target-or32: Add gdb stub supportJia Liu1-0/+64
Add OpenRISC gdb stub support. Signed-off-by: Jia Liu <proljc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-27target-or32: Add system instructionsJia Liu5-1/+321
Add OpenRISC system instructions. Signed-off-by: Jia Liu <proljc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-27target-or32: Add a IIS dummy boardJia Liu2-1/+151
Add a IIS dummy board. Signed-off-by: Jia Liu <proljc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-27target-or32: Add timer supportJia Liu3-1/+124
Add OpenRISC timer support. Signed-off-by: Jia Liu <proljc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-27target-or32: Add PIC supportJia Liu3-0/+65
Add OpenRISC Programmable Interrupt Controller support. Signed-off-by: Jia Liu <proljc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-27target-or32: Add instruction translationJia Liu1-0/+1734
Add OpenRISC instruction tanslation routines. Signed-off-by: Jia Liu <proljc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-27target-or32: Add float instruction helpersJia Liu3-1/+335
Add OpenRISC float instruction helpers. Signed-off-by: Jia Liu <proljc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-27target-or32: Add int instruction helpersJia Liu3-1/+85
Add OpenRISC int instruction helpers. Signed-off-by: Jia Liu <proljc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
2012-07-27target-or32: Add exception supportJia Liu5-2/+89
Add OpenRISC exception support. Signed-off-by: Jia Liu <proljc@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>