trivial patches for 2016-09-13
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQEcBAABCAAGBQJX2CDnAAoJEHAbT2saaT5ZB6UIAIOu86NJtdYnfm8rQ8JCO6cw Jy3lp5wpfes6vPcaC5tMQcE38/DY5dHzVGrWfFZnFCmrt/QwDpDfxrNIvDjuzTCB KF4V/obyPG6vbebcydygDGgZZP5ZsrgngYbsG8UE2MnFlQatzirP31bVVtg7b3t8 2okuKig3TsOWHXy281l8HWGPV/ktlle9bQWcPMDuKX9xlQAMMvBApl6gS3JLooMf rILfu2rY3aaW3896vGawTKaeURRS60oHGo/bukiAAbRqQaMLCkn1spsdUfIfO/GX xp6mKBdzgpvF7kHOIuNQUkqauaizP8hUkYp7mT3kOhQbyywQCt05q4kUqcZusPo= =oFIl -----END PGP SIGNATURE----- Merge remote-tracking branch 'remotes/mjt/tags/trivial-patches-fetch' into staging trivial patches for 2016-09-13 # gpg: Signature made Tue 13 Sep 2016 16:53:11 BST # gpg: using RSA key 0x701B4F6B1A693E59 # gpg: Good signature from "Michael Tokarev <mjt@tls.msk.ru>" # gpg: aka "Michael Tokarev <mjt@corpit.ru>" # gpg: aka "Michael Tokarev <mjt@debian.org>" # Primary key fingerprint: 6EE1 95D1 886E 8FFB 810D 4324 457C E0A0 8044 65C5 # Subkey fingerprint: 7B73 BAD6 8BE7 A2C2 8931 4B22 701B 4F6B 1A69 3E59 * remotes/mjt/tags/trivial-patches-fetch: hw/net/e1000e: Fix compiler warning target-m68k: fix get_mac_extf helper timer/cpus: fix some typos and update some comments timer.h: fix inconsistency between comment and function prototype timer.h: fix typo maint: Ignore generated version file Document that curses usually needs -k option too trace-event: display "%d" instead of "0x%d" linux-user, trivial: display "0x%x" instead of "0x%d" pic: fix typo in error message: KVM_GET_IRQCHIP -> KVM_SET_IRQCHIP sparc: Use g_memdup() instead of g_new0() + memcpy() vl: remove unnecessary duplicate call to tpm_cleanup arm: spelling fix: mismatch hw/dma/omap: spelling fix: endianness hw/bt/hci: spelling fix: endianness docs: Fix description of the leaky bucket algorithm in throttle.txt Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
commit
507e4ddc3a
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -53,6 +53,8 @@
|
||||||
/qemu-bridge-helper
|
/qemu-bridge-helper
|
||||||
/qemu-monitor.texi
|
/qemu-monitor.texi
|
||||||
/qemu-monitor-info.texi
|
/qemu-monitor-info.texi
|
||||||
|
/qemu-version.h
|
||||||
|
/qemu-version.h.tmp
|
||||||
/qmp-commands.txt
|
/qmp-commands.txt
|
||||||
/vscclient
|
/vscclient
|
||||||
/fsdev/virtfs-proxy-helper
|
/fsdev/virtfs-proxy-helper
|
||||||
|
|
6
cpus.c
6
cpus.c
|
@ -229,7 +229,7 @@ static int64_t cpu_get_clock_locked(void)
|
||||||
return ticks;
|
return ticks;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* return the host CPU monotonic timer and handle stop/restart */
|
/* return the host CPU monotonic time */
|
||||||
int64_t cpu_get_clock(void)
|
int64_t cpu_get_clock(void)
|
||||||
{
|
{
|
||||||
int64_t ti;
|
int64_t ti;
|
||||||
|
@ -244,7 +244,7 @@ int64_t cpu_get_clock(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* enable cpu_get_ticks()
|
/* enable cpu_get_ticks()
|
||||||
* Caller must hold BQL which server as mutex for vm_clock_seqlock.
|
* Caller must hold BQL which serves as mutex for vm_clock_seqlock.
|
||||||
*/
|
*/
|
||||||
void cpu_enable_ticks(void)
|
void cpu_enable_ticks(void)
|
||||||
{
|
{
|
||||||
|
@ -260,7 +260,7 @@ void cpu_enable_ticks(void)
|
||||||
|
|
||||||
/* disable cpu_get_ticks() : the clock is stopped. You must not call
|
/* disable cpu_get_ticks() : the clock is stopped. You must not call
|
||||||
* cpu_get_ticks() after that.
|
* cpu_get_ticks() after that.
|
||||||
* Caller must hold BQL which server as mutex for vm_clock_seqlock.
|
* Caller must hold BQL which serves as mutex for vm_clock_seqlock.
|
||||||
*/
|
*/
|
||||||
void cpu_disable_ticks(void)
|
void cpu_disable_ticks(void)
|
||||||
{
|
{
|
||||||
|
|
|
@ -235,7 +235,10 @@ consider the following values:
|
||||||
- Water leaks from the bucket at a rate of 100 IOPS.
|
- Water leaks from the bucket at a rate of 100 IOPS.
|
||||||
- Water can be added to the bucket at a rate of 2000 IOPS.
|
- Water can be added to the bucket at a rate of 2000 IOPS.
|
||||||
- The size of the bucket is 2000 x 60 = 120000
|
- The size of the bucket is 2000 x 60 = 120000
|
||||||
- If 'iops-total-max' is unset then the bucket size is 100 x 60.
|
- If 'iops-total-max-length' is unset then it defaults to 1 and the
|
||||||
|
size of the bucket is 2000.
|
||||||
|
- If 'iops-total-max' is unset then 'iops-total-max-length' must be
|
||||||
|
unset as well. In this case the bucket size is 100.
|
||||||
|
|
||||||
The bucket is initially empty, therefore water can be added until it's
|
The bucket is initially empty, therefore water can be added until it's
|
||||||
full at a rate of 2000 IOPS (the burst rate). Once the bucket is full
|
full at a rate of 2000 IOPS (the burst rate). Once the bucket is full
|
||||||
|
|
|
@ -421,7 +421,7 @@ static void bt_submit_raw_acl(struct bt_piconet_s *net, int length, uint8_t *dat
|
||||||
|
|
||||||
/* HCI layer emulation */
|
/* HCI layer emulation */
|
||||||
|
|
||||||
/* Note: we could ignore endiannes because unswapped handles will still
|
/* Note: we could ignore endianness because unswapped handles will still
|
||||||
* be valid as connection identifiers for the guest - they don't have to
|
* be valid as connection identifiers for the guest - they don't have to
|
||||||
* be continuously allocated. We do it though, to preserve similar
|
* be continuously allocated. We do it though, to preserve similar
|
||||||
* behaviour between hosts. Some things, like the BD_ADDR cannot be
|
* behaviour between hosts. Some things, like the BD_ADDR cannot be
|
||||||
|
|
|
@ -1975,7 +1975,7 @@ static void omap_dma4_write(void *opaque, hwaddr addr,
|
||||||
ch->endian[1] =(value >> 19) & 1;
|
ch->endian[1] =(value >> 19) & 1;
|
||||||
ch->endian_lock[1] =(value >> 18) & 1;
|
ch->endian_lock[1] =(value >> 18) & 1;
|
||||||
if (ch->endian[0] != ch->endian[1])
|
if (ch->endian[0] != ch->endian[1])
|
||||||
fprintf(stderr, "%s: DMA endiannes conversion enable attempt\n",
|
fprintf(stderr, "%s: DMA endianness conversion enable attempt\n",
|
||||||
__FUNCTION__);
|
__FUNCTION__);
|
||||||
ch->write_mode = (value >> 16) & 3;
|
ch->write_mode = (value >> 16) & 3;
|
||||||
ch->burst[1] = (value & 0xc000) >> 14;
|
ch->burst[1] = (value & 0xc000) >> 14;
|
||||||
|
|
|
@ -92,7 +92,7 @@ static void kvm_pic_put(PICCommonState *s)
|
||||||
|
|
||||||
ret = kvm_vm_ioctl(kvm_state, KVM_SET_IRQCHIP, &chip);
|
ret = kvm_vm_ioctl(kvm_state, KVM_SET_IRQCHIP, &chip);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
fprintf(stderr, "KVM_GET_IRQCHIP failed: %s\n", strerror(ret));
|
fprintf(stderr, "KVM_SET_IRQCHIP failed: %s\n", strerror(ret));
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,7 @@ xen_pv_mmio_read(uint64_t addr) "WARNING: read from Xen PV Device MMIO space (ad
|
||||||
xen_pv_mmio_write(uint64_t addr) "WARNING: write to Xen PV Device MMIO space (address %"PRIx64")"
|
xen_pv_mmio_write(uint64_t addr) "WARNING: write to Xen PV Device MMIO space (address %"PRIx64")"
|
||||||
|
|
||||||
# hw/i386/pc.c
|
# hw/i386/pc.c
|
||||||
mhp_pc_dimm_assigned_slot(int slot) "0x%d"
|
mhp_pc_dimm_assigned_slot(int slot) "%d"
|
||||||
mhp_pc_dimm_assigned_address(uint64_t addr) "0x%"PRIx64
|
mhp_pc_dimm_assigned_address(uint64_t addr) "0x%"PRIx64
|
||||||
|
|
||||||
# hw/i386/x86-iommu.c
|
# hw/i386/x86-iommu.c
|
||||||
|
|
|
@ -52,7 +52,7 @@
|
||||||
second according to spec 10.2.4.2 */
|
second according to spec 10.2.4.2 */
|
||||||
#define E1000E_MAX_TX_FRAGS (64)
|
#define E1000E_MAX_TX_FRAGS (64)
|
||||||
|
|
||||||
static void
|
static inline void
|
||||||
e1000e_set_interrupt_cause(E1000ECore *core, uint32_t val);
|
e1000e_set_interrupt_cause(E1000ECore *core, uint32_t val);
|
||||||
|
|
||||||
static inline void
|
static inline void
|
||||||
|
|
|
@ -179,7 +179,7 @@ int64_t qemu_clock_deadline_ns_all(QEMUClockType type);
|
||||||
* qemu_clock_get_main_loop_timerlist:
|
* qemu_clock_get_main_loop_timerlist:
|
||||||
* @type: the clock type
|
* @type: the clock type
|
||||||
*
|
*
|
||||||
* Return the default timer list assocatiated with a clock.
|
* Return the default timer list associated with a clock.
|
||||||
*
|
*
|
||||||
* Returns: the default timer list
|
* Returns: the default timer list
|
||||||
*/
|
*/
|
||||||
|
@ -431,6 +431,7 @@ void timer_init_tl(QEMUTimer *ts,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* timer_init:
|
* timer_init:
|
||||||
|
* @ts: the timer to be initialised
|
||||||
* @type: the clock to associate with the timer
|
* @type: the clock to associate with the timer
|
||||||
* @scale: the scale value for the timer
|
* @scale: the scale value for the timer
|
||||||
* @cb: the callback to call when the timer expires
|
* @cb: the callback to call when the timer expires
|
||||||
|
@ -450,6 +451,7 @@ static inline void timer_init(QEMUTimer *ts, QEMUClockType type, int scale,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* timer_init_ns:
|
* timer_init_ns:
|
||||||
|
* @ts: the timer to be initialised
|
||||||
* @type: the clock to associate with the timer
|
* @type: the clock to associate with the timer
|
||||||
* @cb: the callback to call when the timer expires
|
* @cb: the callback to call when the timer expires
|
||||||
* @opaque: the opaque pointer to pass to the callback
|
* @opaque: the opaque pointer to pass to the callback
|
||||||
|
@ -468,6 +470,7 @@ static inline void timer_init_ns(QEMUTimer *ts, QEMUClockType type,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* timer_init_us:
|
* timer_init_us:
|
||||||
|
* @ts: the timer to be initialised
|
||||||
* @type: the clock to associate with the timer
|
* @type: the clock to associate with the timer
|
||||||
* @cb: the callback to call when the timer expires
|
* @cb: the callback to call when the timer expires
|
||||||
* @opaque: the opaque pointer to pass to the callback
|
* @opaque: the opaque pointer to pass to the callback
|
||||||
|
@ -486,6 +489,7 @@ static inline void timer_init_us(QEMUTimer *ts, QEMUClockType type,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* timer_init_ms:
|
* timer_init_ms:
|
||||||
|
* @ts: the timer to be initialised
|
||||||
* @type: the clock to associate with the timer
|
* @type: the clock to associate with the timer
|
||||||
* @cb: the callback to call when the timer expires
|
* @cb: the callback to call when the timer expires
|
||||||
* @opaque: the opaque pointer to pass to the callback
|
* @opaque: the opaque pointer to pass to the callback
|
||||||
|
@ -509,7 +513,7 @@ static inline void timer_init_ms(QEMUTimer *ts, QEMUClockType type,
|
||||||
* @cb: the callback to be called when the timer expires
|
* @cb: the callback to be called when the timer expires
|
||||||
* @opaque: the opaque pointer to be passed to the callback
|
* @opaque: the opaque pointer to be passed to the callback
|
||||||
*
|
*
|
||||||
* Creeate a new timer and associate it with @timer_list.
|
* Create a new timer and associate it with @timer_list.
|
||||||
* The memory is allocated by the function.
|
* The memory is allocated by the function.
|
||||||
*
|
*
|
||||||
* This is not the preferred interface unless you know you
|
* This is not the preferred interface unless you know you
|
||||||
|
@ -534,7 +538,7 @@ static inline QEMUTimer *timer_new_tl(QEMUTimerList *timer_list,
|
||||||
* @cb: the callback to be called when the timer expires
|
* @cb: the callback to be called when the timer expires
|
||||||
* @opaque: the opaque pointer to be passed to the callback
|
* @opaque: the opaque pointer to be passed to the callback
|
||||||
*
|
*
|
||||||
* Creeate a new timer and associate it with the default
|
* Create a new timer and associate it with the default
|
||||||
* timer list for the clock type @type.
|
* timer list for the clock type @type.
|
||||||
*
|
*
|
||||||
* Returns: a pointer to the timer
|
* Returns: a pointer to the timer
|
||||||
|
@ -547,8 +551,8 @@ static inline QEMUTimer *timer_new(QEMUClockType type, int scale,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* timer_new_ns:
|
* timer_new_ns:
|
||||||
* @clock: the clock to associate with the timer
|
* @type: the clock type to associate with the timer
|
||||||
* @callback: the callback to call when the timer expires
|
* @cb: the callback to call when the timer expires
|
||||||
* @opaque: the opaque pointer to pass to the callback
|
* @opaque: the opaque pointer to pass to the callback
|
||||||
*
|
*
|
||||||
* Create a new timer with nanosecond scale on the default timer list
|
* Create a new timer with nanosecond scale on the default timer list
|
||||||
|
@ -564,8 +568,8 @@ static inline QEMUTimer *timer_new_ns(QEMUClockType type, QEMUTimerCB *cb,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* timer_new_us:
|
* timer_new_us:
|
||||||
* @clock: the clock to associate with the timer
|
* @type: the clock type to associate with the timer
|
||||||
* @callback: the callback to call when the timer expires
|
* @cb: the callback to call when the timer expires
|
||||||
* @opaque: the opaque pointer to pass to the callback
|
* @opaque: the opaque pointer to pass to the callback
|
||||||
*
|
*
|
||||||
* Create a new timer with microsecond scale on the default timer list
|
* Create a new timer with microsecond scale on the default timer list
|
||||||
|
@ -581,8 +585,8 @@ static inline QEMUTimer *timer_new_us(QEMUClockType type, QEMUTimerCB *cb,
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* timer_new_ms:
|
* timer_new_ms:
|
||||||
* @clock: the clock to associate with the timer
|
* @type: the clock type to associate with the timer
|
||||||
* @callback: the callback to call when the timer expires
|
* @cb: the callback to call when the timer expires
|
||||||
* @opaque: the opaque pointer to pass to the callback
|
* @opaque: the opaque pointer to pass to the callback
|
||||||
*
|
*
|
||||||
* Create a new timer with millisecond scale on the default timer list
|
* Create a new timer with millisecond scale on the default timer list
|
||||||
|
@ -691,6 +695,7 @@ bool timer_pending(QEMUTimer *ts);
|
||||||
/**
|
/**
|
||||||
* timer_expired:
|
* timer_expired:
|
||||||
* @ts: the timer
|
* @ts: the timer
|
||||||
|
* @current_time: the current time
|
||||||
*
|
*
|
||||||
* Determines whether a timer has expired.
|
* Determines whether a timer has expired.
|
||||||
*
|
*
|
||||||
|
@ -797,7 +802,7 @@ static inline int64_t get_max_clock_jump(void)
|
||||||
* Low level clock functions
|
* Low level clock functions
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* real time host monotonic timer */
|
/* get host real time in nanosecond */
|
||||||
static inline int64_t get_clock_realtime(void)
|
static inline int64_t get_clock_realtime(void)
|
||||||
{
|
{
|
||||||
struct timeval tv;
|
struct timeval tv;
|
||||||
|
|
|
@ -2030,7 +2030,7 @@ void cpu_loop(CPUPPCState *env)
|
||||||
/* just indicate that signals should be handled asap */
|
/* just indicate that signals should be handled asap */
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
cpu_abort(cs, "Unknown exception 0x%d. Aborting\n", trapnr);
|
cpu_abort(cs, "Unknown exception 0x%x. Aborting\n", trapnr);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
process_pending_signals(env);
|
process_pending_signals(env);
|
||||||
|
|
|
@ -303,7 +303,7 @@ STEXI
|
||||||
@findex -k
|
@findex -k
|
||||||
Use keyboard layout @var{language} (for example @code{fr} for
|
Use keyboard layout @var{language} (for example @code{fr} for
|
||||||
French). This option is only needed where it is not easy to get raw PC
|
French). This option is only needed where it is not easy to get raw PC
|
||||||
keycodes (e.g. on Macs, with some X11 servers or with a VNC
|
keycodes (e.g. on Macs, with some X11 servers or with a VNC or curses
|
||||||
display). You don't normally need to use it on PC/Linux or PC/Windows
|
display). You don't normally need to use it on PC/Linux or PC/Windows
|
||||||
hosts.
|
hosts.
|
||||||
|
|
||||||
|
|
|
@ -7498,7 +7498,7 @@ static bool get_phys_addr_lpae(CPUARMState *env, target_ulong address,
|
||||||
* is unpredictable. Flag this as a guest error. */
|
* is unpredictable. Flag this as a guest error. */
|
||||||
if (sign != sext) {
|
if (sign != sext) {
|
||||||
qemu_log_mask(LOG_GUEST_ERROR,
|
qemu_log_mask(LOG_GUEST_ERROR,
|
||||||
"AArch32: VTCR.S / VTCR.T0SZ[3] missmatch\n");
|
"AArch32: VTCR.S / VTCR.T0SZ[3] mismatch\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
t1sz = extract32(tcr->raw_tcr, 16, 6);
|
t1sz = extract32(tcr->raw_tcr, 16, 6);
|
||||||
|
|
|
@ -812,7 +812,7 @@ uint32_t HELPER(get_mac_extf)(CPUM68KState *env, uint32_t acc)
|
||||||
{
|
{
|
||||||
uint32_t val;
|
uint32_t val;
|
||||||
val = env->macc[acc] & 0x00ff;
|
val = env->macc[acc] & 0x00ff;
|
||||||
val = (env->macc[acc] >> 32) & 0xff00;
|
val |= (env->macc[acc] >> 32) & 0xff00;
|
||||||
val |= (env->macc[acc + 1] << 16) & 0x00ff0000;
|
val |= (env->macc[acc + 1] << 16) & 0x00ff0000;
|
||||||
val |= (env->macc[acc + 1] >> 16) & 0xff000000;
|
val |= (env->macc[acc + 1] >> 16) & 0xff000000;
|
||||||
return val;
|
return val;
|
||||||
|
|
|
@ -117,8 +117,7 @@ static int cpu_sparc_register(SPARCCPU *cpu, const char *cpu_model)
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
env->def = g_new0(sparc_def_t, 1);
|
env->def = g_memdup(def, sizeof(*def));
|
||||||
memcpy(env->def, def, sizeof(*def));
|
|
||||||
|
|
||||||
featurestr = strtok(NULL, ",");
|
featurestr = strtok(NULL, ",");
|
||||||
sparc_cpu_parse_features(CPU(cpu), featurestr, &err);
|
sparc_cpu_parse_features(CPU(cpu), featurestr, &err);
|
||||||
|
|
3
vl.c
3
vl.c
|
@ -4622,9 +4622,6 @@ int main(int argc, char **argv, char **envp)
|
||||||
bdrv_close_all();
|
bdrv_close_all();
|
||||||
pause_all_vcpus();
|
pause_all_vcpus();
|
||||||
res_free();
|
res_free();
|
||||||
#ifdef CONFIG_TPM
|
|
||||||
tpm_cleanup();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* vhost-user must be cleaned up before chardevs. */
|
/* vhost-user must be cleaned up before chardevs. */
|
||||||
net_cleanup();
|
net_cleanup();
|
||||||
|
|
Loading…
Reference in a new issue