trivial patches for 2015-09-11
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQEcBAABAgAGBQJV8rTTAAoJEL7lnXSkw9fb32oIAJMjOm8SjmMM1HPBMrsuQHBN 0uaZ0SZvx9mAcs4NNBDVq/ZvOwVjKoWcgPHjJh7rC4SCkN+2O3R/Sv2AgohpIr6z cIlr+E9B5V1glTpsqLO6lZBLVYC5NFUXXZKV8jDQM4Orx4b5/cp76TtywE5QDDUZ yKXQlzsZGosuxlvueHupXRH1OO3EglLlbywvVxv2HoeC7uepZZ0kpVLtZsnDnqvT TpmSregx98TRIutEW2g0rwG0bEpzCW3WafDddhOR/29WCK7P/jJELbMEWlADx4sV 6SbL5qqSvrs1MpVXyFZY7OE+jrlOmplm4EYjsnjGODS1uk+QA/Y8YzvmBcPnODQ= =d3Hy -----END PGP SIGNATURE----- Merge remote-tracking branch 'remotes/mjt/tags/pull-trivial-patches-2015-09-11' into staging trivial patches for 2015-09-11 # gpg: Signature made Fri 11 Sep 2015 12:02:43 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-09-11: (26 commits) virtio-vga: enable for i386 hw/arm/spitz: Remove meaningless blank Property hw/gpio/zaurus: Remove meaningless blank Property hw/virtio/virtio-pci: Remove meaningless blank Property hw/s390x/s390-virtio-bus: Remove meaningless blank Property typofixes - v4 qapi-schema: remove legacy<> from doc disas/microblaze: Remove unused code help: dd missing newline Target-ppc: Remove unnecessary variable baum: Fix build with debugging enabled linux-user: Fix warnings caused by missing 'static' attribute opts: produce valid command line in qemu_opts_print docs: fix a qga/qapi-schema.json comment trivial: remove trailing newline from error_report maint: avoid useless "if (foo) free(foo)" pattern maint: avoid useless "if (foo) free(foo)" pattern maint: remove unused include for strings.h maint: remove unused include for signal.h maint: remove unused include for dirent.h ... Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
commit
ba9cef7b6e
@ -303,7 +303,7 @@ static int baum_eat_packet(BaumDriverState *baum, const uint8_t *buf, int len)
|
|||||||
return 0;
|
return 0;
|
||||||
cur++;
|
cur++;
|
||||||
}
|
}
|
||||||
DPRINTF("Dropped %d bytes!\n", cur - buf);
|
DPRINTF("Dropped %td bytes!\n", cur - buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
#define EAT(c) do {\
|
#define EAT(c) do {\
|
||||||
|
@ -83,9 +83,7 @@ static void set_mem_path(Object *o, const char *str, Error **errp)
|
|||||||
error_setg(errp, "cannot change property value");
|
error_setg(errp, "cannot change property value");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (fb->mem_path) {
|
|
||||||
g_free(fb->mem_path);
|
g_free(fb->mem_path);
|
||||||
}
|
|
||||||
fb->mem_path = g_strdup(str);
|
fb->mem_path = g_strdup(str);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -498,7 +498,7 @@ int qcow2_get_cluster_offset(BlockDriverState *bs, uint64_t offset,
|
|||||||
|
|
||||||
*cluster_offset = 0;
|
*cluster_offset = 0;
|
||||||
|
|
||||||
/* seek the the l2 offset in the l1 table */
|
/* seek to the l2 offset in the l1 table */
|
||||||
|
|
||||||
l1_index = offset >> l1_bits;
|
l1_index = offset >> l1_bits;
|
||||||
if (l1_index >= s->l1_size) {
|
if (l1_index >= s->l1_size) {
|
||||||
@ -612,7 +612,7 @@ static int get_cluster_table(BlockDriverState *bs, uint64_t offset,
|
|||||||
uint64_t *l2_table = NULL;
|
uint64_t *l2_table = NULL;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
/* seek the the l2 offset in the l1 table */
|
/* seek to the l2 offset in the l1 table */
|
||||||
|
|
||||||
l1_index = offset >> (s->l2_bits + s->cluster_bits);
|
l1_index = offset >> (s->l2_bits + s->cluster_bits);
|
||||||
if (l1_index >= s->l1_size) {
|
if (l1_index >= s->l1_size) {
|
||||||
|
@ -1294,7 +1294,7 @@ static int realloc_refcount_array(BDRVQcowState *s, void **array,
|
|||||||
/*
|
/*
|
||||||
* Increases the refcount for a range of clusters in a given refcount table.
|
* Increases the refcount for a range of clusters in a given refcount table.
|
||||||
* This is used to construct a temporary refcount table out of L1 and L2 tables
|
* This is used to construct a temporary refcount table out of L1 and L2 tables
|
||||||
* which can be compared the the refcount table saved in the image.
|
* which can be compared to the refcount table saved in the image.
|
||||||
*
|
*
|
||||||
* Modifies the number of errors in res.
|
* Modifies the number of errors in res.
|
||||||
*/
|
*/
|
||||||
|
@ -1454,7 +1454,7 @@ static int vhdx_create_new_metadata(BlockDriverState *bs,
|
|||||||
uint32_t offset = 0;
|
uint32_t offset = 0;
|
||||||
void *buffer = NULL;
|
void *buffer = NULL;
|
||||||
void *entry_buffer;
|
void *entry_buffer;
|
||||||
VHDXMetadataTableHeader *md_table;;
|
VHDXMetadataTableHeader *md_table;
|
||||||
VHDXMetadataTableEntry *md_table_entry;
|
VHDXMetadataTableEntry *md_table_entry;
|
||||||
|
|
||||||
/* Metadata entries */
|
/* Metadata entries */
|
||||||
|
@ -1355,9 +1355,7 @@ int load_elf_binary(struct linux_binprm * bprm, struct target_pt_regs * regs,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!bprm->p) {
|
if (!bprm->p) {
|
||||||
if (elf_interpreter) {
|
|
||||||
free(elf_interpreter);
|
free(elf_interpreter);
|
||||||
}
|
|
||||||
free (elf_phdata);
|
free (elf_phdata);
|
||||||
close(bprm->fd);
|
close(bprm->fd);
|
||||||
return -E2BIG;
|
return -E2BIG;
|
||||||
|
@ -21,7 +21,6 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <signal.h>
|
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
|
|
||||||
#include "qemu.h"
|
#include "qemu.h"
|
||||||
|
@ -7,6 +7,7 @@ CONFIG_QXL=$(CONFIG_SPICE)
|
|||||||
CONFIG_VGA_ISA=y
|
CONFIG_VGA_ISA=y
|
||||||
CONFIG_VGA_CIRRUS=y
|
CONFIG_VGA_CIRRUS=y
|
||||||
CONFIG_VMWARE_VGA=y
|
CONFIG_VMWARE_VGA=y
|
||||||
|
CONFIG_VIRTIO_VGA=y
|
||||||
CONFIG_VMMOUSE=y
|
CONFIG_VMMOUSE=y
|
||||||
CONFIG_SERIAL=y
|
CONFIG_SERIAL=y
|
||||||
CONFIG_PARALLEL=y
|
CONFIG_PARALLEL=y
|
||||||
|
@ -357,7 +357,7 @@ fetch_data(struct disassemble_info *info, bfd_byte *addr)
|
|||||||
#define Rd { OP_R, d_mode }
|
#define Rd { OP_R, d_mode }
|
||||||
#define Rm { OP_R, m_mode }
|
#define Rm { OP_R, m_mode }
|
||||||
#define Ib { OP_I, b_mode }
|
#define Ib { OP_I, b_mode }
|
||||||
#define sIb { OP_sI, b_mode } /* sign extened byte */
|
#define sIb { OP_sI, b_mode } /* sign extended byte */
|
||||||
#define Iv { OP_I, v_mode }
|
#define Iv { OP_I, v_mode }
|
||||||
#define Iq { OP_I, q_mode }
|
#define Iq { OP_I, q_mode }
|
||||||
#define Iv64 { OP_I64, v_mode }
|
#define Iv64 { OP_I64, v_mode }
|
||||||
|
@ -18,7 +18,6 @@
|
|||||||
along with this file; see the file COPYING. If not, see
|
along with this file; see the file COPYING. If not, see
|
||||||
<http://www.gnu.org/licenses/>. */
|
<http://www.gnu.org/licenses/>. */
|
||||||
|
|
||||||
#include <assert.h>
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#include "disas/bfd.h"
|
#include "disas/bfd.h"
|
||||||
|
@ -582,7 +582,6 @@ static const char pvr_register_prefix[] = "rpvr";
|
|||||||
#endif /* MICROBLAZE_OPC */
|
#endif /* MICROBLAZE_OPC */
|
||||||
|
|
||||||
#include "disas/bfd.h"
|
#include "disas/bfd.h"
|
||||||
#include <strings.h>
|
|
||||||
|
|
||||||
#define get_field_rd(instr) get_field(instr, RD_MASK, RD_LOW)
|
#define get_field_rd(instr) get_field(instr, RD_MASK, RD_LOW)
|
||||||
#define get_field_r1(instr) get_field(instr, RA_MASK, RA_LOW)
|
#define get_field_r1(instr) get_field(instr, RA_MASK, RA_LOW)
|
||||||
@ -604,25 +603,6 @@ char * get_field_special (long instr, struct op_code_struct * op);
|
|||||||
unsigned long read_insn_microblaze (bfd_vma memaddr,
|
unsigned long read_insn_microblaze (bfd_vma memaddr,
|
||||||
struct disassemble_info *info,
|
struct disassemble_info *info,
|
||||||
struct op_code_struct **opr);
|
struct op_code_struct **opr);
|
||||||
enum microblaze_instr get_insn_microblaze (long inst,
|
|
||||||
bfd_boolean *isunsignedimm,
|
|
||||||
enum microblaze_instr_type *insn_type,
|
|
||||||
short *delay_slots);
|
|
||||||
short get_delay_slots_microblaze (long inst);
|
|
||||||
enum microblaze_instr microblaze_decode_insn (long insn,
|
|
||||||
int *rd,
|
|
||||||
int *ra,
|
|
||||||
int *rb,
|
|
||||||
int *imm);
|
|
||||||
unsigned long
|
|
||||||
microblaze_get_target_address (long inst,
|
|
||||||
bfd_boolean immfound,
|
|
||||||
int immval,
|
|
||||||
long pcval,
|
|
||||||
long r1val,
|
|
||||||
long r2val,
|
|
||||||
bfd_boolean *targetvalid,
|
|
||||||
bfd_boolean *unconditionalbranch);
|
|
||||||
|
|
||||||
static char *
|
static char *
|
||||||
get_field (long instr, long mask, unsigned short low)
|
get_field (long instr, long mask, unsigned short low)
|
||||||
@ -968,134 +948,3 @@ print_insn_microblaze (bfd_vma memaddr, struct disassemble_info * info)
|
|||||||
/* Say how many bytes we consumed? */
|
/* Say how many bytes we consumed? */
|
||||||
return 4;
|
return 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
enum microblaze_instr
|
|
||||||
get_insn_microblaze (long inst,
|
|
||||||
bfd_boolean *isunsignedimm,
|
|
||||||
enum microblaze_instr_type *insn_type,
|
|
||||||
short *delay_slots)
|
|
||||||
{
|
|
||||||
struct op_code_struct * op;
|
|
||||||
*isunsignedimm = FALSE;
|
|
||||||
|
|
||||||
/* Just a linear search of the table. */
|
|
||||||
for (op = opcodes; op->name != 0; op ++)
|
|
||||||
if (op->bit_sequence == (inst & op->opcode_mask))
|
|
||||||
break;
|
|
||||||
|
|
||||||
if (op->name == 0)
|
|
||||||
return invalid_inst;
|
|
||||||
else {
|
|
||||||
*isunsignedimm = (op->inst_type == INST_TYPE_RD_R1_UNSIGNED_IMM);
|
|
||||||
*insn_type = op->instr_type;
|
|
||||||
*delay_slots = op->delay_slots;
|
|
||||||
return op->instr;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
short
|
|
||||||
get_delay_slots_microblaze (long inst)
|
|
||||||
{
|
|
||||||
bfd_boolean isunsignedimm;
|
|
||||||
enum microblaze_instr_type insn_type;
|
|
||||||
enum microblaze_instr op;
|
|
||||||
short delay_slots;
|
|
||||||
|
|
||||||
op = get_insn_microblaze( inst, &isunsignedimm, &insn_type, &delay_slots);
|
|
||||||
if (op == invalid_inst)
|
|
||||||
return 0;
|
|
||||||
else
|
|
||||||
return delay_slots;
|
|
||||||
}
|
|
||||||
|
|
||||||
enum microblaze_instr
|
|
||||||
microblaze_decode_insn (long insn,
|
|
||||||
int *rd,
|
|
||||||
int *ra,
|
|
||||||
int *rb,
|
|
||||||
int *imm)
|
|
||||||
{
|
|
||||||
enum microblaze_instr op;
|
|
||||||
bfd_boolean t1;
|
|
||||||
enum microblaze_instr_type t2;
|
|
||||||
short t3;
|
|
||||||
|
|
||||||
op = get_insn_microblaze(insn, &t1, &t2, &t3);
|
|
||||||
*rd = (insn & RD_MASK) >> RD_LOW;
|
|
||||||
*ra = (insn & RA_MASK) >> RA_LOW;
|
|
||||||
*rb = (insn & RB_MASK) >> RB_LOW;
|
|
||||||
t3 = (insn & IMM_MASK) >> IMM_LOW;
|
|
||||||
*imm = (int) t3;
|
|
||||||
return (op);
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned long
|
|
||||||
microblaze_get_target_address (long inst,
|
|
||||||
bfd_boolean immfound,
|
|
||||||
int immval,
|
|
||||||
long pcval,
|
|
||||||
long r1val,
|
|
||||||
long r2val,
|
|
||||||
bfd_boolean *targetvalid,
|
|
||||||
bfd_boolean *unconditionalbranch)
|
|
||||||
{
|
|
||||||
struct op_code_struct * op;
|
|
||||||
long targetaddr = 0;
|
|
||||||
|
|
||||||
*unconditionalbranch = FALSE;
|
|
||||||
/* Just a linear search of the table. */
|
|
||||||
for (op = opcodes; op->name != 0; op ++)
|
|
||||||
if (op->bit_sequence == (inst & op->opcode_mask))
|
|
||||||
break;
|
|
||||||
|
|
||||||
if (op->name == 0) {
|
|
||||||
*targetvalid = FALSE;
|
|
||||||
} else if (op->instr_type == branch_inst) {
|
|
||||||
switch (op->inst_type) {
|
|
||||||
case INST_TYPE_R2:
|
|
||||||
*unconditionalbranch = TRUE;
|
|
||||||
/* fallthru */
|
|
||||||
case INST_TYPE_RD_R2:
|
|
||||||
case INST_TYPE_R1_R2:
|
|
||||||
targetaddr = r2val;
|
|
||||||
*targetvalid = TRUE;
|
|
||||||
if (op->inst_offset_type == INST_PC_OFFSET)
|
|
||||||
targetaddr += pcval;
|
|
||||||
break;
|
|
||||||
case INST_TYPE_IMM:
|
|
||||||
*unconditionalbranch = TRUE;
|
|
||||||
/* fallthru */
|
|
||||||
case INST_TYPE_RD_IMM:
|
|
||||||
case INST_TYPE_R1_IMM:
|
|
||||||
if (immfound) {
|
|
||||||
targetaddr = (immval << 16) & 0xffff0000;
|
|
||||||
targetaddr |= (get_int_field_imm(inst) & 0x0000ffff);
|
|
||||||
} else {
|
|
||||||
targetaddr = get_int_field_imm(inst);
|
|
||||||
if (targetaddr & 0x8000)
|
|
||||||
targetaddr |= 0xFFFF0000;
|
|
||||||
}
|
|
||||||
if (op->inst_offset_type == INST_PC_OFFSET)
|
|
||||||
targetaddr += pcval;
|
|
||||||
*targetvalid = TRUE;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
*targetvalid = FALSE;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
} else if (op->instr_type == return_inst) {
|
|
||||||
if (immfound) {
|
|
||||||
targetaddr = (immval << 16) & 0xffff0000;
|
|
||||||
targetaddr |= (get_int_field_imm(inst) & 0x0000ffff);
|
|
||||||
} else {
|
|
||||||
targetaddr = get_int_field_imm(inst);
|
|
||||||
if (targetaddr & 0x8000)
|
|
||||||
targetaddr |= 0xFFFF0000;
|
|
||||||
}
|
|
||||||
targetaddr += r1val;
|
|
||||||
*targetvalid = TRUE;
|
|
||||||
} else {
|
|
||||||
*targetvalid = FALSE;
|
|
||||||
}
|
|
||||||
return targetaddr;
|
|
||||||
}
|
|
||||||
|
@ -613,7 +613,7 @@ static const struct s390_operand s390_operands[] =
|
|||||||
names of the instruction format that you can find in the principals
|
names of the instruction format that you can find in the principals
|
||||||
of operation.
|
of operation.
|
||||||
2) the last part of the definition (y in INSTR_x_y) gives you an idea
|
2) the last part of the definition (y in INSTR_x_y) gives you an idea
|
||||||
which operands the binary represenation of the instruction has.
|
which operands the binary representation of the instruction has.
|
||||||
The meanings of the letters in y are:
|
The meanings of the letters in y are:
|
||||||
a - access register
|
a - access register
|
||||||
c - control register
|
c - control register
|
||||||
@ -627,7 +627,7 @@ static const struct s390_operand s390_operands[] =
|
|||||||
m - mode field, 4 bit
|
m - mode field, 4 bit
|
||||||
0 - operand skipped.
|
0 - operand skipped.
|
||||||
The order of the letters reflects the layout of the format in
|
The order of the letters reflects the layout of the format in
|
||||||
storage and not the order of the paramaters of the instructions.
|
storage and not the order of the parameters of the instructions.
|
||||||
The use of the letters is not a 100% match with the PoP but it is
|
The use of the letters is not a 100% match with the PoP but it is
|
||||||
quite close.
|
quite close.
|
||||||
|
|
||||||
|
@ -2622,7 +2622,6 @@ build_hash_table (const sparc_opcode **opcode_table,
|
|||||||
|
|
||||||
memset (hash_table, 0, HASH_SIZE * sizeof (hash_table[0]));
|
memset (hash_table, 0, HASH_SIZE * sizeof (hash_table[0]));
|
||||||
memset (hash_count, 0, HASH_SIZE * sizeof (hash_count[0]));
|
memset (hash_count, 0, HASH_SIZE * sizeof (hash_count[0]));
|
||||||
if (hash_buf != NULL)
|
|
||||||
free(hash_buf);
|
free(hash_buf);
|
||||||
hash_buf = malloc (sizeof (* hash_buf) * num_opcodes);
|
hash_buf = malloc (sizeof (* hash_buf) * num_opcodes);
|
||||||
for (i = num_opcodes - 1; i >= 0; --i)
|
for (i = num_opcodes - 1; i >= 0; --i)
|
||||||
|
@ -327,7 +327,7 @@ and applet.
|
|||||||
|
|
||||||
int vcard_emul_get_login_count(VCard *card);
|
int vcard_emul_get_login_count(VCard *card);
|
||||||
|
|
||||||
This function returns the the number of remaining login attempts for this
|
This function returns the number of remaining login attempts for this
|
||||||
card. If the card emulator does not know, or the card does not have a
|
card. If the card emulator does not know, or the card does not have a
|
||||||
way of giving this information, this function returns -1.
|
way of giving this information, this function returns -1.
|
||||||
|
|
||||||
@ -421,7 +421,7 @@ functions:
|
|||||||
The vcard is the value returned from vcard_new. The type is the
|
The vcard is the value returned from vcard_new. The type is the
|
||||||
card type emulator that this card should presented to the guest as.
|
card type emulator that this card should presented to the guest as.
|
||||||
The flags are card type emulator specific options. The certs,
|
The flags are card type emulator specific options. The certs,
|
||||||
cert_len, and keys are all arrays of length cert_count. These are the
|
cert_len, and keys are all arrays of length cert_count. These are
|
||||||
the same of the parameters xxxx_card_init() accepts.
|
the same of the parameters xxxx_card_init() accepts.
|
||||||
|
|
||||||
Finally the card is associated with its reader by the call:
|
Finally the card is associated with its reader by the call:
|
||||||
|
@ -135,7 +135,7 @@ configuration:
|
|||||||
TAG+="seat", ENV{ID_AUTOSEAT}="1"
|
TAG+="seat", ENV{ID_AUTOSEAT}="1"
|
||||||
|
|
||||||
Patch with this rule has been submitted to upstream udev/systemd, was
|
Patch with this rule has been submitted to upstream udev/systemd, was
|
||||||
accepted and and should be included in the next systemd release (222).
|
accepted and should be included in the next systemd release (222).
|
||||||
So, if your guest has this or a newer version, multiseat will work just
|
So, if your guest has this or a newer version, multiseat will work just
|
||||||
fine without any manual guest configuration.
|
fine without any manual guest configuration.
|
||||||
|
|
||||||
|
@ -41,8 +41,8 @@ When the guest runs in "real mode" (in powerpc lingua this means
|
|||||||
with MMU disabled, ie guest effective == guest physical), it only
|
with MMU disabled, ie guest effective == guest physical), it only
|
||||||
has access to a subset of memory and no IOs.
|
has access to a subset of memory and no IOs.
|
||||||
|
|
||||||
PAPR provides a set of hypervisor calls to perform cachable or
|
PAPR provides a set of hypervisor calls to perform cacheable or
|
||||||
non-cachable accesses to any guest physical addresses that the
|
non-cacheable accesses to any guest physical addresses that the
|
||||||
guest can use in order to access IO devices while in real mode.
|
guest can use in order to access IO devices while in real mode.
|
||||||
|
|
||||||
This is typically used by the firmware running in the guest.
|
This is typically used by the firmware running in the guest.
|
||||||
|
@ -257,7 +257,7 @@ L2 table entry:
|
|||||||
|
|
||||||
63: 0 for a cluster that is unused or requires COW, 1 if its
|
63: 0 for a cluster that is unused or requires COW, 1 if its
|
||||||
refcount is exactly one. This information is only accurate
|
refcount is exactly one. This information is only accurate
|
||||||
in L2 tables that are reachable from the the active L1
|
in L2 tables that are reachable from the active L1
|
||||||
table.
|
table.
|
||||||
|
|
||||||
Standard Cluster Descriptor:
|
Standard Cluster Descriptor:
|
||||||
|
@ -297,7 +297,7 @@ but not fired. If only partial credits are returned, the interrupt remains
|
|||||||
masked but the device generates an interrupt, signaling the driver that more
|
masked but the device generates an interrupt, signaling the driver that more
|
||||||
outstanding work is available.
|
outstanding work is available.
|
||||||
|
|
||||||
(* this masking is unrelated to to the MSI-X interrupt mask register)
|
(* this masking is unrelated to the MSI-X interrupt mask register)
|
||||||
|
|
||||||
Endianness
|
Endianness
|
||||||
----------
|
----------
|
||||||
|
@ -122,7 +122,7 @@ There are a few things to be noticed:
|
|||||||
Now a little hack is needed. As we're still using the old QMP server we need
|
Now a little hack is needed. As we're still using the old QMP server we need
|
||||||
to add the new command to its internal dispatch table. This step won't be
|
to add the new command to its internal dispatch table. This step won't be
|
||||||
required in the near future. Open the qmp-commands.hx file and add the
|
required in the near future. Open the qmp-commands.hx file and add the
|
||||||
following in the botton:
|
following at the bottom:
|
||||||
|
|
||||||
{
|
{
|
||||||
.name = "hello-world",
|
.name = "hello-world",
|
||||||
|
@ -14,7 +14,6 @@
|
|||||||
#include <glib.h>
|
#include <glib.h>
|
||||||
#include <glib/gprintf.h>
|
#include <glib/gprintf.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <dirent.h>
|
|
||||||
#include <sys/time.h>
|
#include <sys/time.h>
|
||||||
#include <utime.h>
|
#include <utime.h>
|
||||||
#include <sys/uio.h>
|
#include <sys/uio.h>
|
||||||
|
@ -1060,10 +1060,6 @@ static VMStateDescription vmstate_spitz_kbd = {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
static Property spitz_keyboard_properties[] = {
|
|
||||||
DEFINE_PROP_END_OF_LIST(),
|
|
||||||
};
|
|
||||||
|
|
||||||
static void spitz_keyboard_class_init(ObjectClass *klass, void *data)
|
static void spitz_keyboard_class_init(ObjectClass *klass, void *data)
|
||||||
{
|
{
|
||||||
DeviceClass *dc = DEVICE_CLASS(klass);
|
DeviceClass *dc = DEVICE_CLASS(klass);
|
||||||
@ -1071,7 +1067,6 @@ static void spitz_keyboard_class_init(ObjectClass *klass, void *data)
|
|||||||
|
|
||||||
k->init = spitz_keyboard_init;
|
k->init = spitz_keyboard_init;
|
||||||
dc->vmsd = &vmstate_spitz_kbd;
|
dc->vmsd = &vmstate_spitz_kbd;
|
||||||
dc->props = spitz_keyboard_properties;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static const TypeInfo spitz_keyboard_info = {
|
static const TypeInfo spitz_keyboard_info = {
|
||||||
|
@ -541,7 +541,7 @@ static void vexpress_common_init(MachineState *machine)
|
|||||||
{
|
{
|
||||||
VexpressMachineState *vms = VEXPRESS_MACHINE(machine);
|
VexpressMachineState *vms = VEXPRESS_MACHINE(machine);
|
||||||
VexpressMachineClass *vmc = VEXPRESS_MACHINE_GET_CLASS(machine);
|
VexpressMachineClass *vmc = VEXPRESS_MACHINE_GET_CLASS(machine);
|
||||||
VEDBoardInfo *daughterboard = vmc->daughterboard;;
|
VEDBoardInfo *daughterboard = vmc->daughterboard;
|
||||||
DeviceState *dev, *sysctl, *pl041;
|
DeviceState *dev, *sysctl, *pl041;
|
||||||
qemu_irq pic[64];
|
qemu_irq pic[64];
|
||||||
uint32_t sys_id;
|
uint32_t sys_id;
|
||||||
@ -762,7 +762,7 @@ static void vexpress_a9_class_init(ObjectClass *oc, void *data)
|
|||||||
mc->name = TYPE_VEXPRESS_A9_MACHINE;
|
mc->name = TYPE_VEXPRESS_A9_MACHINE;
|
||||||
mc->desc = "ARM Versatile Express for Cortex-A9";
|
mc->desc = "ARM Versatile Express for Cortex-A9";
|
||||||
|
|
||||||
vmc->daughterboard = &a9_daughterboard;;
|
vmc->daughterboard = &a9_daughterboard;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void vexpress_a15_class_init(ObjectClass *oc, void *data)
|
static void vexpress_a15_class_init(ObjectClass *oc, void *data)
|
||||||
|
@ -1177,7 +1177,7 @@ void OPLResetChip(FM_OPL *OPL)
|
|||||||
OPLWriteReg(OPL,0x03,0); /* Timer2 */
|
OPLWriteReg(OPL,0x03,0); /* Timer2 */
|
||||||
OPLWriteReg(OPL,0x04,0); /* IRQ mask clear */
|
OPLWriteReg(OPL,0x04,0); /* IRQ mask clear */
|
||||||
for(i = 0xff ; i >= 0x20 ; i-- ) OPLWriteReg(OPL,i,0);
|
for(i = 0xff ; i >= 0x20 ; i-- ) OPLWriteReg(OPL,i,0);
|
||||||
/* reset OPerator paramater */
|
/* reset operator parameter */
|
||||||
for( c = 0 ; c < OPL->max_ch ; c++ )
|
for( c = 0 ; c < OPL->max_ch ; c++ )
|
||||||
{
|
{
|
||||||
OPL_CH *CH = &OPL->P_CH[c];
|
OPL_CH *CH = &OPL->P_CH[c];
|
||||||
|
@ -24,7 +24,6 @@
|
|||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <signal.h>
|
|
||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
|
@ -1151,7 +1151,6 @@ static void bt_hci_reset(struct bt_hci_s *hci)
|
|||||||
hci->event_mask[7] = 0x00;
|
hci->event_mask[7] = 0x00;
|
||||||
hci->device.inquiry_scan = 0;
|
hci->device.inquiry_scan = 0;
|
||||||
hci->device.page_scan = 0;
|
hci->device.page_scan = 0;
|
||||||
if (hci->device.lmp_name)
|
|
||||||
g_free((void *) hci->device.lmp_name);
|
g_free((void *) hci->device.lmp_name);
|
||||||
hci->device.lmp_name = NULL;
|
hci->device.lmp_name = NULL;
|
||||||
hci->device.class[0] = 0x00;
|
hci->device.class[0] = 0x00;
|
||||||
@ -1829,7 +1828,6 @@ static void bt_submit_hci(struct HCIInfo *info,
|
|||||||
case cmd_opcode_pack(OGF_HOST_CTL, OCF_CHANGE_LOCAL_NAME):
|
case cmd_opcode_pack(OGF_HOST_CTL, OCF_CHANGE_LOCAL_NAME):
|
||||||
LENGTH_CHECK(change_local_name);
|
LENGTH_CHECK(change_local_name);
|
||||||
|
|
||||||
if (hci->device.lmp_name)
|
|
||||||
g_free((void *) hci->device.lmp_name);
|
g_free((void *) hci->device.lmp_name);
|
||||||
hci->device.lmp_name = g_strndup(PARAM(change_local_name, name),
|
hci->device.lmp_name = g_strndup(PARAM(change_local_name, name),
|
||||||
sizeof(PARAM(change_local_name, name)));
|
sizeof(PARAM(change_local_name, name)));
|
||||||
@ -2231,7 +2229,6 @@ static void bt_hci_done(struct HCIInfo *info)
|
|||||||
|
|
||||||
bt_device_done(&hci->device);
|
bt_device_done(&hci->device);
|
||||||
|
|
||||||
if (hci->device.lmp_name)
|
|
||||||
g_free((void *) hci->device.lmp_name);
|
g_free((void *) hci->device.lmp_name);
|
||||||
|
|
||||||
/* Be gentle and send DISCONNECT to all connected peers and those
|
/* Be gentle and send DISCONNECT to all connected peers and those
|
||||||
|
@ -234,10 +234,8 @@ static int fifo_empty_elements_number(Exynos4210UartFIFO *q)
|
|||||||
|
|
||||||
static void fifo_reset(Exynos4210UartFIFO *q)
|
static void fifo_reset(Exynos4210UartFIFO *q)
|
||||||
{
|
{
|
||||||
if (q->data != NULL) {
|
|
||||||
g_free(q->data);
|
g_free(q->data);
|
||||||
q->data = NULL;
|
q->data = NULL;
|
||||||
}
|
|
||||||
|
|
||||||
q->data = (uint8_t *)g_malloc0(q->size);
|
q->data = (uint8_t *)g_malloc0(q->size);
|
||||||
|
|
||||||
|
@ -594,7 +594,6 @@ static int load_uboot_image(const char *filename, hwaddr *ep, hwaddr *loadaddr,
|
|||||||
ret = hdr->ih_size;
|
ret = hdr->ih_size;
|
||||||
|
|
||||||
out:
|
out:
|
||||||
if (data)
|
|
||||||
g_free(data);
|
g_free(data);
|
||||||
close(fd);
|
close(fd);
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -422,9 +422,7 @@ static void set_string(Object *obj, Visitor *v, void *opaque,
|
|||||||
error_propagate(errp, local_err);
|
error_propagate(errp, local_err);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (*ptr) {
|
|
||||||
g_free(*ptr);
|
g_free(*ptr);
|
||||||
}
|
|
||||||
*ptr = str;
|
*ptr = str;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -506,7 +506,7 @@ qemu_irq qdev_get_gpio_out_connector(DeviceState *dev, const char *name, int n)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* disconnect a GPIO ouput, returning the disconnected input (if any) */
|
/* disconnect a GPIO output, returning the disconnected input (if any) */
|
||||||
|
|
||||||
static qemu_irq qdev_disconnect_gpio_out_named(DeviceState *dev,
|
static qemu_irq qdev_disconnect_gpio_out_named(DeviceState *dev,
|
||||||
const char *name, int n)
|
const char *name, int n)
|
||||||
|
@ -138,7 +138,7 @@ static void tempsensor_clkedge(struct tempsensor_t *s,
|
|||||||
s->count = 16;
|
s->count = 16;
|
||||||
|
|
||||||
if ((s->regs[0] & 0xff) == 0) {
|
if ((s->regs[0] & 0xff) == 0) {
|
||||||
/* 25 degrees celcius. */
|
/* 25 degrees celsius. */
|
||||||
s->shiftreg = 0x0b9f;
|
s->shiftreg = 0x0b9f;
|
||||||
} else if ((s->regs[0] & 0xff) == 0xff) {
|
} else if ((s->regs[0] & 0xff) == 0xff) {
|
||||||
/* Sensor ID, 0x8100 LM70. */
|
/* Sensor ID, 0x8100 LM70. */
|
||||||
|
@ -1354,9 +1354,7 @@ static void exynos4210_fimd_reset(DeviceState *d)
|
|||||||
fimd_update_get_alpha(s, w);
|
fimd_update_get_alpha(s, w);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (s->ifb != NULL) {
|
|
||||||
g_free(s->ifb);
|
g_free(s->ifb);
|
||||||
}
|
|
||||||
s->ifb = NULL;
|
s->ifb = NULL;
|
||||||
|
|
||||||
exynos4210_fimd_invalidate(s);
|
exynos4210_fimd_invalidate(s);
|
||||||
|
@ -159,7 +159,7 @@ static void qxl_render_update_area_unlocked(PCIQXLDevice *qxl)
|
|||||||
/*
|
/*
|
||||||
* use ssd.lock to protect render_update_cookie_num.
|
* use ssd.lock to protect render_update_cookie_num.
|
||||||
* qxl_render_update is called by io thread or vcpu thread, and the completion
|
* qxl_render_update is called by io thread or vcpu thread, and the completion
|
||||||
* callbacks are called by spice_server thread, defering to bh called from the
|
* callbacks are called by spice_server thread, deferring to bh called from the
|
||||||
* io thread.
|
* io thread.
|
||||||
*/
|
*/
|
||||||
void qxl_render_update(PCIQXLDevice *qxl)
|
void qxl_render_update(PCIQXLDevice *qxl)
|
||||||
|
@ -133,7 +133,7 @@ struct XilinxAXIDMA {
|
|||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Helper calls to extract info from desriptors and other trivial
|
* Helper calls to extract info from descriptors and other trivial
|
||||||
* state from regs.
|
* state from regs.
|
||||||
*/
|
*/
|
||||||
static inline int stream_desc_sof(struct SDesc *d)
|
static inline int stream_desc_sof(struct SDesc *d)
|
||||||
|
@ -235,10 +235,6 @@ static const VMStateDescription vmstate_scoop_regs = {
|
|||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
static Property scoop_sysbus_properties[] = {
|
|
||||||
DEFINE_PROP_END_OF_LIST(),
|
|
||||||
};
|
|
||||||
|
|
||||||
static void scoop_sysbus_class_init(ObjectClass *klass, void *data)
|
static void scoop_sysbus_class_init(ObjectClass *klass, void *data)
|
||||||
{
|
{
|
||||||
DeviceClass *dc = DEVICE_CLASS(klass);
|
DeviceClass *dc = DEVICE_CLASS(klass);
|
||||||
@ -247,7 +243,6 @@ static void scoop_sysbus_class_init(ObjectClass *klass, void *data)
|
|||||||
k->init = scoop_init;
|
k->init = scoop_init;
|
||||||
dc->desc = "Scoop2 Sharp custom ASIC";
|
dc->desc = "Scoop2 Sharp custom ASIC";
|
||||||
dc->vmsd = &vmstate_scoop_regs;
|
dc->vmsd = &vmstate_scoop_regs;
|
||||||
dc->props = scoop_sysbus_properties;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static const TypeInfo scoop_sysbus_info = {
|
static const TypeInfo scoop_sysbus_info = {
|
||||||
|
@ -23,8 +23,6 @@
|
|||||||
* THE SOFTWARE.
|
* THE SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <assert.h>
|
|
||||||
|
|
||||||
#include "hw/hw.h"
|
#include "hw/hw.h"
|
||||||
#include "hw/i386/pc.h"
|
#include "hw/i386/pc.h"
|
||||||
#include "hw/ide.h"
|
#include "hw/ide.h"
|
||||||
|
@ -876,7 +876,7 @@ static int ahci_populate_sglist(AHCIDevice *ad, QEMUSGList *sglist,
|
|||||||
limit - sglist->size));
|
limit - sglist->size));
|
||||||
if (sglist->size > INT32_MAX) {
|
if (sglist->size > INT32_MAX) {
|
||||||
error_report("AHCI Physical Region Descriptor Table describes "
|
error_report("AHCI Physical Region Descriptor Table describes "
|
||||||
"more than 2 GiB.\n");
|
"more than 2 GiB.");
|
||||||
qemu_sglist_destroy(sglist);
|
qemu_sglist_destroy(sglist);
|
||||||
r = -1;
|
r = -1;
|
||||||
goto out;
|
goto out;
|
||||||
|
@ -69,7 +69,7 @@ static const VMStateDescription vmstate_stellaris_gamepad = {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Returns an array 5 ouput slots. */
|
/* Returns an array of 5 output slots. */
|
||||||
void stellaris_gamepad_init(int n, qemu_irq *irq, const int *keycode)
|
void stellaris_gamepad_init(int n, qemu_irq *irq, const int *keycode)
|
||||||
{
|
{
|
||||||
gamepad_state *s;
|
gamepad_state *s;
|
||||||
|
@ -323,7 +323,7 @@ uint32_t gic_acknowledge_irq(GICState *s, int cpu, MemTxAttrs attrs)
|
|||||||
* for the case where this GIC supports grouping and the pending interrupt
|
* for the case where this GIC supports grouping and the pending interrupt
|
||||||
* is in the wrong group.
|
* is in the wrong group.
|
||||||
*/
|
*/
|
||||||
irq = gic_get_current_pending_irq(s, cpu, attrs);;
|
irq = gic_get_current_pending_irq(s, cpu, attrs);
|
||||||
|
|
||||||
if (irq >= GIC_MAXIRQ) {
|
if (irq >= GIC_MAXIRQ) {
|
||||||
DPRINTF("ACK, no pending interrupt or it is hidden: %d\n", irq);
|
DPRINTF("ACK, no pending interrupt or it is hidden: %d\n", irq);
|
||||||
|
@ -739,7 +739,7 @@ int xics_alloc(XICSState *icp, int src, int irq_hint, bool lsi)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Allocate block of consequtive IRQs, returns a number of the first.
|
* Allocate block of consecutive IRQs, and return the number of the first IRQ in the block.
|
||||||
* If align==true, aligns the first IRQ number to num.
|
* If align==true, aligns the first IRQ number to num.
|
||||||
*/
|
*/
|
||||||
int xics_alloc_block(XICSState *icp, int src, int num, bool lsi, bool align)
|
int xics_alloc_block(XICSState *icp, int src, int num, bool lsi, bool align)
|
||||||
|
@ -252,9 +252,7 @@ void mips_r4k_init(MachineState *machine)
|
|||||||
fprintf(stderr, "qemu: Warning, could not load MIPS bios '%s'\n",
|
fprintf(stderr, "qemu: Warning, could not load MIPS bios '%s'\n",
|
||||||
bios_name);
|
bios_name);
|
||||||
}
|
}
|
||||||
if (filename) {
|
|
||||||
g_free(filename);
|
g_free(filename);
|
||||||
}
|
|
||||||
|
|
||||||
if (kernel_filename) {
|
if (kernel_filename) {
|
||||||
loaderparams.ram_size = ram_size;
|
loaderparams.ram_size = ram_size;
|
||||||
|
@ -353,7 +353,7 @@ static ssize_t etsec_receive(NetClientState *nc,
|
|||||||
etsec->need_flush = false;
|
etsec->need_flush = false;
|
||||||
ret = etsec_rx_ring_write(etsec, buf, size);
|
ret = etsec_rx_ring_write(etsec, buf, size);
|
||||||
if (ret == 0) {
|
if (ret == 0) {
|
||||||
/* The packet will be queued, let's flush it when buffer is avilable
|
/* The packet will be queued, let's flush it when buffer is available
|
||||||
* again. */
|
* again. */
|
||||||
etsec->need_flush = true;
|
etsec->need_flush = true;
|
||||||
}
|
}
|
||||||
|
@ -464,9 +464,7 @@ static void rx_init_frame(eTSEC *etsec, const uint8_t *buf, size_t size)
|
|||||||
etsec->rx_fcb_size = 0;
|
etsec->rx_fcb_size = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (etsec->rx_buffer != NULL) {
|
|
||||||
g_free(etsec->rx_buffer);
|
g_free(etsec->rx_buffer);
|
||||||
}
|
|
||||||
|
|
||||||
/* Do not copy the frame for now */
|
/* Do not copy the frame for now */
|
||||||
etsec->rx_buffer = (uint8_t *)buf;
|
etsec->rx_buffer = (uint8_t *)buf;
|
||||||
|
@ -265,10 +265,8 @@ err_bad_io:
|
|||||||
err_no_mem:
|
err_no_mem:
|
||||||
err_bad_attr:
|
err_bad_attr:
|
||||||
for (i = 0; i < ROCKER_TX_FRAGS_MAX; i++) {
|
for (i = 0; i < ROCKER_TX_FRAGS_MAX; i++) {
|
||||||
if (iov[i].iov_base) {
|
|
||||||
g_free(iov[i].iov_base);
|
g_free(iov[i].iov_base);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
@ -136,10 +136,8 @@ bool desc_ring_set_size(DescRing *ring, uint32_t size)
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < ring->size; i++) {
|
for (i = 0; i < ring->size; i++) {
|
||||||
if (ring->info[i].buf) {
|
|
||||||
g_free(ring->info[i].buf);
|
g_free(ring->info[i].buf);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
ring->size = size;
|
ring->size = size;
|
||||||
ring->head = ring->tail = 0;
|
ring->head = ring->tail = 0;
|
||||||
@ -360,9 +358,7 @@ DescRing *desc_ring_alloc(Rocker *r, int index)
|
|||||||
|
|
||||||
void desc_ring_free(DescRing *ring)
|
void desc_ring_free(DescRing *ring)
|
||||||
{
|
{
|
||||||
if (ring->info) {
|
|
||||||
g_free(ring->info);
|
g_free(ring->info);
|
||||||
}
|
|
||||||
g_free(ring);
|
g_free(ring);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -43,7 +43,7 @@
|
|||||||
* Added rx/tx buffer reset when enabling rx/tx operation
|
* Added rx/tx buffer reset when enabling rx/tx operation
|
||||||
*
|
*
|
||||||
* 2010-Feb-04 Frediano Ziglio: Rewrote timer support using QEMU timer only
|
* 2010-Feb-04 Frediano Ziglio: Rewrote timer support using QEMU timer only
|
||||||
* when strictly needed (required for for
|
* when strictly needed (required for
|
||||||
* Darwin)
|
* Darwin)
|
||||||
* 2011-Mar-22 Benjamin Poirier: Implemented VLAN offloading
|
* 2011-Mar-22 Benjamin Poirier: Implemented VLAN offloading
|
||||||
*/
|
*/
|
||||||
@ -3391,10 +3391,8 @@ static void pci_rtl8139_uninit(PCIDevice *dev)
|
|||||||
{
|
{
|
||||||
RTL8139State *s = RTL8139(dev);
|
RTL8139State *s = RTL8139(dev);
|
||||||
|
|
||||||
if (s->cplus_txbuffer) {
|
|
||||||
g_free(s->cplus_txbuffer);
|
g_free(s->cplus_txbuffer);
|
||||||
s->cplus_txbuffer = NULL;
|
s->cplus_txbuffer = NULL;
|
||||||
}
|
|
||||||
timer_del(s->timer);
|
timer_del(s->timer);
|
||||||
timer_free(s->timer);
|
timer_free(s->timer);
|
||||||
qemu_del_nic(s->nic);
|
qemu_del_nic(s->nic);
|
||||||
|
@ -24,7 +24,6 @@
|
|||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <signal.h>
|
|
||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
|
@ -187,9 +187,7 @@ static void fw_cfg_bootsplash(FWCfgState *s)
|
|||||||
g_free(filename);
|
g_free(filename);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (boot_splash_filedata != NULL) {
|
|
||||||
g_free(boot_splash_filedata);
|
g_free(boot_splash_filedata);
|
||||||
}
|
|
||||||
boot_splash_filedata = (uint8_t *)file_data;
|
boot_splash_filedata = (uint8_t *)file_data;
|
||||||
boot_splash_filedata_size = file_size;
|
boot_splash_filedata_size = file_size;
|
||||||
|
|
||||||
|
@ -328,11 +328,9 @@ static void raven_realize(PCIDevice *d, Error **errp)
|
|||||||
if (bios_size < 0 || bios_size > BIOS_SIZE) {
|
if (bios_size < 0 || bios_size > BIOS_SIZE) {
|
||||||
hw_error("qemu: could not load bios image '%s'\n", s->bios_name);
|
hw_error("qemu: could not load bios image '%s'\n", s->bios_name);
|
||||||
}
|
}
|
||||||
if (filename) {
|
|
||||||
g_free(filename);
|
g_free(filename);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
static const VMStateDescription vmstate_raven = {
|
static const VMStateDescription vmstate_raven = {
|
||||||
.name = "raven",
|
.name = "raven",
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
#include "qemu-common.h"
|
#include "qemu-common.h"
|
||||||
#include <strings.h>
|
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include "qemu/range.h"
|
#include "qemu/range.h"
|
||||||
#include "qemu/error-report.h"
|
#include "qemu/error-report.h"
|
||||||
|
@ -1460,10 +1460,8 @@ static void spapr_pci_pre_save(void *opaque)
|
|||||||
gpointer key, value;
|
gpointer key, value;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
if (sphb->msi_devs) {
|
|
||||||
g_free(sphb->msi_devs);
|
g_free(sphb->msi_devs);
|
||||||
sphb->msi_devs = NULL;
|
sphb->msi_devs = NULL;
|
||||||
}
|
|
||||||
sphb->msi_devs_num = g_hash_table_size(sphb->msi);
|
sphb->msi_devs_num = g_hash_table_size(sphb->msi);
|
||||||
if (!sphb->msi_devs_num) {
|
if (!sphb->msi_devs_num) {
|
||||||
return;
|
return;
|
||||||
@ -1490,10 +1488,8 @@ static int spapr_pci_post_load(void *opaque, int version_id)
|
|||||||
sizeof(sphb->msi_devs[i].value));
|
sizeof(sphb->msi_devs[i].value));
|
||||||
g_hash_table_insert(sphb->msi, key, value);
|
g_hash_table_insert(sphb->msi, key, value);
|
||||||
}
|
}
|
||||||
if (sphb->msi_devs) {
|
|
||||||
g_free(sphb->msi_devs);
|
g_free(sphb->msi_devs);
|
||||||
sphb->msi_devs = NULL;
|
sphb->msi_devs = NULL;
|
||||||
}
|
|
||||||
sphb->msi_devs_num = 0;
|
sphb->msi_devs_num = 0;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -577,17 +577,12 @@ static const TypeInfo s390_virtio_blk = {
|
|||||||
.class_init = s390_virtio_blk_class_init,
|
.class_init = s390_virtio_blk_class_init,
|
||||||
};
|
};
|
||||||
|
|
||||||
static Property s390_virtio_serial_properties[] = {
|
|
||||||
DEFINE_PROP_END_OF_LIST(),
|
|
||||||
};
|
|
||||||
|
|
||||||
static void s390_virtio_serial_class_init(ObjectClass *klass, void *data)
|
static void s390_virtio_serial_class_init(ObjectClass *klass, void *data)
|
||||||
{
|
{
|
||||||
DeviceClass *dc = DEVICE_CLASS(klass);
|
DeviceClass *dc = DEVICE_CLASS(klass);
|
||||||
VirtIOS390DeviceClass *k = VIRTIO_S390_DEVICE_CLASS(klass);
|
VirtIOS390DeviceClass *k = VIRTIO_S390_DEVICE_CLASS(klass);
|
||||||
|
|
||||||
k->realize = s390_virtio_serial_realize;
|
k->realize = s390_virtio_serial_realize;
|
||||||
dc->props = s390_virtio_serial_properties;
|
|
||||||
set_bit(DEVICE_CATEGORY_INPUT, dc->categories);
|
set_bit(DEVICE_CATEGORY_INPUT, dc->categories);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ typedef struct PL181State {
|
|||||||
int32_t fifo_pos;
|
int32_t fifo_pos;
|
||||||
int32_t fifo_len;
|
int32_t fifo_len;
|
||||||
/* The linux 2.6.21 driver is buggy, and misbehaves if new data arrives
|
/* The linux 2.6.21 driver is buggy, and misbehaves if new data arrives
|
||||||
while it is reading the FIFO. We hack around this be defering
|
while it is reading the FIFO. We hack around this by deferring
|
||||||
subsequent transfers until after the driver polls the status word.
|
subsequent transfers until after the driver polls the status word.
|
||||||
http://www.arm.linux.org.uk/developer/patches/viewpatch.php?id=4446/1
|
http://www.arm.linux.org.uk/developer/patches/viewpatch.php?id=4446/1
|
||||||
*/
|
*/
|
||||||
|
@ -412,7 +412,6 @@ static void sd_reset(SDState *sd)
|
|||||||
sd_set_cardstatus(sd);
|
sd_set_cardstatus(sd);
|
||||||
sd_set_sdstatus(sd);
|
sd_set_sdstatus(sd);
|
||||||
|
|
||||||
if (sd->wp_groups)
|
|
||||||
g_free(sd->wp_groups);
|
g_free(sd->wp_groups);
|
||||||
sd->wp_switch = sd->blk ? blk_is_read_only(sd->blk) : false;
|
sd->wp_switch = sd->blk ? blk_is_read_only(sd->blk) : false;
|
||||||
sd->wpgrps_size = sect;
|
sd->wpgrps_size = sect;
|
||||||
|
@ -1169,11 +1169,9 @@ static void sdhci_uninitfn(SDHCIState *s)
|
|||||||
qemu_free_irq(s->eject_cb);
|
qemu_free_irq(s->eject_cb);
|
||||||
qemu_free_irq(s->ro_cb);
|
qemu_free_irq(s->ro_cb);
|
||||||
|
|
||||||
if (s->fifo_buffer) {
|
|
||||||
g_free(s->fifo_buffer);
|
g_free(s->fifo_buffer);
|
||||||
s->fifo_buffer = NULL;
|
s->fifo_buffer = NULL;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
const VMStateDescription sdhci_vmstate = {
|
const VMStateDescription sdhci_vmstate = {
|
||||||
.name = "sdhci",
|
.name = "sdhci",
|
||||||
|
@ -22,8 +22,6 @@
|
|||||||
* License along with this library; if not, see <http://www.gnu.org/licenses/>
|
* License along with this library; if not, see <http://www.gnu.org/licenses/>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <dirent.h>
|
|
||||||
|
|
||||||
#include "qemu-common.h"
|
#include "qemu-common.h"
|
||||||
#include "qapi/error.h"
|
#include "qapi/error.h"
|
||||||
#include "qemu/error-report.h"
|
#include "qemu/error-report.h"
|
||||||
|
@ -95,11 +95,9 @@ static void usb_ehci_pci_exit(PCIDevice *dev)
|
|||||||
|
|
||||||
usb_ehci_unrealize(s, DEVICE(dev), NULL);
|
usb_ehci_unrealize(s, DEVICE(dev), NULL);
|
||||||
|
|
||||||
if (s->irq) {
|
|
||||||
g_free(s->irq);
|
g_free(s->irq);
|
||||||
s->irq = NULL;
|
s->irq = NULL;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
static void usb_ehci_pci_reset(DeviceState *dev)
|
static void usb_ehci_pci_reset(DeviceState *dev)
|
||||||
{
|
{
|
||||||
|
@ -1453,9 +1453,7 @@ static int xhci_ep_nuke_one_xfer(XHCITransfer *t, TRBCCode report)
|
|||||||
t->running_retry = 0;
|
t->running_retry = 0;
|
||||||
killed = 1;
|
killed = 1;
|
||||||
}
|
}
|
||||||
if (t->trbs) {
|
|
||||||
g_free(t->trbs);
|
g_free(t->trbs);
|
||||||
}
|
|
||||||
|
|
||||||
t->trbs = NULL;
|
t->trbs = NULL;
|
||||||
t->trb_count = t->trb_alloced = 0;
|
t->trb_count = t->trb_alloced = 0;
|
||||||
|
@ -1429,7 +1429,7 @@ static void usb_host_free_streams(USBDevice *udev, USBEndpoint **eps,
|
|||||||
* still present in the first place. Attemping to contine where we
|
* still present in the first place. Attemping to contine where we
|
||||||
* left off is impossible.
|
* left off is impossible.
|
||||||
*
|
*
|
||||||
* What we are going to to to here is emulate a surprise removal of
|
* What we are going to do here is emulate a surprise removal of
|
||||||
* the usb device passed through, then kick host scan so the device
|
* the usb device passed through, then kick host scan so the device
|
||||||
* will get re-attached (and re-initialized by the guest) in case it
|
* will get re-attached (and re-initialized by the guest) in case it
|
||||||
* is still present.
|
* is still present.
|
||||||
|
@ -33,9 +33,7 @@
|
|||||||
#include "qemu/iov.h"
|
#include "qemu/iov.h"
|
||||||
#include "sysemu/char.h"
|
#include "sysemu/char.h"
|
||||||
|
|
||||||
#include <dirent.h>
|
|
||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
#include <signal.h>
|
|
||||||
#include <usbredirparser.h>
|
#include <usbredirparser.h>
|
||||||
#include <usbredirfilter.h>
|
#include <usbredirfilter.h>
|
||||||
|
|
||||||
|
@ -226,7 +226,7 @@ static int vfio_dma_map(VFIOContainer *container, hwaddr iova,
|
|||||||
/*
|
/*
|
||||||
* Try the mapping, if it fails with EBUSY, unmap the region and try
|
* Try the mapping, if it fails with EBUSY, unmap the region and try
|
||||||
* again. This shouldn't be necessary, but we sometimes see it in
|
* again. This shouldn't be necessary, but we sometimes see it in
|
||||||
* the the VGA ROM space.
|
* the VGA ROM space.
|
||||||
*/
|
*/
|
||||||
if (ioctl(container->fd, VFIO_IOMMU_MAP_DMA, &map) == 0 ||
|
if (ioctl(container->fd, VFIO_IOMMU_MAP_DMA, &map) == 0 ||
|
||||||
(errno == EBUSY && vfio_dma_unmap(container, iova, size) == 0 &&
|
(errno == EBUSY && vfio_dma_unmap(container, iova, size) == 0 &&
|
||||||
|
@ -18,7 +18,6 @@
|
|||||||
* Copyright (C) 2008, IBM, Muli Ben-Yehuda (muli@il.ibm.com)
|
* Copyright (C) 2008, IBM, Muli Ben-Yehuda (muli@il.ibm.com)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <dirent.h>
|
|
||||||
#include <linux/vfio.h>
|
#include <linux/vfio.h>
|
||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
#include <sys/mman.h>
|
#include <sys/mman.h>
|
||||||
@ -3378,7 +3377,7 @@ static bool vfio_radeon_smc_is_running(VFIOPCIDevice *vdev)
|
|||||||
uint32_t clk, pc_c;
|
uint32_t clk, pc_c;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Registers 200h and 204h are index and data registers for acessing
|
* Registers 200h and 204h are index and data registers for accessing
|
||||||
* indirect configuration registers within the device.
|
* indirect configuration registers within the device.
|
||||||
*/
|
*/
|
||||||
vfio_region_write(&vdev->bars[5].region, 0x200, 0x80000004, 4);
|
vfio_region_write(&vdev->bars[5].region, 0x200, 0x80000004, 4);
|
||||||
|
@ -234,7 +234,7 @@ static void vfio_intp_interrupt(VFIOINTp *intp)
|
|||||||
|
|
||||||
ret = event_notifier_test_and_clear(&intp->interrupt);
|
ret = event_notifier_test_and_clear(&intp->interrupt);
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
error_report("Error when clearing fd=%d (ret = %d)\n",
|
error_report("Error when clearing fd=%d (ret = %d)",
|
||||||
event_notifier_get_fd(&intp->interrupt), ret);
|
event_notifier_get_fd(&intp->interrupt), ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2007,10 +2007,6 @@ static const TypeInfo virtio_net_pci_info = {
|
|||||||
|
|
||||||
/* virtio-rng-pci */
|
/* virtio-rng-pci */
|
||||||
|
|
||||||
static Property virtio_rng_pci_properties[] = {
|
|
||||||
DEFINE_PROP_END_OF_LIST(),
|
|
||||||
};
|
|
||||||
|
|
||||||
static void virtio_rng_pci_realize(VirtIOPCIProxy *vpci_dev, Error **errp)
|
static void virtio_rng_pci_realize(VirtIOPCIProxy *vpci_dev, Error **errp)
|
||||||
{
|
{
|
||||||
VirtIORngPCI *vrng = VIRTIO_RNG_PCI(vpci_dev);
|
VirtIORngPCI *vrng = VIRTIO_RNG_PCI(vpci_dev);
|
||||||
@ -2037,7 +2033,6 @@ static void virtio_rng_pci_class_init(ObjectClass *klass, void *data)
|
|||||||
|
|
||||||
k->realize = virtio_rng_pci_realize;
|
k->realize = virtio_rng_pci_realize;
|
||||||
set_bit(DEVICE_CATEGORY_MISC, dc->categories);
|
set_bit(DEVICE_CATEGORY_MISC, dc->categories);
|
||||||
dc->props = virtio_rng_pci_properties;
|
|
||||||
|
|
||||||
pcidev_k->vendor_id = PCI_VENDOR_ID_REDHAT_QUMRANET;
|
pcidev_k->vendor_id = PCI_VENDOR_ID_REDHAT_QUMRANET;
|
||||||
pcidev_k->device_id = PCI_DEVICE_ID_VIRTIO_RNG;
|
pcidev_k->device_id = PCI_DEVICE_ID_VIRTIO_RNG;
|
||||||
|
@ -136,7 +136,7 @@ static void i6300esb_restart_timer(I6300State *d, int stage)
|
|||||||
* multiply here can exceed 64-bits, before we divide by 33MHz, so
|
* multiply here can exceed 64-bits, before we divide by 33MHz, so
|
||||||
* we use a higher-precision intermediate result.
|
* we use a higher-precision intermediate result.
|
||||||
*/
|
*/
|
||||||
timeout = muldiv64(get_ticks_per_sec(), timeout, 33000000);
|
timeout = muldiv64(timeout, get_ticks_per_sec(), 33000000);
|
||||||
|
|
||||||
i6300esb_debug("stage %d, timeout %" PRIi64 "\n", d->stage, timeout);
|
i6300esb_debug("stage %d, timeout %" PRIi64 "\n", d->stage, timeout);
|
||||||
|
|
||||||
|
@ -40,7 +40,7 @@ static int xen_host_pci_sysfs_path(const XenHostPCIDevice *d,
|
|||||||
d->domain, d->bus, d->dev, d->func, name);
|
d->domain, d->bus, d->dev, d->func, name);
|
||||||
|
|
||||||
if (rc >= size || rc < 0) {
|
if (rc >= size || rc < 0) {
|
||||||
/* The ouput is truncated or an other error is encountered */
|
/* The output is truncated, or some other error was encountered */
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -2081,9 +2081,7 @@ void xen_pt_config_delete(XenPCIPassthroughState *s)
|
|||||||
if (s->msix) {
|
if (s->msix) {
|
||||||
xen_pt_msix_delete(s);
|
xen_pt_msix_delete(s);
|
||||||
}
|
}
|
||||||
if (s->msi) {
|
|
||||||
g_free(s->msi);
|
g_free(s->msi);
|
||||||
}
|
|
||||||
|
|
||||||
/* free all register group entry */
|
/* free all register group entry */
|
||||||
QLIST_FOREACH_SAFE(reg_group, &s->reg_grps, entries, next_grp) {
|
QLIST_FOREACH_SAFE(reg_group, &s->reg_grps, entries, next_grp) {
|
||||||
|
@ -23,7 +23,7 @@ typedef struct BlockDriverInfo {
|
|||||||
bool is_dirty;
|
bool is_dirty;
|
||||||
/*
|
/*
|
||||||
* True if unallocated blocks read back as zeroes. This is equivalent
|
* True if unallocated blocks read back as zeroes. This is equivalent
|
||||||
* to the the LBPRZ flag in the SCSI logical block provisioning page.
|
* to the LBPRZ flag in the SCSI logical block provisioning page.
|
||||||
*/
|
*/
|
||||||
bool unallocated_blocks_are_zero;
|
bool unallocated_blocks_are_zero;
|
||||||
/*
|
/*
|
||||||
|
@ -229,7 +229,7 @@ const char *scsi_command_name(uint8_t cmd);
|
|||||||
#define MODE_PAGE_TO_PROTECT 0x1d
|
#define MODE_PAGE_TO_PROTECT 0x1d
|
||||||
#define MODE_PAGE_CAPABILITIES 0x2a
|
#define MODE_PAGE_CAPABILITIES 0x2a
|
||||||
#define MODE_PAGE_ALLS 0x3f
|
#define MODE_PAGE_ALLS 0x3f
|
||||||
/* Not in Mt. Fuji, but in ATAPI 2.6 -- depricated now in favor
|
/* Not in Mt. Fuji, but in ATAPI 2.6 -- deprecated now in favor
|
||||||
* of MODE_PAGE_SENSE_POWER */
|
* of MODE_PAGE_SENSE_POWER */
|
||||||
#define MODE_PAGE_CDROM 0x0d
|
#define MODE_PAGE_CDROM 0x0d
|
||||||
|
|
||||||
|
@ -324,7 +324,7 @@ void memory_region_unref(MemoryRegion *mr);
|
|||||||
* @owner: the object that tracks the region's reference count
|
* @owner: the object that tracks the region's reference count
|
||||||
* @ops: a structure containing read and write callbacks to be used when
|
* @ops: a structure containing read and write callbacks to be used when
|
||||||
* I/O is performed on the region.
|
* I/O is performed on the region.
|
||||||
* @opaque: passed to to the read and write callbacks of the @ops structure.
|
* @opaque: passed to the read and write callbacks of the @ops structure.
|
||||||
* @name: used for debugging; not visible to the user or ABI
|
* @name: used for debugging; not visible to the user or ABI
|
||||||
* @size: size of the region.
|
* @size: size of the region.
|
||||||
*/
|
*/
|
||||||
@ -1146,7 +1146,7 @@ MemTxResult memory_region_dispatch_write(MemoryRegion *mr,
|
|||||||
* address_space_init: initializes an address space
|
* address_space_init: initializes an address space
|
||||||
*
|
*
|
||||||
* @as: an uninitialized #AddressSpace
|
* @as: an uninitialized #AddressSpace
|
||||||
* @root: a #MemoryRegion that routes addesses for the address space
|
* @root: a #MemoryRegion that routes addresses for the address space
|
||||||
* @name: an address space name. The name is only used for debugging
|
* @name: an address space name. The name is only used for debugging
|
||||||
* output.
|
* output.
|
||||||
*/
|
*/
|
||||||
|
@ -57,7 +57,7 @@ struct VCardAPDUHeader {
|
|||||||
unsigned char ah_p1;
|
unsigned char ah_p1;
|
||||||
unsigned char ah_p2;
|
unsigned char ah_p2;
|
||||||
unsigned char ah_Le;
|
unsigned char ah_Le;
|
||||||
unsigned char ah_body[1]; /* indefinate length */
|
unsigned char ah_body[1]; /* indefinite length */
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -186,7 +186,7 @@ uInt decContextGetStatus(decContext *context) {
|
|||||||
/* newstatus is the source for the bits to be restored */
|
/* newstatus is the source for the bits to be restored */
|
||||||
/* mask indicates the bits to be restored (the status bit that */
|
/* mask indicates the bits to be restored (the status bit that */
|
||||||
/* corresponds to each 1 bit in the mask is set to the value of */
|
/* corresponds to each 1 bit in the mask is set to the value of */
|
||||||
/* the correspnding bit in newstatus) */
|
/* the corresponding bit in newstatus) */
|
||||||
/* returns context */
|
/* returns context */
|
||||||
/* */
|
/* */
|
||||||
/* No error is possible. */
|
/* No error is possible. */
|
||||||
|
@ -2238,7 +2238,7 @@ decNumber * decNumberPower(decNumber *res, const decNumber *lhs,
|
|||||||
/* if a negative power the constant 1 is needed, and if not subset */
|
/* if a negative power the constant 1 is needed, and if not subset */
|
||||||
/* invert the lhs now rather than inverting the result later */
|
/* invert the lhs now rather than inverting the result later */
|
||||||
if (decNumberIsNegative(rhs)) { /* was a **-n [hence digits>0] */
|
if (decNumberIsNegative(rhs)) { /* was a **-n [hence digits>0] */
|
||||||
decNumber *inv=invbuff; /* asssume use fixed buffer */
|
decNumber *inv=invbuff; /* assume use fixed buffer */
|
||||||
decNumberCopy(&dnOne, dac); /* dnOne=1; [needed now or later] */
|
decNumberCopy(&dnOne, dac); /* dnOne=1; [needed now or later] */
|
||||||
#if DECSUBSET
|
#if DECSUBSET
|
||||||
if (set->extended) { /* need to calculate 1/lhs */
|
if (set->extended) { /* need to calculate 1/lhs */
|
||||||
@ -3849,7 +3849,7 @@ static void decToString(const decNumber *dn, char *string, Flag eng) {
|
|||||||
/* */
|
/* */
|
||||||
/* Addition, especially x=x+1, is speed-critical. */
|
/* Addition, especially x=x+1, is speed-critical. */
|
||||||
/* The static buffer is larger than might be expected to allow for */
|
/* The static buffer is larger than might be expected to allow for */
|
||||||
/* calls from higher-level funtions (notable exp). */
|
/* calls from higher-level functions (notably exp). */
|
||||||
/* ------------------------------------------------------------------ */
|
/* ------------------------------------------------------------------ */
|
||||||
static decNumber * decAddOp(decNumber *res, const decNumber *lhs,
|
static decNumber * decAddOp(decNumber *res, const decNumber *lhs,
|
||||||
const decNumber *rhs, decContext *set,
|
const decNumber *rhs, decContext *set,
|
||||||
@ -4263,7 +4263,7 @@ static decNumber * decAddOp(decNumber *res, const decNumber *lhs,
|
|||||||
/* long subtractions. These are acc and var1 respectively. */
|
/* long subtractions. These are acc and var1 respectively. */
|
||||||
/* var1 is a copy of the lhs coefficient, var2 is the rhs coefficient.*/
|
/* var1 is a copy of the lhs coefficient, var2 is the rhs coefficient.*/
|
||||||
/* The static buffers may be larger than might be expected to allow */
|
/* The static buffers may be larger than might be expected to allow */
|
||||||
/* for calls from higher-level funtions (notable exp). */
|
/* for calls from higher-level functions (notably exp). */
|
||||||
/* ------------------------------------------------------------------ */
|
/* ------------------------------------------------------------------ */
|
||||||
static decNumber * decDivideOp(decNumber *res,
|
static decNumber * decDivideOp(decNumber *res,
|
||||||
const decNumber *lhs, const decNumber *rhs,
|
const decNumber *lhs, const decNumber *rhs,
|
||||||
@ -5254,7 +5254,7 @@ static decNumber * decMultiplyOp(decNumber *res, const decNumber *lhs,
|
|||||||
/* exp(-x) where x can be the tiniest number (Ntiny). */
|
/* exp(-x) where x can be the tiniest number (Ntiny). */
|
||||||
/* */
|
/* */
|
||||||
/* 2. Normalizing x to be <=0.1 (instead of <=1) reduces loop */
|
/* 2. Normalizing x to be <=0.1 (instead of <=1) reduces loop */
|
||||||
/* iterations by appoximately a third with additional (although */
|
/* iterations by approximately a third with additional (although */
|
||||||
/* diminishing) returns as the range is reduced to even smaller */
|
/* diminishing) returns as the range is reduced to even smaller */
|
||||||
/* fractions. However, h (the power of 10 used to correct the */
|
/* fractions. However, h (the power of 10 used to correct the */
|
||||||
/* result at the end, see below) must be kept <=8 as otherwise */
|
/* result at the end, see below) must be kept <=8 as otherwise */
|
||||||
|
@ -3014,7 +3014,7 @@ static int elf_core_dump(int signr, const CPUArchState *env)
|
|||||||
if (dump_write(fd, &elf, sizeof (elf)) != 0)
|
if (dump_write(fd, &elf, sizeof (elf)) != 0)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
/* fill in in-memory version of notes */
|
/* fill in the in-memory version of notes */
|
||||||
if (fill_note_info(&info, signr, env) < 0)
|
if (fill_note_info(&info, signr, env) < 0)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
|
@ -37,10 +37,10 @@
|
|||||||
char *exec_path;
|
char *exec_path;
|
||||||
|
|
||||||
int singlestep;
|
int singlestep;
|
||||||
const char *filename;
|
static const char *filename;
|
||||||
const char *argv0;
|
static const char *argv0;
|
||||||
int gdbstub_port;
|
static int gdbstub_port;
|
||||||
envlist_t *envlist;
|
static envlist_t *envlist;
|
||||||
static const char *cpu_model;
|
static const char *cpu_model;
|
||||||
unsigned long mmap_min_addr;
|
unsigned long mmap_min_addr;
|
||||||
unsigned long guest_base;
|
unsigned long guest_base;
|
||||||
|
@ -22,7 +22,6 @@
|
|||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <assert.h>
|
|
||||||
#include <sys/ucontext.h>
|
#include <sys/ucontext.h>
|
||||||
#include <sys/resource.h>
|
#include <sys/resource.h>
|
||||||
|
|
||||||
|
@ -3939,7 +3939,6 @@ static abi_long do_ioctl(int fd, int cmd, abi_long arg)
|
|||||||
break;
|
break;
|
||||||
case TYPE_PTRVOID:
|
case TYPE_PTRVOID:
|
||||||
case TYPE_INT:
|
case TYPE_INT:
|
||||||
/* int argment */
|
|
||||||
ret = get_errno(ioctl(fd, ie->host_cmd, arg));
|
ret = get_errno(ioctl(fd, ie->host_cmd, arg));
|
||||||
break;
|
break;
|
||||||
case TYPE_PTR:
|
case TYPE_PTR:
|
||||||
|
@ -969,7 +969,7 @@ struct target_pollfd {
|
|||||||
(struct cdrom_multisession) */
|
(struct cdrom_multisession) */
|
||||||
#define TARGET_CDROM_GET_MCN 0x5311 /* Obtain the "Universal Product Code"
|
#define TARGET_CDROM_GET_MCN 0x5311 /* Obtain the "Universal Product Code"
|
||||||
if available (struct cdrom_mcn) */
|
if available (struct cdrom_mcn) */
|
||||||
#define TARGET_CDROM_GET_UPC TARGET_CDROM_GET_MCN /* This one is depricated,
|
#define TARGET_CDROM_GET_UPC TARGET_CDROM_GET_MCN /* This one is deprecated,
|
||||||
but here anyway for compatibility */
|
but here anyway for compatibility */
|
||||||
#define TARGET_CDROMRESET 0x5312 /* hard-reset the drive */
|
#define TARGET_CDROMRESET 0x5312 /* hard-reset the drive */
|
||||||
#define TARGET_CDROMVOLREAD 0x5313 /* Get the drive's volume setting
|
#define TARGET_CDROMVOLREAD 0x5313 /* Get the drive's volume setting
|
||||||
@ -2289,7 +2289,7 @@ struct target_f_owner_ex {
|
|||||||
};
|
};
|
||||||
|
|
||||||
/* soundcard defines */
|
/* soundcard defines */
|
||||||
/* XXX: convert them all to arch indepedent entries */
|
/* XXX: convert them all to arch independent entries */
|
||||||
#define TARGET_SNDCTL_COPR_HALT TARGET_IOWR('C', 7, int);
|
#define TARGET_SNDCTL_COPR_HALT TARGET_IOWR('C', 7, int);
|
||||||
#define TARGET_SNDCTL_COPR_LOAD 0xcfb04301
|
#define TARGET_SNDCTL_COPR_LOAD 0xcfb04301
|
||||||
#define TARGET_SNDCTL_COPR_RCODE 0xc0144303
|
#define TARGET_SNDCTL_COPR_RCODE 0xc0144303
|
||||||
|
@ -778,7 +778,7 @@ static void qemu_rdma_dump_gid(const char *who, struct rdma_cm_id *id)
|
|||||||
*
|
*
|
||||||
* If the source VM connects with an IPv4 address without knowing that the
|
* If the source VM connects with an IPv4 address without knowing that the
|
||||||
* destination has bound to '[::]' the migration will unconditionally fail
|
* destination has bound to '[::]' the migration will unconditionally fail
|
||||||
* unless the management software is explicitly listening on the the IPv4
|
* unless the management software is explicitly listening on the IPv4
|
||||||
* address while using a RoCE-based device.
|
* address while using a RoCE-based device.
|
||||||
*
|
*
|
||||||
* If the source VM connects with an IPv6 address, then we're OK because we can
|
* If the source VM connects with an IPv6 address, then we're OK because we can
|
||||||
|
@ -551,9 +551,7 @@ void unregister_savevm(DeviceState *dev, const char *idstr, void *opaque)
|
|||||||
QTAILQ_FOREACH_SAFE(se, &savevm_state.handlers, entry, new_se) {
|
QTAILQ_FOREACH_SAFE(se, &savevm_state.handlers, entry, new_se) {
|
||||||
if (strcmp(se->idstr, id) == 0 && se->opaque == opaque) {
|
if (strcmp(se->idstr, id) == 0 && se->opaque == opaque) {
|
||||||
QTAILQ_REMOVE(&savevm_state.handlers, se, entry);
|
QTAILQ_REMOVE(&savevm_state.handlers, se, entry);
|
||||||
if (se->compat) {
|
|
||||||
g_free(se->compat);
|
g_free(se->compat);
|
||||||
}
|
|
||||||
g_free(se->ops);
|
g_free(se->ops);
|
||||||
g_free(se);
|
g_free(se);
|
||||||
}
|
}
|
||||||
@ -612,9 +610,7 @@ void vmstate_unregister(DeviceState *dev, const VMStateDescription *vmsd,
|
|||||||
QTAILQ_FOREACH_SAFE(se, &savevm_state.handlers, entry, new_se) {
|
QTAILQ_FOREACH_SAFE(se, &savevm_state.handlers, entry, new_se) {
|
||||||
if (se->vmsd == vmsd && se->opaque == opaque) {
|
if (se->vmsd == vmsd && se->opaque == opaque) {
|
||||||
QTAILQ_REMOVE(&savevm_state.handlers, se, entry);
|
QTAILQ_REMOVE(&savevm_state.handlers, se, entry);
|
||||||
if (se->compat) {
|
|
||||||
g_free(se->compat);
|
g_free(se->compat);
|
||||||
}
|
|
||||||
g_free(se);
|
g_free(se);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -211,7 +211,7 @@ int tap_fd_set_vnet_le(int fd, int is_le)
|
|||||||
return -errno;
|
return -errno;
|
||||||
}
|
}
|
||||||
|
|
||||||
error_report("TUNSETVNETLE ioctl() failed: %s.\n", strerror(errno));
|
error_report("TUNSETVNETLE ioctl() failed: %s.", strerror(errno));
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -228,7 +228,7 @@ int tap_fd_set_vnet_be(int fd, int is_be)
|
|||||||
return -errno;
|
return -errno;
|
||||||
}
|
}
|
||||||
|
|
||||||
error_report("TUNSETVNETBE ioctl() failed: %s.\n", strerror(errno));
|
error_report("TUNSETVNETBE ioctl() failed: %s.", strerror(errno));
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
2
numa.c
2
numa.c
@ -280,7 +280,7 @@ static void validate_numa_cpus(void)
|
|||||||
bitmap_and(seen_cpus, seen_cpus,
|
bitmap_and(seen_cpus, seen_cpus,
|
||||||
numa_info[i].node_cpu, MAX_CPUMASK_BITS);
|
numa_info[i].node_cpu, MAX_CPUMASK_BITS);
|
||||||
error_report("CPU(s) present in multiple NUMA nodes: %s",
|
error_report("CPU(s) present in multiple NUMA nodes: %s",
|
||||||
enumerate_cpus(seen_cpus, max_cpus));;
|
enumerate_cpus(seen_cpus, max_cpus));
|
||||||
exit(EXIT_FAILURE);
|
exit(EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
bitmap_or(seen_cpus, seen_cpus,
|
bitmap_or(seen_cpus, seen_cpus,
|
||||||
|
@ -26,7 +26,6 @@
|
|||||||
#include <mmsystem.h>
|
#include <mmsystem.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <signal.h>
|
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <sys/time.h>
|
#include <sys/time.h>
|
||||||
|
@ -15,7 +15,6 @@
|
|||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <strings.h>
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <sys/time.h>
|
#include <sys/time.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
36
po/de_DE.po
36
po/de_DE.po
@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: QEMU 1.4.50\n"
|
"Project-Id-Version: QEMU 1.4.50\n"
|
||||||
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
|
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
|
||||||
"POT-Creation-Date: 2014-07-17 20:39+0200\n"
|
"POT-Creation-Date: 2015-07-30 07:34+0200\n"
|
||||||
"PO-Revision-Date: 2012-02-28 16:00+0100\n"
|
"PO-Revision-Date: 2012-02-28 16:00+0100\n"
|
||||||
"Last-Translator: Kevin Wolf <kwolf@redhat.com>\n"
|
"Last-Translator: Kevin Wolf <kwolf@redhat.com>\n"
|
||||||
"Language-Team: Deutsch <de@li.org>\n"
|
"Language-Team: Deutsch <de@li.org>\n"
|
||||||
@ -16,70 +16,70 @@ msgstr ""
|
|||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
|
"Plural-Forms: nplurals=2; plural=(n!=1);\n"
|
||||||
|
|
||||||
#: ui/gtk.c:321
|
#: ui/gtk.c:260
|
||||||
msgid " - Press Ctrl+Alt+G to release grab"
|
msgid " - Press Ctrl+Alt+G to release grab"
|
||||||
msgstr " - Strg+Alt+G drücken, um Eingabegeräte freizugeben"
|
msgstr " - Strg+Alt+G drücken, um Eingabegeräte freizugeben"
|
||||||
|
|
||||||
#: ui/gtk.c:325
|
#: ui/gtk.c:264
|
||||||
msgid " [Paused]"
|
msgid " [Paused]"
|
||||||
msgstr " [Angehalten]"
|
msgstr " [Angehalten]"
|
||||||
|
|
||||||
#: ui/gtk.c:1601
|
#: ui/gtk.c:1688
|
||||||
msgid "_Pause"
|
msgid "_Pause"
|
||||||
msgstr "_Angehalten"
|
msgstr "_Angehalten"
|
||||||
|
|
||||||
#: ui/gtk.c:1607
|
#: ui/gtk.c:1694
|
||||||
msgid "_Reset"
|
msgid "_Reset"
|
||||||
msgstr "_Reset"
|
msgstr "_Reset"
|
||||||
|
|
||||||
#: ui/gtk.c:1610
|
#: ui/gtk.c:1697
|
||||||
msgid "Power _Down"
|
msgid "Power _Down"
|
||||||
msgstr "_Herunterfahren"
|
msgstr "_Herunterfahren"
|
||||||
|
|
||||||
#: ui/gtk.c:1616
|
#: ui/gtk.c:1703
|
||||||
msgid "_Quit"
|
msgid "_Quit"
|
||||||
msgstr "_Beenden"
|
msgstr "_Beenden"
|
||||||
|
|
||||||
#: ui/gtk.c:1692
|
#: ui/gtk.c:1787
|
||||||
msgid "_Fullscreen"
|
msgid "_Fullscreen"
|
||||||
msgstr "_Vollbild"
|
msgstr "_Vollbild"
|
||||||
|
|
||||||
#: ui/gtk.c:1702
|
#: ui/gtk.c:1801
|
||||||
msgid "Zoom _In"
|
msgid "Zoom _In"
|
||||||
msgstr "_Heranzoomen"
|
msgstr "_Heranzoomen"
|
||||||
|
|
||||||
#: ui/gtk.c:1709
|
#: ui/gtk.c:1808
|
||||||
msgid "Zoom _Out"
|
msgid "Zoom _Out"
|
||||||
msgstr "_Wegzoomen"
|
msgstr "_Wegzoomen"
|
||||||
|
|
||||||
#: ui/gtk.c:1716
|
#: ui/gtk.c:1815
|
||||||
msgid "Best _Fit"
|
msgid "Best _Fit"
|
||||||
msgstr "_Einpassen"
|
msgstr "_Einpassen"
|
||||||
|
|
||||||
#: ui/gtk.c:1723
|
#: ui/gtk.c:1822
|
||||||
msgid "Zoom To _Fit"
|
msgid "Zoom To _Fit"
|
||||||
msgstr "Auf _Fenstergröße skalieren"
|
msgstr "Auf _Fenstergröße skalieren"
|
||||||
|
|
||||||
#: ui/gtk.c:1729
|
#: ui/gtk.c:1828
|
||||||
msgid "Grab On _Hover"
|
msgid "Grab On _Hover"
|
||||||
msgstr "Tastatur _automatisch einfangen"
|
msgstr "Tastatur _automatisch einfangen"
|
||||||
|
|
||||||
#: ui/gtk.c:1732
|
#: ui/gtk.c:1831
|
||||||
msgid "_Grab Input"
|
msgid "_Grab Input"
|
||||||
msgstr "_Eingabegeräte einfangen"
|
msgstr "_Eingabegeräte einfangen"
|
||||||
|
|
||||||
#: ui/gtk.c:1761
|
#: ui/gtk.c:1860
|
||||||
msgid "Show _Tabs"
|
msgid "Show _Tabs"
|
||||||
msgstr "Reiter anzeigen"
|
msgstr "Reiter anzeigen"
|
||||||
|
|
||||||
#: ui/gtk.c:1764
|
#: ui/gtk.c:1863
|
||||||
msgid "Detach Tab"
|
msgid "Detach Tab"
|
||||||
msgstr "Reiter abtrennen"
|
msgstr "Reiter abtrennen"
|
||||||
|
|
||||||
#: ui/gtk.c:1778
|
#: ui/gtk.c:1875
|
||||||
msgid "_Machine"
|
msgid "_Machine"
|
||||||
msgstr "_Maschine"
|
msgstr "_Maschine"
|
||||||
|
|
||||||
#: ui/gtk.c:1783
|
#: ui/gtk.c:1880
|
||||||
msgid "_View"
|
msgid "_View"
|
||||||
msgstr "_Ansicht"
|
msgstr "_Ansicht"
|
||||||
|
36
po/fr_FR.po
36
po/fr_FR.po
@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: QEMU 1.4.50\n"
|
"Project-Id-Version: QEMU 1.4.50\n"
|
||||||
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
|
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
|
||||||
"POT-Creation-Date: 2014-07-28 23:14+0200\n"
|
"POT-Creation-Date: 2015-07-30 07:34+0200\n"
|
||||||
"PO-Revision-Date: 2014-07-28 23:25+0200\n"
|
"PO-Revision-Date: 2014-07-28 23:25+0200\n"
|
||||||
"Last-Translator: Aurelien Jarno <aurelien@aurel32.net>\n"
|
"Last-Translator: Aurelien Jarno <aurelien@aurel32.net>\n"
|
||||||
"Language-Team: French <FR@li.org>\n"
|
"Language-Team: French <FR@li.org>\n"
|
||||||
@ -17,70 +17,70 @@ msgstr ""
|
|||||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||||
"X-Generator: Lokalize 1.4\n"
|
"X-Generator: Lokalize 1.4\n"
|
||||||
|
|
||||||
#: ui/gtk.c:321
|
#: ui/gtk.c:260
|
||||||
msgid " - Press Ctrl+Alt+G to release grab"
|
msgid " - Press Ctrl+Alt+G to release grab"
|
||||||
msgstr "- Appuyer sur Ctrl+Alt+G pour arrêter la capture"
|
msgstr "- Appuyer sur Ctrl+Alt+G pour arrêter la capture"
|
||||||
|
|
||||||
#: ui/gtk.c:325
|
#: ui/gtk.c:264
|
||||||
msgid " [Paused]"
|
msgid " [Paused]"
|
||||||
msgstr " [En pause]"
|
msgstr " [En pause]"
|
||||||
|
|
||||||
#: ui/gtk.c:1601
|
#: ui/gtk.c:1688
|
||||||
msgid "_Pause"
|
msgid "_Pause"
|
||||||
msgstr "_Pause"
|
msgstr "_Pause"
|
||||||
|
|
||||||
#: ui/gtk.c:1607
|
#: ui/gtk.c:1694
|
||||||
msgid "_Reset"
|
msgid "_Reset"
|
||||||
msgstr "_Réinitialiser"
|
msgstr "_Réinitialiser"
|
||||||
|
|
||||||
#: ui/gtk.c:1610
|
#: ui/gtk.c:1697
|
||||||
msgid "Power _Down"
|
msgid "Power _Down"
|
||||||
msgstr "_Éteindre"
|
msgstr "_Éteindre"
|
||||||
|
|
||||||
#: ui/gtk.c:1616
|
#: ui/gtk.c:1703
|
||||||
msgid "_Quit"
|
msgid "_Quit"
|
||||||
msgstr "_Quitter"
|
msgstr "_Quitter"
|
||||||
|
|
||||||
#: ui/gtk.c:1692
|
#: ui/gtk.c:1787
|
||||||
msgid "_Fullscreen"
|
msgid "_Fullscreen"
|
||||||
msgstr "Mode _plein écran"
|
msgstr "Mode _plein écran"
|
||||||
|
|
||||||
#: ui/gtk.c:1702
|
#: ui/gtk.c:1801
|
||||||
msgid "Zoom _In"
|
msgid "Zoom _In"
|
||||||
msgstr "Zoom _avant"
|
msgstr "Zoom _avant"
|
||||||
|
|
||||||
#: ui/gtk.c:1709
|
#: ui/gtk.c:1808
|
||||||
msgid "Zoom _Out"
|
msgid "Zoom _Out"
|
||||||
msgstr "_Zoom arrière"
|
msgstr "_Zoom arrière"
|
||||||
|
|
||||||
#: ui/gtk.c:1716
|
#: ui/gtk.c:1815
|
||||||
msgid "Best _Fit"
|
msgid "Best _Fit"
|
||||||
msgstr "Zoom _idéal"
|
msgstr "Zoom _idéal"
|
||||||
|
|
||||||
#: ui/gtk.c:1723
|
#: ui/gtk.c:1822
|
||||||
msgid "Zoom To _Fit"
|
msgid "Zoom To _Fit"
|
||||||
msgstr "Zoomer pour a_juster"
|
msgstr "Zoomer pour a_juster"
|
||||||
|
|
||||||
#: ui/gtk.c:1729
|
#: ui/gtk.c:1828
|
||||||
msgid "Grab On _Hover"
|
msgid "Grab On _Hover"
|
||||||
msgstr "Capturer en _survolant"
|
msgstr "Capturer en _survolant"
|
||||||
|
|
||||||
#: ui/gtk.c:1732
|
#: ui/gtk.c:1831
|
||||||
msgid "_Grab Input"
|
msgid "_Grab Input"
|
||||||
msgstr "_Capturer les entrées"
|
msgstr "_Capturer les entrées"
|
||||||
|
|
||||||
#: ui/gtk.c:1761
|
#: ui/gtk.c:1860
|
||||||
msgid "Show _Tabs"
|
msgid "Show _Tabs"
|
||||||
msgstr "Montrer les _onglets"
|
msgstr "Montrer les _onglets"
|
||||||
|
|
||||||
#: ui/gtk.c:1764
|
#: ui/gtk.c:1863
|
||||||
msgid "Detach Tab"
|
msgid "Detach Tab"
|
||||||
msgstr "_Détacher l'onglet"
|
msgstr "_Détacher l'onglet"
|
||||||
|
|
||||||
#: ui/gtk.c:1778
|
#: ui/gtk.c:1875
|
||||||
msgid "_Machine"
|
msgid "_Machine"
|
||||||
msgstr "_Machine"
|
msgstr "_Machine"
|
||||||
|
|
||||||
#: ui/gtk.c:1783
|
#: ui/gtk.c:1880
|
||||||
msgid "_View"
|
msgid "_View"
|
||||||
msgstr "_Vue"
|
msgstr "_Vue"
|
||||||
|
50
po/hu.po
50
po/hu.po
@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: QEMU 1.4.50\n"
|
"Project-Id-Version: QEMU 1.4.50\n"
|
||||||
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
|
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
|
||||||
"POT-Creation-Date: 2013-07-05 22:36+0200\n"
|
"POT-Creation-Date: 2015-07-30 07:34+0200\n"
|
||||||
"PO-Revision-Date: 2013-05-06 20:42+0200\n"
|
"PO-Revision-Date: 2013-05-06 20:42+0200\n"
|
||||||
"Last-Translator: Ákos Kovács <akoskovacs@gmx.com>\n"
|
"Last-Translator: Ákos Kovács <akoskovacs@gmx.com>\n"
|
||||||
"Language-Team: Hungarian <hu@li.org>\n"
|
"Language-Team: Hungarian <hu@li.org>\n"
|
||||||
@ -15,47 +15,73 @@ msgstr ""
|
|||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
#: ui/gtk.c:214
|
#: ui/gtk.c:260
|
||||||
msgid " - Press Ctrl+Alt+G to release grab"
|
msgid " - Press Ctrl+Alt+G to release grab"
|
||||||
msgstr " - Nyomj Ctrl+Alt+G-t a bemeneti eszközök elengedéséhez"
|
msgstr " - Nyomj Ctrl+Alt+G-t a bemeneti eszközök elengedéséhez"
|
||||||
|
|
||||||
#: ui/gtk.c:218
|
#: ui/gtk.c:264
|
||||||
msgid " [Paused]"
|
msgid " [Paused]"
|
||||||
msgstr " [Megállítva]"
|
msgstr " [Megállítva]"
|
||||||
|
|
||||||
#: ui/gtk.c:1318
|
#: ui/gtk.c:1688
|
||||||
msgid "_Pause"
|
msgid "_Pause"
|
||||||
msgstr "_Megállítás"
|
msgstr "_Megállítás"
|
||||||
|
|
||||||
#: ui/gtk.c:1324
|
#: ui/gtk.c:1694
|
||||||
msgid "_Reset"
|
msgid "_Reset"
|
||||||
msgstr "Új_raindítás"
|
msgstr "Új_raindítás"
|
||||||
|
|
||||||
#: ui/gtk.c:1327
|
#: ui/gtk.c:1697
|
||||||
msgid "Power _Down"
|
msgid "Power _Down"
|
||||||
msgstr "_Leállítás"
|
msgstr "_Leállítás"
|
||||||
|
|
||||||
#: ui/gtk.c:1381
|
#: ui/gtk.c:1703
|
||||||
|
msgid "_Quit"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1787
|
||||||
|
msgid "_Fullscreen"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1801
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Zoom _In"
|
||||||
|
msgstr "Ablakmérethez _igazítás"
|
||||||
|
|
||||||
|
#: ui/gtk.c:1808
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Zoom _Out"
|
||||||
|
msgstr "Ablakmérethez _igazítás"
|
||||||
|
|
||||||
|
#: ui/gtk.c:1815
|
||||||
|
msgid "Best _Fit"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1822
|
||||||
msgid "Zoom To _Fit"
|
msgid "Zoom To _Fit"
|
||||||
msgstr "Ablakmérethez _igazítás"
|
msgstr "Ablakmérethez _igazítás"
|
||||||
|
|
||||||
#: ui/gtk.c:1387
|
#: ui/gtk.c:1828
|
||||||
msgid "Grab On _Hover"
|
msgid "Grab On _Hover"
|
||||||
msgstr "Automatikus _elfogás"
|
msgstr "Automatikus _elfogás"
|
||||||
|
|
||||||
#: ui/gtk.c:1390
|
#: ui/gtk.c:1831
|
||||||
msgid "_Grab Input"
|
msgid "_Grab Input"
|
||||||
msgstr "_Bemeneti eszközök megragadása"
|
msgstr "_Bemeneti eszközök megragadása"
|
||||||
|
|
||||||
#: ui/gtk.c:1416
|
#: ui/gtk.c:1860
|
||||||
msgid "Show _Tabs"
|
msgid "Show _Tabs"
|
||||||
msgstr "_Fülek megjelenítése"
|
msgstr "_Fülek megjelenítése"
|
||||||
|
|
||||||
#: ui/gtk.c:1430
|
#: ui/gtk.c:1863
|
||||||
|
msgid "Detach Tab"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1875
|
||||||
msgid "_Machine"
|
msgid "_Machine"
|
||||||
msgstr "_Gép"
|
msgstr "_Gép"
|
||||||
|
|
||||||
#: ui/gtk.c:1435
|
#: ui/gtk.c:1880
|
||||||
msgid "_View"
|
msgid "_View"
|
||||||
msgstr "_Nézet"
|
msgstr "_Nézet"
|
||||||
|
|
||||||
|
38
po/it.po
38
po/it.po
@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: QEMU 1.4.50\n"
|
"Project-Id-Version: QEMU 1.4.50\n"
|
||||||
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
|
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
|
||||||
"POT-Creation-Date: 2014-07-29 08:14+0200\n"
|
"POT-Creation-Date: 2015-07-30 07:34+0200\n"
|
||||||
"PO-Revision-Date: 2014-07-29 08:25+0200\n"
|
"PO-Revision-Date: 2014-07-29 08:25+0200\n"
|
||||||
"Last-Translator: Paolo Bonzini <pbonzini@redhat.com>\n"
|
"Last-Translator: Paolo Bonzini <pbonzini@redhat.com>\n"
|
||||||
"Language-Team: Italian <it@li.org>\n"
|
"Language-Team: Italian <it@li.org>\n"
|
||||||
@ -16,66 +16,70 @@ msgstr ""
|
|||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||||
|
|
||||||
#: ui/gtk.c:321
|
#: ui/gtk.c:260
|
||||||
msgid " - Press Ctrl+Alt+G to release grab"
|
msgid " - Press Ctrl+Alt+G to release grab"
|
||||||
msgstr " - Premere Ctrl+Alt+G per rilasciare l'input"
|
msgstr " - Premere Ctrl+Alt+G per rilasciare l'input"
|
||||||
|
|
||||||
#: ui/gtk.c:325
|
#: ui/gtk.c:264
|
||||||
msgid " [Paused]"
|
msgid " [Paused]"
|
||||||
msgstr " [Pausa]"
|
msgstr " [Pausa]"
|
||||||
|
|
||||||
#: ui/gtk.c:1601
|
#: ui/gtk.c:1688
|
||||||
msgid "_Pause"
|
msgid "_Pause"
|
||||||
msgstr "_Pausa"
|
msgstr "_Pausa"
|
||||||
|
|
||||||
#: ui/gtk.c:1607
|
#: ui/gtk.c:1694
|
||||||
msgid "_Reset"
|
msgid "_Reset"
|
||||||
msgstr "_Reset"
|
msgstr "_Reset"
|
||||||
|
|
||||||
#: ui/gtk.c:1610
|
#: ui/gtk.c:1697
|
||||||
msgid "Power _Down"
|
msgid "Power _Down"
|
||||||
msgstr "_Spegni"
|
msgstr "_Spegni"
|
||||||
|
|
||||||
#: ui/gtk.c:1616
|
#: ui/gtk.c:1703
|
||||||
msgid "_Quit"
|
msgid "_Quit"
|
||||||
msgstr "_Esci"
|
msgstr "_Esci"
|
||||||
|
|
||||||
#: ui/gtk.c:1702
|
#: ui/gtk.c:1787
|
||||||
|
msgid "_Fullscreen"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1801
|
||||||
msgid "Zoom _In"
|
msgid "Zoom _In"
|
||||||
msgstr "_Aumenta zoom"
|
msgstr "_Aumenta zoom"
|
||||||
|
|
||||||
#: ui/gtk.c:1709
|
#: ui/gtk.c:1808
|
||||||
msgid "Zoom _Out"
|
msgid "Zoom _Out"
|
||||||
msgstr "_Riduci zoom"
|
msgstr "_Riduci zoom"
|
||||||
|
|
||||||
#: ui/gtk.c:1716
|
#: ui/gtk.c:1815
|
||||||
msgid "Best _Fit"
|
msgid "Best _Fit"
|
||||||
msgstr "A_nnulla zoom"
|
msgstr "A_nnulla zoom"
|
||||||
|
|
||||||
#: ui/gtk.c:1723
|
#: ui/gtk.c:1822
|
||||||
msgid "Zoom To _Fit"
|
msgid "Zoom To _Fit"
|
||||||
msgstr "Adatta alla _finestra"
|
msgstr "Adatta alla _finestra"
|
||||||
|
|
||||||
#: ui/gtk.c:1729
|
#: ui/gtk.c:1828
|
||||||
msgid "Grab On _Hover"
|
msgid "Grab On _Hover"
|
||||||
msgstr "Cattura _automatica input"
|
msgstr "Cattura _automatica input"
|
||||||
|
|
||||||
#: ui/gtk.c:1732
|
#: ui/gtk.c:1831
|
||||||
msgid "_Grab Input"
|
msgid "_Grab Input"
|
||||||
msgstr "_Cattura input"
|
msgstr "_Cattura input"
|
||||||
|
|
||||||
#: ui/gtk.c:1761
|
#: ui/gtk.c:1860
|
||||||
msgid "Show _Tabs"
|
msgid "Show _Tabs"
|
||||||
msgstr "Mostra _tab"
|
msgstr "Mostra _tab"
|
||||||
|
|
||||||
#: ui/gtk.c:1764
|
#: ui/gtk.c:1863
|
||||||
msgid "Detach Tab"
|
msgid "Detach Tab"
|
||||||
msgstr "_Sposta in una nuova finestra"
|
msgstr "_Sposta in una nuova finestra"
|
||||||
|
|
||||||
#: ui/gtk.c:1778
|
#: ui/gtk.c:1875
|
||||||
msgid "_Machine"
|
msgid "_Machine"
|
||||||
msgstr "_Macchina virtuale"
|
msgstr "_Macchina virtuale"
|
||||||
|
|
||||||
#: ui/gtk.c:1783
|
#: ui/gtk.c:1880
|
||||||
msgid "_View"
|
msgid "_View"
|
||||||
msgstr "_Visualizza"
|
msgstr "_Visualizza"
|
||||||
|
@ -5,9 +5,9 @@
|
|||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: QEMU 1.5.50\n"
|
"Project-Id-Version: QEMU 2.3.93\n"
|
||||||
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
|
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
|
||||||
"POT-Creation-Date: 2013-07-05 22:36+0200\n"
|
"POT-Creation-Date: 2015-07-30 07:34+0200\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
@ -16,46 +16,70 @@ msgstr ""
|
|||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
|
|
||||||
#: ui/gtk.c:214
|
#: ui/gtk.c:260
|
||||||
msgid " - Press Ctrl+Alt+G to release grab"
|
msgid " - Press Ctrl+Alt+G to release grab"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ui/gtk.c:218
|
#: ui/gtk.c:264
|
||||||
msgid " [Paused]"
|
msgid " [Paused]"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ui/gtk.c:1318
|
#: ui/gtk.c:1688
|
||||||
msgid "_Pause"
|
msgid "_Pause"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ui/gtk.c:1324
|
#: ui/gtk.c:1694
|
||||||
msgid "_Reset"
|
msgid "_Reset"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ui/gtk.c:1327
|
#: ui/gtk.c:1697
|
||||||
msgid "Power _Down"
|
msgid "Power _Down"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ui/gtk.c:1381
|
#: ui/gtk.c:1703
|
||||||
|
msgid "_Quit"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1787
|
||||||
|
msgid "_Fullscreen"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1801
|
||||||
|
msgid "Zoom _In"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1808
|
||||||
|
msgid "Zoom _Out"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1815
|
||||||
|
msgid "Best _Fit"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1822
|
||||||
msgid "Zoom To _Fit"
|
msgid "Zoom To _Fit"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ui/gtk.c:1387
|
#: ui/gtk.c:1828
|
||||||
msgid "Grab On _Hover"
|
msgid "Grab On _Hover"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ui/gtk.c:1390
|
#: ui/gtk.c:1831
|
||||||
msgid "_Grab Input"
|
msgid "_Grab Input"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ui/gtk.c:1416
|
#: ui/gtk.c:1860
|
||||||
msgid "Show _Tabs"
|
msgid "Show _Tabs"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ui/gtk.c:1430
|
#: ui/gtk.c:1863
|
||||||
|
msgid "Detach Tab"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1875
|
||||||
msgid "_Machine"
|
msgid "_Machine"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ui/gtk.c:1435
|
#: ui/gtk.c:1880
|
||||||
msgid "_View"
|
msgid "_View"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
50
po/tr.po
50
po/tr.po
@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: QEMU 1.4.50\n"
|
"Project-Id-Version: QEMU 1.4.50\n"
|
||||||
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
|
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
|
||||||
"POT-Creation-Date: 2013-07-05 22:36+0200\n"
|
"POT-Creation-Date: 2015-07-30 07:34+0200\n"
|
||||||
"PO-Revision-Date: 2013-04-22 18:35+0300\n"
|
"PO-Revision-Date: 2013-04-22 18:35+0300\n"
|
||||||
"Last-Translator: Ozan Çağlayan <ozancag@gmail.com>\n"
|
"Last-Translator: Ozan Çağlayan <ozancag@gmail.com>\n"
|
||||||
"Language-Team: Türkçe <>\n"
|
"Language-Team: Türkçe <>\n"
|
||||||
@ -17,46 +17,72 @@ msgstr ""
|
|||||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||||
"X-Generator: Gtranslator 2.91.6\n"
|
"X-Generator: Gtranslator 2.91.6\n"
|
||||||
|
|
||||||
#: ui/gtk.c:214
|
#: ui/gtk.c:260
|
||||||
msgid " - Press Ctrl+Alt+G to release grab"
|
msgid " - Press Ctrl+Alt+G to release grab"
|
||||||
msgstr " - Yakalamayı durdurmak için Ctrl+Alt+G tuşlarına basın"
|
msgstr " - Yakalamayı durdurmak için Ctrl+Alt+G tuşlarına basın"
|
||||||
|
|
||||||
#: ui/gtk.c:218
|
#: ui/gtk.c:264
|
||||||
msgid " [Paused]"
|
msgid " [Paused]"
|
||||||
msgstr " [Duraklatıldı]"
|
msgstr " [Duraklatıldı]"
|
||||||
|
|
||||||
#: ui/gtk.c:1318
|
#: ui/gtk.c:1688
|
||||||
msgid "_Pause"
|
msgid "_Pause"
|
||||||
msgstr "_Duraklat"
|
msgstr "_Duraklat"
|
||||||
|
|
||||||
#: ui/gtk.c:1324
|
#: ui/gtk.c:1694
|
||||||
msgid "_Reset"
|
msgid "_Reset"
|
||||||
msgstr "_Sıfırla"
|
msgstr "_Sıfırla"
|
||||||
|
|
||||||
#: ui/gtk.c:1327
|
#: ui/gtk.c:1697
|
||||||
msgid "Power _Down"
|
msgid "Power _Down"
|
||||||
msgstr "_Kapat"
|
msgstr "_Kapat"
|
||||||
|
|
||||||
#: ui/gtk.c:1381
|
#: ui/gtk.c:1703
|
||||||
|
msgid "_Quit"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1787
|
||||||
|
msgid "_Fullscreen"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1801
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Zoom _In"
|
||||||
|
msgstr "Yakınlaş ve Sığ_dır"
|
||||||
|
|
||||||
|
#: ui/gtk.c:1808
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Zoom _Out"
|
||||||
|
msgstr "Yakınlaş ve Sığ_dır"
|
||||||
|
|
||||||
|
#: ui/gtk.c:1815
|
||||||
|
msgid "Best _Fit"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1822
|
||||||
msgid "Zoom To _Fit"
|
msgid "Zoom To _Fit"
|
||||||
msgstr "Yakınlaş ve Sığ_dır"
|
msgstr "Yakınlaş ve Sığ_dır"
|
||||||
|
|
||||||
#: ui/gtk.c:1387
|
#: ui/gtk.c:1828
|
||||||
msgid "Grab On _Hover"
|
msgid "Grab On _Hover"
|
||||||
msgstr "Ü_zerindeyken Yakala"
|
msgstr "Ü_zerindeyken Yakala"
|
||||||
|
|
||||||
#: ui/gtk.c:1390
|
#: ui/gtk.c:1831
|
||||||
msgid "_Grab Input"
|
msgid "_Grab Input"
|
||||||
msgstr "Girdiyi _Yakala"
|
msgstr "Girdiyi _Yakala"
|
||||||
|
|
||||||
#: ui/gtk.c:1416
|
#: ui/gtk.c:1860
|
||||||
msgid "Show _Tabs"
|
msgid "Show _Tabs"
|
||||||
msgstr "Se_kmeleri Göster"
|
msgstr "Se_kmeleri Göster"
|
||||||
|
|
||||||
#: ui/gtk.c:1430
|
#: ui/gtk.c:1863
|
||||||
|
msgid "Detach Tab"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ui/gtk.c:1875
|
||||||
msgid "_Machine"
|
msgid "_Machine"
|
||||||
msgstr "_Makine"
|
msgstr "_Makine"
|
||||||
|
|
||||||
#: ui/gtk.c:1435
|
#: ui/gtk.c:1880
|
||||||
msgid "_View"
|
msgid "_View"
|
||||||
msgstr "_Görüntüle"
|
msgstr "_Görüntüle"
|
||||||
|
36
po/zh_CN.po
36
po/zh_CN.po
@ -6,7 +6,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: QEMU 2.2\n"
|
"Project-Id-Version: QEMU 2.2\n"
|
||||||
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
|
"Report-Msgid-Bugs-To: qemu-devel@nongnu.org\n"
|
||||||
"POT-Creation-Date: 2014-07-31 10:03+0800\n"
|
"POT-Creation-Date: 2015-07-30 07:34+0200\n"
|
||||||
"PO-Revision-Date: 2014-07-31 10:00+0800\n"
|
"PO-Revision-Date: 2014-07-31 10:00+0800\n"
|
||||||
"Last-Translator: Fam Zheng <famz@redhat.com>\n"
|
"Last-Translator: Fam Zheng <famz@redhat.com>\n"
|
||||||
"Language-Team: Chinese <zh@li.org>\n"
|
"Language-Team: Chinese <zh@li.org>\n"
|
||||||
@ -17,70 +17,70 @@ msgstr ""
|
|||||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||||
"X-Generator: Lokalize 1.4\n"
|
"X-Generator: Lokalize 1.4\n"
|
||||||
|
|
||||||
#: ui/gtk.c:321
|
#: ui/gtk.c:260
|
||||||
msgid " - Press Ctrl+Alt+G to release grab"
|
msgid " - Press Ctrl+Alt+G to release grab"
|
||||||
msgstr " - 按下 Ctrl+Alt+G 取消捕获"
|
msgstr " - 按下 Ctrl+Alt+G 取消捕获"
|
||||||
|
|
||||||
#: ui/gtk.c:325
|
#: ui/gtk.c:264
|
||||||
msgid " [Paused]"
|
msgid " [Paused]"
|
||||||
msgstr " [已暂停]"
|
msgstr " [已暂停]"
|
||||||
|
|
||||||
#: ui/gtk.c:1601
|
#: ui/gtk.c:1688
|
||||||
msgid "_Pause"
|
msgid "_Pause"
|
||||||
msgstr "暂停(_P)"
|
msgstr "暂停(_P)"
|
||||||
|
|
||||||
#: ui/gtk.c:1607
|
#: ui/gtk.c:1694
|
||||||
msgid "_Reset"
|
msgid "_Reset"
|
||||||
msgstr "重置(_R)"
|
msgstr "重置(_R)"
|
||||||
|
|
||||||
#: ui/gtk.c:1610
|
#: ui/gtk.c:1697
|
||||||
msgid "Power _Down"
|
msgid "Power _Down"
|
||||||
msgstr "关闭电源(_D)"
|
msgstr "关闭电源(_D)"
|
||||||
|
|
||||||
#: ui/gtk.c:1616
|
#: ui/gtk.c:1703
|
||||||
msgid "_Quit"
|
msgid "_Quit"
|
||||||
msgstr "退出(_Q)"
|
msgstr "退出(_Q)"
|
||||||
|
|
||||||
#: ui/gtk.c:1692
|
#: ui/gtk.c:1787
|
||||||
msgid "_Fullscreen"
|
msgid "_Fullscreen"
|
||||||
msgstr "全屏(_F)"
|
msgstr "全屏(_F)"
|
||||||
|
|
||||||
#: ui/gtk.c:1702
|
#: ui/gtk.c:1801
|
||||||
msgid "Zoom _In"
|
msgid "Zoom _In"
|
||||||
msgstr "放大(_I)"
|
msgstr "放大(_I)"
|
||||||
|
|
||||||
#: ui/gtk.c:1709
|
#: ui/gtk.c:1808
|
||||||
msgid "Zoom _Out"
|
msgid "Zoom _Out"
|
||||||
msgstr "缩小(_O)"
|
msgstr "缩小(_O)"
|
||||||
|
|
||||||
#: ui/gtk.c:1716
|
#: ui/gtk.c:1815
|
||||||
msgid "Best _Fit"
|
msgid "Best _Fit"
|
||||||
msgstr "最合适大小(_F)"
|
msgstr "最合适大小(_F)"
|
||||||
|
|
||||||
#: ui/gtk.c:1723
|
#: ui/gtk.c:1822
|
||||||
msgid "Zoom To _Fit"
|
msgid "Zoom To _Fit"
|
||||||
msgstr "缩放以适应大小(_F)"
|
msgstr "缩放以适应大小(_F)"
|
||||||
|
|
||||||
#: ui/gtk.c:1729
|
#: ui/gtk.c:1828
|
||||||
msgid "Grab On _Hover"
|
msgid "Grab On _Hover"
|
||||||
msgstr "鼠标经过时捕获(_H)"
|
msgstr "鼠标经过时捕获(_H)"
|
||||||
|
|
||||||
#: ui/gtk.c:1732
|
#: ui/gtk.c:1831
|
||||||
msgid "_Grab Input"
|
msgid "_Grab Input"
|
||||||
msgstr "捕获输入(_G)"
|
msgstr "捕获输入(_G)"
|
||||||
|
|
||||||
#: ui/gtk.c:1761
|
#: ui/gtk.c:1860
|
||||||
msgid "Show _Tabs"
|
msgid "Show _Tabs"
|
||||||
msgstr "显示标签页(_T)"
|
msgstr "显示标签页(_T)"
|
||||||
|
|
||||||
#: ui/gtk.c:1764
|
#: ui/gtk.c:1863
|
||||||
msgid "Detach Tab"
|
msgid "Detach Tab"
|
||||||
msgstr "分离标签页"
|
msgstr "分离标签页"
|
||||||
|
|
||||||
#: ui/gtk.c:1778
|
#: ui/gtk.c:1875
|
||||||
msgid "_Machine"
|
msgid "_Machine"
|
||||||
msgstr "虚拟机(_M)"
|
msgstr "虚拟机(_M)"
|
||||||
|
|
||||||
#: ui/gtk.c:1783
|
#: ui/gtk.c:1880
|
||||||
msgid "_View"
|
msgid "_View"
|
||||||
msgstr "视图(_V)"
|
msgstr "视图(_V)"
|
||||||
|
@ -1632,13 +1632,10 @@
|
|||||||
# 1) A primitive type such as 'u8', 'u16', 'bool', 'str', or 'double'.
|
# 1) A primitive type such as 'u8', 'u16', 'bool', 'str', or 'double'.
|
||||||
# These types are mapped to the appropriate JSON type.
|
# These types are mapped to the appropriate JSON type.
|
||||||
#
|
#
|
||||||
# 2) A legacy type in the form 'legacy<subtype>' where subtype is the
|
# 2) A child type in the form 'child<subtype>' where subtype is a qdev
|
||||||
# legacy qdev typename. These types are always treated as strings.
|
|
||||||
#
|
|
||||||
# 3) A child type in the form 'child<subtype>' where subtype is a qdev
|
|
||||||
# device type name. Child properties create the composition tree.
|
# device type name. Child properties create the composition tree.
|
||||||
#
|
#
|
||||||
# 4) A link type in the form 'link<subtype>' where subtype is a qdev
|
# 3) A link type in the form 'link<subtype>' where subtype is a qdev
|
||||||
# device type name. Link properties form the device model graph.
|
# device type name. Link properties form the device model graph.
|
||||||
#
|
#
|
||||||
# Since: 1.2
|
# Since: 1.2
|
||||||
@ -1689,10 +1686,10 @@
|
|||||||
#
|
#
|
||||||
# @property: The property name to read
|
# @property: The property name to read
|
||||||
#
|
#
|
||||||
# Returns: The property value. The type depends on the property type. legacy<>
|
# Returns: The property value. The type depends on the property
|
||||||
# properties are returned as #str. child<> and link<> properties are
|
# type. child<> and link<> properties are returned as #str
|
||||||
# returns as #str pathnames. All integer property types (u8, u16, etc)
|
# pathnames. All integer property types (u8, u16, etc) are
|
||||||
# are returned as #int.
|
# returned as #int.
|
||||||
#
|
#
|
||||||
# Since: 1.2
|
# Since: 1.2
|
||||||
##
|
##
|
||||||
|
@ -51,7 +51,6 @@
|
|||||||
#include <netinet/in.h>
|
#include <netinet/in.h>
|
||||||
#include <net/if.h>
|
#include <net/if.h>
|
||||||
#include <arpa/inet.h>
|
#include <arpa/inet.h>
|
||||||
#include <dirent.h>
|
|
||||||
#include <netdb.h>
|
#include <netdb.h>
|
||||||
#include <sys/select.h>
|
#include <sys/select.h>
|
||||||
#ifdef CONFIG_BSD
|
#ifdef CONFIG_BSD
|
||||||
@ -2711,9 +2710,7 @@ static int tcp_set_msgfds(CharDriverState *chr, int *fds, int num)
|
|||||||
TCPCharDriver *s = chr->opaque;
|
TCPCharDriver *s = chr->opaque;
|
||||||
|
|
||||||
/* clear old pending fd array */
|
/* clear old pending fd array */
|
||||||
if (s->write_msgfds) {
|
|
||||||
g_free(s->write_msgfds);
|
g_free(s->write_msgfds);
|
||||||
}
|
|
||||||
|
|
||||||
if (num) {
|
if (num) {
|
||||||
s->write_msgfds = g_malloc(num * sizeof(int));
|
s->write_msgfds = g_malloc(num * sizeof(int));
|
||||||
|
@ -1772,7 +1772,7 @@ Use @code{set architecture i8086} to dump 16 bit code. Then use
|
|||||||
|
|
||||||
Advanced debugging options:
|
Advanced debugging options:
|
||||||
|
|
||||||
The default single stepping behavior is step with the IRQs and timer service routines off. It is set this way because when gdb executes a single step it expects to advance beyond the current instruction. With the IRQs and and timer service routines on, a single step might jump into the one of the interrupt or exception vectors instead of executing the current instruction. This means you may hit the same breakpoint a number of times before executing the instruction gdb wants to have executed. Because there are rare circumstances where you want to single step into an interrupt vector the behavior can be controlled from GDB. There are three commands you can query and set the single step behavior:
|
The default single stepping behavior is step with the IRQs and timer service routines off. It is set this way because when gdb executes a single step it expects to advance beyond the current instruction. With the IRQs and timer service routines on, a single step might jump into the one of the interrupt or exception vectors instead of executing the current instruction. This means you may hit the same breakpoint a number of times before executing the instruction gdb wants to have executed. Because there are rare circumstances where you want to single step into an interrupt vector the behavior can be controlled from GDB. There are three commands you can query and set the single step behavior:
|
||||||
@table @code
|
@table @code
|
||||||
@item maintenance packet qqemu.sstepbits
|
@item maintenance packet qqemu.sstepbits
|
||||||
|
|
||||||
|
@ -103,7 +103,7 @@ First image format
|
|||||||
@item -F
|
@item -F
|
||||||
Second image format
|
Second image format
|
||||||
@item -s
|
@item -s
|
||||||
Strict mode - fail on on different image size or sector allocation
|
Strict mode - fail on different image size or sector allocation
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
Parameters to convert subcommand:
|
Parameters to convert subcommand:
|
||||||
|
@ -102,7 +102,7 @@ static void usage(const char *name)
|
|||||||
" --aio=MODE set AIO mode (native or threads)\n"
|
" --aio=MODE set AIO mode (native or threads)\n"
|
||||||
#endif
|
#endif
|
||||||
" --discard=MODE set discard mode (ignore, unmap)\n"
|
" --discard=MODE set discard mode (ignore, unmap)\n"
|
||||||
" --detect-zeroes=MODE set detect-zeroes mode (off, on, discard)\n"
|
" --detect-zeroes=MODE set detect-zeroes mode (off, on, unmap)\n"
|
||||||
"\n"
|
"\n"
|
||||||
"Report bugs to <qemu-devel@nongnu.org>\n"
|
"Report bugs to <qemu-devel@nongnu.org>\n"
|
||||||
, name, NBD_DEFAULT_PORT, "DEVICE");
|
, name, NBD_DEFAULT_PORT, "DEVICE");
|
||||||
|
@ -3150,7 +3150,7 @@ provide cycle accurate emulation. Modern CPUs contain superscalar out of
|
|||||||
order cores with complex cache hierarchies. The number of instructions
|
order cores with complex cache hierarchies. The number of instructions
|
||||||
executed often has little or no correlation with actual performance.
|
executed often has little or no correlation with actual performance.
|
||||||
|
|
||||||
@option{align=on} will activate the delay algorithm which will try to
|
@option{align=on} will activate the delay algorithm which will try
|
||||||
to synchronise the host clock and the virtual clock. The goal is to
|
to synchronise the host clock and the virtual clock. The goal is to
|
||||||
have a guest running at the real frequency imposed by the shift option.
|
have a guest running at the real frequency imposed by the shift option.
|
||||||
Whenever the guest clock is behind the host clock and if
|
Whenever the guest clock is behind the host clock and if
|
||||||
@ -3513,7 +3513,7 @@ DEF("dump-vmstate", HAS_ARG, QEMU_OPTION_dump_vmstate,
|
|||||||
" Output vmstate information in JSON format to file.\n"
|
" Output vmstate information in JSON format to file.\n"
|
||||||
" Use the scripts/vmstate-static-checker.py file to\n"
|
" Use the scripts/vmstate-static-checker.py file to\n"
|
||||||
" check for possible regressions in migration code\n"
|
" check for possible regressions in migration code\n"
|
||||||
" by comparing two such vmstate dumps.",
|
" by comparing two such vmstate dumps.\n",
|
||||||
QEMU_ARCH_ALL)
|
QEMU_ARCH_ALL)
|
||||||
STEXI
|
STEXI
|
||||||
@item -dump-vmstate @var{file}
|
@item -dump-vmstate @var{file}
|
||||||
|
@ -2158,7 +2158,7 @@ static void transfer_memory_block(GuestMemoryBlock *mem_blk, bool sys2memblk,
|
|||||||
|
|
||||||
ga_read_sysfs_file(dirfd, "removable", &removable, 1, &local_err);
|
ga_read_sysfs_file(dirfd, "removable", &removable, 1, &local_err);
|
||||||
if (local_err) {
|
if (local_err) {
|
||||||
/* if no 'removable' file, it does't support offline mem blk */
|
/* if no 'removable' file, it doesn't support offline mem blk */
|
||||||
if (errno == ENOENT) {
|
if (errno == ENOENT) {
|
||||||
error_free(local_err);
|
error_free(local_err);
|
||||||
mem_blk->can_offline = false;
|
mem_blk->can_offline = false;
|
||||||
|
@ -659,7 +659,7 @@ static GuestFilesystemInfo *build_guest_fsinfo(char *guid, Error **errp)
|
|||||||
fs->mountpoint = g_strndup(mnt_point, len);
|
fs->mountpoint = g_strndup(mnt_point, len);
|
||||||
}
|
}
|
||||||
fs->type = g_strdup(fs_name);
|
fs->type = g_strdup(fs_name);
|
||||||
fs->disk = build_guest_disk_info(guid, errp);;
|
fs->disk = build_guest_disk_info(guid, errp);
|
||||||
free:
|
free:
|
||||||
g_free(mnt_point);
|
g_free(mnt_point);
|
||||||
return fs;
|
return fs;
|
||||||
|
@ -12,6 +12,7 @@
|
|||||||
##
|
##
|
||||||
|
|
||||||
##
|
##
|
||||||
|
# @guest-sync-delimited:
|
||||||
#
|
#
|
||||||
# Echo back a unique integer value, and prepend to response a
|
# Echo back a unique integer value, and prepend to response a
|
||||||
# leading sentinel byte (0xFF) the client can check scan for.
|
# leading sentinel byte (0xFF) the client can check scan for.
|
||||||
@ -41,7 +42,7 @@
|
|||||||
# Returns: The unique integer id passed in by the client
|
# Returns: The unique integer id passed in by the client
|
||||||
#
|
#
|
||||||
# Since: 1.1
|
# Since: 1.1
|
||||||
# ##
|
##
|
||||||
{ 'command': 'guest-sync-delimited',
|
{ 'command': 'guest-sync-delimited',
|
||||||
'data': { 'id': 'int' },
|
'data': { 'id': 'int' },
|
||||||
'returns': 'int' }
|
'returns': 'int' }
|
||||||
|
@ -132,7 +132,7 @@ void alpha_cpu_unassigned_access(CPUState *cs, hwaddr addr,
|
|||||||
env->error_code = 0;
|
env->error_code = 0;
|
||||||
|
|
||||||
/* ??? We should cpu_restore_state to the faulting insn, but this hook
|
/* ??? We should cpu_restore_state to the faulting insn, but this hook
|
||||||
does not have access to the retaddr value from the orignal helper.
|
does not have access to the retaddr value from the original helper.
|
||||||
It's all moot until the QEMU PALcode grows an MCHK handler. */
|
It's all moot until the QEMU PALcode grows an MCHK handler. */
|
||||||
|
|
||||||
cpu_loop_exit(cs);
|
cpu_loop_exit(cs);
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user