mirror of
https://github.com/izzy2lost/xemu.git
synced 2026-07-06 00:20:22 -07:00
Merge remote-tracking branch 'remotes/mjt/tags/pull-trivial-patches-2015-04-30' into staging
trivial patches for 2015-04-30 # gpg: Signature made Thu Apr 30 14:07:50 2015 BST using RSA key ID A4C3D7DB # gpg: Good signature from "Michael Tokarev <mjt@tls.msk.ru>" # gpg: aka "Michael Tokarev <mjt@corpit.ru>" # gpg: aka "Michael Tokarev <mjt@debian.org>" * remotes/mjt/tags/pull-trivial-patches-2015-04-30: (42 commits) openrisc: cpu: Remove unused cpu_get_pc microblaze: fix memory leak tcg: Delete unused cpu_pc_from_tb() kvm: Silence warning from valgrind vhost-user: remove superfluous '\n' around error_report() target-mips: fix memory leak qmp-commands: Fix typo linux-user/elfload: use QTAILQ_FOREACH instead of open-coding it coroutine: remove unnecessary parentheses in qemu_co_queue_empty qemu-char: remove unused list node from FDCharDriver input: remove unused mouse_handlers list cpus: use first_cpu macro instead of QTAILQ_FIRST(&cpus) microblaze: cpu: delete unused cpu_interrupts_enabled microblaze: cpu: Renumber EXCP_* constants to close gap microblaze: cpu: Delete EXCP_NMI microblaze: cpu: Remove unused CC_OP enum microblaze: cpu: Remote unused cpu_get_pc microblaze: mmu: Delete flip_um fn prototype defconfigs: Piggyback microblazeel on microblaze libcacard: do not use full paths for include files in the same dir ... Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
@@ -43,7 +43,7 @@ file_backend_memory_alloc(HostMemoryBackend *backend, Error **errp)
|
||||
return;
|
||||
}
|
||||
if (!fb->mem_path) {
|
||||
error_setg(errp, "mem_path property not set");
|
||||
error_setg(errp, "mem-path property not set");
|
||||
return;
|
||||
}
|
||||
#ifndef CONFIG_LINUX
|
||||
|
||||
@@ -5193,8 +5193,6 @@ case "$target_name" in
|
||||
TARGET_BASE_ARCH=mips
|
||||
echo "TARGET_ABI_MIPSN64=y" >> $config_target_mak
|
||||
;;
|
||||
tricore)
|
||||
;;
|
||||
moxie)
|
||||
;;
|
||||
or32)
|
||||
@@ -5245,6 +5243,8 @@ case "$target_name" in
|
||||
s390x)
|
||||
gdb_xml_files="s390x-core64.xml s390-acr.xml s390-fpr.xml"
|
||||
;;
|
||||
tricore)
|
||||
;;
|
||||
unicore32)
|
||||
;;
|
||||
xtensa|xtensaeb)
|
||||
|
||||
@@ -1016,7 +1016,7 @@ static void *qemu_tcg_cpu_thread_fn(void *arg)
|
||||
qemu_cond_signal(&qemu_cpu_cond);
|
||||
|
||||
/* wait for initial kick-off after machine start */
|
||||
while (QTAILQ_FIRST(&cpus)->stopped) {
|
||||
while (first_cpu->stopped) {
|
||||
qemu_cond_wait(tcg_halt_cond, &qemu_global_mutex);
|
||||
|
||||
/* process any pending work */
|
||||
|
||||
@@ -1,11 +1,3 @@
|
||||
# Default configuration for microblazeel-softmmu
|
||||
|
||||
CONFIG_PTIMER=y
|
||||
CONFIG_PFLASH_CFI01=y
|
||||
CONFIG_SERIAL=y
|
||||
CONFIG_XILINX=y
|
||||
CONFIG_XILINX_AXI=y
|
||||
CONFIG_XILINX_SPI=y
|
||||
CONFIG_XILINX_ETHLITE=y
|
||||
CONFIG_SSI=y
|
||||
CONFIG_SSI_M25P80=y
|
||||
include microblaze-softmmu.mak
|
||||
|
||||
@@ -10,7 +10,6 @@
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/dma.h"
|
||||
#include "trace.h"
|
||||
#include "qemu/range.h"
|
||||
#include "qemu/thread.h"
|
||||
#include "qemu/main-loop.h"
|
||||
|
||||
|
||||
+2
-2
@@ -281,7 +281,7 @@ note that the other barrier may actually be in a driver that runs in
|
||||
the guest!
|
||||
|
||||
For the purposes of pairing, smp_read_barrier_depends() and smp_rmb()
|
||||
both count as read barriers. A read barriers shall pair with a write
|
||||
both count as read barriers. A read barrier shall pair with a write
|
||||
barrier or a full barrier; a write barrier shall pair with a read
|
||||
barrier or a full barrier. A full barrier can pair with anything.
|
||||
For example:
|
||||
@@ -294,7 +294,7 @@ For example:
|
||||
smp_rmb();
|
||||
y = a;
|
||||
|
||||
Note that the "writing" thread are accessing the variables in the
|
||||
Note that the "writing" thread is accessing the variables in the
|
||||
opposite order as the "reading" thread. This is expected: stores
|
||||
before the write barrier will normally match the loads after the
|
||||
read barrier, and vice versa. The same is true for more than 2
|
||||
|
||||
@@ -109,7 +109,6 @@ void set_link_completion(ReadLineState *rs, int nb_args, const char *str);
|
||||
void netdev_add_completion(ReadLineState *rs, int nb_args, const char *str);
|
||||
void netdev_del_completion(ReadLineState *rs, int nb_args, const char *str);
|
||||
void ringbuf_write_completion(ReadLineState *rs, int nb_args, const char *str);
|
||||
void ringbuf_read_completion(ReadLineState *rs, int nb_args, const char *str);
|
||||
void watchdog_action_completion(ReadLineState *rs, int nb_args,
|
||||
const char *str);
|
||||
void migrate_set_capability_completion(ReadLineState *rs, int nb_args,
|
||||
|
||||
@@ -31,7 +31,6 @@
|
||||
#include "hw/pci/pci.h"
|
||||
#include "hw/acpi/acpi.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "qemu/range.h"
|
||||
#include "exec/ioport.h"
|
||||
#include "exec/address-spaces.h"
|
||||
#include "hw/pci/pci_bus.h"
|
||||
|
||||
@@ -515,7 +515,7 @@ void virtio_blk_handle_request(VirtIOBlockReq *req, MultiReqBuffer *mrb)
|
||||
type = virtio_ldl_p(VIRTIO_DEVICE(req->dev), &req->out.type);
|
||||
|
||||
/* VIRTIO_BLK_T_OUT defines the command direction. VIRTIO_BLK_T_BARRIER
|
||||
* is an optional flag. Altough a guest should not send this flag if
|
||||
* is an optional flag. Although a guest should not send this flag if
|
||||
* not negotiated we ignored it in the past. So keep ignoring it. */
|
||||
switch (type & ~(VIRTIO_BLK_T_OUT | VIRTIO_BLK_T_BARRIER)) {
|
||||
case VIRTIO_BLK_T_IN:
|
||||
|
||||
+1
-1
@@ -696,7 +696,7 @@ static inline void qxl_push_free_res(PCIQXLDevice *d, int flush)
|
||||
|
||||
/* called from spice server thread context only */
|
||||
static void interface_release_resource(QXLInstance *sin,
|
||||
struct QXLReleaseInfoExt ext)
|
||||
QXLReleaseInfoExt ext)
|
||||
{
|
||||
PCIQXLDevice *qxl = container_of(sin, PCIQXLDevice, ssd.qxl);
|
||||
QXLReleaseRing *ring;
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
#include "qemu-common.h"
|
||||
#include "qemu/bitmap.h"
|
||||
#include "qemu/osdep.h"
|
||||
#include "qemu/range.h"
|
||||
#include "qemu/error-report.h"
|
||||
#include "hw/pci/pci.h"
|
||||
#include "qom/cpu.h"
|
||||
|
||||
@@ -113,15 +113,15 @@ void microblaze_load_kernel(MicroBlazeCPU *cpu, hwaddr ddr_base,
|
||||
const char *kernel_filename;
|
||||
const char *kernel_cmdline;
|
||||
const char *dtb_arg;
|
||||
char *filename = NULL;
|
||||
|
||||
machine_opts = qemu_get_machine_opts();
|
||||
kernel_filename = qemu_opt_get(machine_opts, "kernel");
|
||||
kernel_cmdline = qemu_opt_get(machine_opts, "append");
|
||||
dtb_arg = qemu_opt_get(machine_opts, "dtb");
|
||||
if (dtb_arg) { /* Preference a -dtb argument */
|
||||
dtb_filename = dtb_arg;
|
||||
} else { /* default to pcbios dtb as passed by machine_init */
|
||||
dtb_filename = qemu_find_file(QEMU_FILE_TYPE_BIOS, dtb_filename);
|
||||
/* default to pcbios dtb as passed by machine_init */
|
||||
if (!dtb_arg) {
|
||||
filename = qemu_find_file(QEMU_FILE_TYPE_BIOS, dtb_filename);
|
||||
}
|
||||
|
||||
boot_info.machine_cpu_reset = machine_cpu_reset;
|
||||
@@ -203,7 +203,8 @@ void microblaze_load_kernel(MicroBlazeCPU *cpu, hwaddr ddr_base,
|
||||
boot_info.initrd_start,
|
||||
boot_info.initrd_end,
|
||||
kernel_cmdline,
|
||||
dtb_filename);
|
||||
/* Preference a -dtb argument */
|
||||
dtb_arg ? dtb_arg : filename);
|
||||
}
|
||||
|
||||
g_free(filename);
|
||||
}
|
||||
|
||||
@@ -168,6 +168,7 @@ static int64_t load_kernel (CPUMIPSState *env)
|
||||
rom_add_blob_fixed("prom", prom_buf, prom_size,
|
||||
cpu_mips_kseg0_to_phys(NULL, ENVP_ADDR));
|
||||
|
||||
g_free(prom_buf);
|
||||
return kernel_entry;
|
||||
}
|
||||
|
||||
|
||||
@@ -861,6 +861,7 @@ static int64_t load_kernel (void)
|
||||
rom_add_blob_fixed("prom", prom_buf, prom_size,
|
||||
cpu_mips_kseg0_to_phys(NULL, ENVP_ADDR));
|
||||
|
||||
g_free(prom_buf);
|
||||
return kernel_entry;
|
||||
}
|
||||
|
||||
|
||||
@@ -139,6 +139,7 @@ static int64_t load_kernel(void)
|
||||
rom_add_blob_fixed("params", params_buf, params_size,
|
||||
(16 << 20) - 264);
|
||||
|
||||
g_free(params_buf);
|
||||
return entry;
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -279,7 +279,7 @@ static const MemoryRegionOps edu_mmio_ops = {
|
||||
};
|
||||
|
||||
/*
|
||||
* We purposedly use a thread, so that users are forced to wait for the status
|
||||
* We purposely use a thread, so that users are forced to wait for the status
|
||||
* register.
|
||||
*/
|
||||
static void *edu_fact_thread(void *opaque)
|
||||
|
||||
+1
-1
@@ -1590,7 +1590,7 @@ static void virtio_net_device_realize(DeviceState *dev, Error **errp)
|
||||
n->max_queues = MAX(n->nic_conf.peers.queues, 1);
|
||||
if (n->max_queues * 2 + 1 > VIRTIO_PCI_QUEUE_MAX) {
|
||||
error_setg(errp, "Invalid number of queues (= %" PRIu32 "), "
|
||||
"must be a postive integer less than %d.",
|
||||
"must be a positive integer less than %d.",
|
||||
n->max_queues, (VIRTIO_PCI_QUEUE_MAX - 1) / 2);
|
||||
virtio_cleanup(vdev);
|
||||
return;
|
||||
|
||||
@@ -172,13 +172,6 @@ bool vmxnet_rx_pkt_has_virt_hdr(struct VmxnetRxPkt *pkt)
|
||||
return pkt->has_virt_hdr;
|
||||
}
|
||||
|
||||
uint16_t vmxnet_rx_pkt_get_num_frags(struct VmxnetRxPkt *pkt)
|
||||
{
|
||||
assert(pkt);
|
||||
|
||||
return pkt->vec_len;
|
||||
}
|
||||
|
||||
uint16_t vmxnet_rx_pkt_get_vlan_tag(struct VmxnetRxPkt *pkt)
|
||||
{
|
||||
assert(pkt);
|
||||
|
||||
@@ -113,15 +113,6 @@ bool vmxnet_rx_pkt_is_vlan_stripped(struct VmxnetRxPkt *pkt);
|
||||
*/
|
||||
bool vmxnet_rx_pkt_has_virt_hdr(struct VmxnetRxPkt *pkt);
|
||||
|
||||
/**
|
||||
* returns number of frags attached to the packet
|
||||
*
|
||||
* @pkt: packet
|
||||
* @ret: number of frags
|
||||
*
|
||||
*/
|
||||
uint16_t vmxnet_rx_pkt_get_num_frags(struct VmxnetRxPkt *pkt);
|
||||
|
||||
/**
|
||||
* attach data to rx packet
|
||||
*
|
||||
|
||||
@@ -101,27 +101,6 @@ static const TypeInfo i82801b11_bridge_info = {
|
||||
.class_init = i82801b11_bridge_class_init,
|
||||
};
|
||||
|
||||
PCIBus *ich9_d2pbr_init(PCIBus *bus, int devfn, int sec_bus)
|
||||
{
|
||||
PCIDevice *d;
|
||||
PCIBridge *br;
|
||||
char buf[16];
|
||||
DeviceState *qdev;
|
||||
|
||||
d = pci_create_multifunction(bus, devfn, true, "i82801b11-bridge");
|
||||
if (!d) {
|
||||
return NULL;
|
||||
}
|
||||
br = PCI_BRIDGE(d);
|
||||
qdev = DEVICE(d);
|
||||
|
||||
snprintf(buf, sizeof(buf), "pci.%d", sec_bus);
|
||||
pci_bridge_map_irq(br, buf, pci_swizzle_map_irq_fn);
|
||||
qdev_init_nofail(qdev);
|
||||
|
||||
return pci_bridge_get_sec_bus(br);
|
||||
}
|
||||
|
||||
static void d2pbr_register(void)
|
||||
{
|
||||
type_register_static(&i82801b11_bridge_info);
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user