sdk/emulator/qemu.git
11 years agosuspend/resume: NOT allow to add duplicated client. 66/12566/3
Jinhyung Choi [Tue, 19 Nov 2013 07:09:53 +0000 (16:09 +0900)]
suspend/resume: NOT allow to add duplicated client.

Change-Id: Ib1ac637058413b8051cfb9af4825ca75b80bfe94
Signed-off-by: Jinhyung Choi <jinhyung2.choi@samsung.com>
11 years agopackage: version up. 60/12560/1
SeokYeon Hwang [Tue, 19 Nov 2013 05:32:32 +0000 (14:32 +0900)]
package: version up.

1.7.0

Change-Id: I37435087bafa9d0340deb4271ae7443f1e732099
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
11 years agomaru_pm: Add suspend / wakeup notifier. 59/12559/1
SeokYeon Hwang [Tue, 19 Nov 2013 05:21:19 +0000 (14:21 +0900)]
maru_pm: Add suspend / wakeup notifier.

Add suspend / wakeup notifier to tell sdb.

Change-Id: I038f70f7a97cc3b60fab357a7c637c754aa035f9
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
11 years agosuspend/resume: changed message format 36/12536/2
Jinhyung Choi [Mon, 18 Nov 2013 12:46:37 +0000 (21:46 +0900)]
suspend/resume: changed message format

The message length was set as decimal(ex. 0026).
It is changed to hexadecimal (ex. 001A) for first 4byte.

Change-Id: Ide15b65f5c7ff45b395988460aeae7b0b5053092
Signed-off-by: Jinhyung Choi <jinhyung2.choi@samsung.com>
11 years agoecs: save a ecs port into a .ecs.property 05/12505/2
Jinhyung Choi [Sun, 17 Nov 2013 09:36:09 +0000 (18:36 +0900)]
ecs: save a ecs port into a .ecs.property

ECS port is randomly created, and it is saved into
[tizen-sdk-data]/emulator/vms/[VM name]/.ecs.properties

Change-Id: Iec571be7a46b0ba602917101e8ea437f3f7444a8
Signed-off-by: Jinhyung Choi <jinhyung2.choi@samsung.com>
11 years agoskin: added updateSkin interface 36/12436/1
GiWoong Kim [Fri, 15 Nov 2013 03:22:33 +0000 (12:22 +0900)]
skin: added updateSkin interface

The each skin composer can update the skin(like
a ColorTag updating) itself by diffrent way
if it required.

Change-Id: I5e2dcc2a50d7de86d42ae43e6b4f8c1e18fece6a
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agopackage: version up 75/12375/1
GiWoong Kim [Thu, 14 Nov 2013 07:00:28 +0000 (16:00 +0900)]
package: version up

1.6.4

Change-Id: Ib9774cf769abdfa4cae93c7830f052739cc4d3f0
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agomenu: added schema for host keyboard menu 73/12373/1
GiWoong Kim [Thu, 14 Nov 2013 05:23:21 +0000 (14:23 +0900)]
menu: added schema for host keyboard menu

Now, user can configure the host keyboard menu
(Right click popup>Advance>Host Keyboard menu) by
skin layout XML file.

Change-Id: I150a494d0657b9670ad82bda48a6b4431fbc6d9b
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoskin: modified indenting 35/12335/1
GiWoong Kim [Wed, 13 Nov 2013 10:09:24 +0000 (19:09 +0900)]
skin: modified indenting

1. modified indenting
2. added boilerplate title

Change-Id: Ibe9fa409dfd39c56dc558ba25374221dce432dec
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agomenu: skin popup menu code clean up 34/12334/1
GiWoong Kim [Wed, 13 Nov 2013 08:01:33 +0000 (17:01 +0900)]
menu: skin popup menu code clean up

1. To improve the readability, I declare the some new functions.
2. Do not show a seperator from popup menu when it has no items.

Change-Id: Ib1444dac846ea1273c787f7a2978aeebbb71c724
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agomenu: skin dialog code clean up 41/12241/1
GiWoong Kim [Tue, 12 Nov 2013 10:43:04 +0000 (19:43 +0900)]
menu: skin dialog code clean up

1. allow to create a button composite optionally in SkinDialog
2. added boilerplate title (SkinDialog, LicenceDialog,
RamdumpDialog)
3. define static string
4. modified indenting & etc

Change-Id: I040276e597a8cebfc61e1a15aa0cec13af7cb95d
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agocommunication: added protocol for the host keyboard state 40/12240/1
GiWoong Kim [Tue, 12 Nov 2013 03:07:59 +0000 (12:07 +0900)]
communication: added protocol for the host keyboard state

The Qemu-Skin protocol has been extended to share the
host keyboard state between ECP and right-click popup
menu.

Change-Id: I50e239047b5fda6337f8505b84298643c2efb4ed
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoEnable "SLEEP" on emulator. 05/12005/2
SeokYeon Hwang [Mon, 11 Nov 2013 05:19:10 +0000 (14:19 +0900)]
Enable "SLEEP" on emulator.

Rewrite "maru_pm".
Cooperate "SLEEP" with qemu suspend.
Clean-up power management code.

Change-Id: Ieae0513d10fed9110e8dc9a2b67e1d2316f3ff36
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
11 years agoMerge "ecs: apply nfc multi-session" into tizen
daiyoung kim [Tue, 12 Nov 2013 11:18:26 +0000 (03:18 -0800)]
Merge "ecs: apply nfc multi-session" into tizen

11 years agoMerge changes I14ea9453,I86f46a5f into tizen
daiyoung kim [Tue, 12 Nov 2013 11:18:05 +0000 (03:18 -0800)]
Merge changes I14ea9453,I86f46a5f into tizen

* changes:
  skin: move to the proper java package
  touch: remove data race condition

11 years agoMerge "guest server: changed socket connection & added logs" into tizen
daiyoung kim [Tue, 12 Nov 2013 11:16:57 +0000 (03:16 -0800)]
Merge "guest server: changed socket connection & added logs" into tizen

11 years agoMerge "brillcodec: fixed null pointer deferences." into tizen
daiyoung kim [Tue, 12 Nov 2013 11:16:39 +0000 (03:16 -0800)]
Merge "brillcodec: fixed null pointer deferences." into tizen

11 years agoecs: apply nfc multi-session 64/12064/2
munkyu.im [Tue, 12 Nov 2013 09:23:15 +0000 (18:23 +0900)]
ecs: apply nfc multi-session

modified protobuf protocol
added id, type value to identify each connection

Change-Id: I8318f1a409ac667a94a7ec9b55900cfb5564f06e
Signed-off-by: munkyu.im <munkyu.im@samsung.com>
11 years agoguest server: changed socket connection & added logs 45/12045/2
Jinhyung Choi [Tue, 12 Nov 2013 03:46:22 +0000 (12:46 +0900)]
guest server: changed socket connection & added logs

Socket connection is established first, then send message to sdb server.
Also logs are added for debugging.

Change-Id: I7d38e19d5392be07d93eb32442c1a148a150d9ad
Signed-off-by: Jinhyung Choi <jinhyung2.choi@samsung.com>
11 years agoskin: move to the proper java package 40/12040/1
GiWoong Kim [Tue, 12 Nov 2013 01:55:38 +0000 (10:55 +0900)]
skin: move to the proper java package

EmulatorSkinState: skin -> skin.info
GeneralKeyWindow, SpecialKeyWindow: custom -> menu

Change-Id: I14ea94539a0ad44edeb35bb0be6cd226f6467f1c
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agotouch: remove data race condition 36/12036/2
GiWoong Kim [Mon, 11 Nov 2013 08:46:52 +0000 (17:46 +0900)]
touch: remove data race condition

There is no need to reset the ring buffer counter
in the pthread lock section.

Change-Id: I86f46a5ff5c38fc57e9f6d58b4d49f8905c5c648
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agocommunication: no need to define the various DataTransfers 35/12035/1
GiWoong Kim [Fri, 8 Nov 2013 04:01:30 +0000 (13:01 +0900)]
communication: no need to define the various DataTransfers

1. merge progressDataTransfer and brightnessDataTransfer
2. fix typo at boilerplate title

Change-Id: Iccbca36b3bf2122db310aa748df662d3883f743a
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agobrillcodec: fixed null pointer deferences. 50/12050/1
Kitae Kim [Fri, 8 Nov 2013 11:23:35 +0000 (20:23 +0900)]
brillcodec: fixed null pointer deferences.

Removed unnecessary null check.

Change-Id: Ie7fc96cd453dc73283f2a585121abfb40e664a7f
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
11 years agoMerge "vigs & yagl : Move sources to own directories" into tizen
daiyoung kim [Fri, 8 Nov 2013 06:19:09 +0000 (22:19 -0800)]
Merge "vigs & yagl : Move sources to own directories" into tizen

11 years agoMerge "vigs & yagl : Insert the boilerplate" into tizen
daiyoung kim [Fri, 8 Nov 2013 06:18:53 +0000 (22:18 -0800)]
Merge "vigs & yagl : Insert the boilerplate" into tizen

11 years agoguest_server: changed message format when a sdb server registers in guest server 04/11904/3
Jinhyung Choi [Thu, 7 Nov 2013 13:32:33 +0000 (22:32 +0900)]
guest_server: changed message format when a sdb server registers in guest server

Previously it gets ip, port, serial, but now serial only

Change-Id: I442c5ba314ecacf9a144fa5d73737122d896e48c
Signed-off-by: Jinhyung Choi <jinhyung2.choi@samsung.com>
11 years agovigs & yagl : Move sources to own directories 81/11881/1
jinhyung.jo [Thu, 31 Oct 2013 09:31:01 +0000 (18:31 +0900)]
vigs & yagl : Move sources to own directories

Make new directories for each module in the hw directory
, move the sources and add makefiles.

Change-Id: Ife82c2770f6ae8917c854d70e8b89c44edbc1e9c
Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
11 years agovigs & yagl : Insert the boilerplate 80/11880/1
jinhyung.jo [Thu, 31 Oct 2013 09:10:59 +0000 (18:10 +0900)]
vigs & yagl : Insert the boilerplate

Added the GPL2 boilerplate

Change-Id: I04fd7bc2e053b469f04a62613a14e1ec3a4835b5
Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
11 years agoMerge changes Iea9ab886,I457a35cd into tizen
daiyoung kim [Thu, 7 Nov 2013 06:03:22 +0000 (22:03 -0800)]
Merge changes Iea9ab886,I457a35cd into tizen

* changes:
  emulator: boot completed logging
  communication: modified event message names

11 years agoMerge "package: modify install and remove script." into tizen
daiyoung kim [Thu, 7 Nov 2013 06:02:00 +0000 (22:02 -0800)]
Merge "package: modify install and remove script." into tizen

11 years agoFix compilation error on maru_board.c
SeokYeon Hwang [Tue, 29 Oct 2013 02:35:12 +0000 (11:35 +0900)]
Fix compilation error on maru_board.c

A xen_hvm_init() function prototype is modified.

Change-Id: I6ec43199ddb65db591bedea8c89db6d46010daf0
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
11 years agoUpdate VERSION for 1.6.1 release
Michael Roth [Fri, 4 Oct 2013 15:21:43 +0000 (10:21 -0500)]
Update VERSION for 1.6.1 release

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoscsi: Allocate SCSITargetReq r->buf dynamically
Asias He [Fri, 13 Sep 2013 06:56:55 +0000 (14:56 +0800)]
scsi: Allocate SCSITargetReq r->buf dynamically

BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1007330
Brew: https://brewweb.devel.redhat.com/taskinfo?taskID=6282465

This is the backport of the following commit. The patch is not
sent public since it is a embargoed bug.

   r->buf is hardcoded to 2056 which is (256 + 1) * 8, allowing 256 luns at
   most. If more than 256 luns are specified by user, we have buffer
   overflow in scsi_target_emulate_report_luns.

   To fix, we allocate the buffer dynamically.

Signed-off-by: Asias He <asias@redhat.com>
Signed-off-by: Asias He <asias@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
*s/&r->buf/r->buf/ due to type change

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoqemu: Add qemu xen logic for Xen HVM S3 resume
Liu, Jinsong [Wed, 25 Sep 2013 16:40:23 +0000 (16:40 +0000)]
qemu: Add qemu xen logic for Xen HVM S3 resume

This patch is qemu patch 2 to fix Xen HVM S3 bug, adding qemu
xen logic. When qemu wakeup, qemu xen logic is notified and
hypercall to xen hypervisor to unpause domain.

Signed-off-by: Liu Jinsong <jinsong.liu@intel.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
(cherry picked from commit 11addd0ab9371af2b6ec028c7fe4e4c4992252fc)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoqemu: Adjust qemu wakeup
Liu, Jinsong [Wed, 25 Sep 2013 16:38:29 +0000 (16:38 +0000)]
qemu: Adjust qemu wakeup

Currently Xen hvm s3 has a bug coming from the difference between
qemu-traditioanl and qemu-xen. For qemu-traditional, the way to
resume from hvm s3 is via 'xl trigger' command. However, for
qemu-xen, the way to resume from hvm s3 inherited from standard
qemu, i.e. via QMP, and it doesn't work under Xen.

The root cause is, for qemu-xen, 'xl trigger' command didn't reset
devices, while QMP didn't unpause hvm domain though they did qemu
system reset.

We have two qemu patches and one xl patch to fix Xen hvm s3 bug.
This patch is the qemu patch 1. It adjusts qemu wakeup so that
Xen s3 resume logic (which will be implemented at qemu patch 2)
will be notified after qemu system reset.

Signed-off-by: Liu Jinsong <jinsong.liu@intel.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
(cherry picked from commit 4bc78a877252d772b983810a7d2c0be00e9be70e)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agocoroutine: add ./configure --disable-coroutine-pool
Stefan Hajnoczi [Wed, 11 Sep 2013 14:42:35 +0000 (16:42 +0200)]
coroutine: add ./configure --disable-coroutine-pool

The 'gthread' coroutine backend was written before the freelist (aka
pool) existed in qemu-coroutine.c.

This means that every thread is expected to exit when its coroutine
terminates.  It is not possible to reuse threads from a pool.

This patch automatically disables the pool when 'gthread' is used.  This
allows the 'gthread' backend to work again (for example,
tests/test-coroutine completes successfully instead of hanging).

I considered implementing thread reuse but I don't want quirks like CPU
affinity differences due to coroutine threads being recycled.  The
'gthread' backend is a reference backend and it's therefore okay to skip
the pool optimization.

Note this patch also makes it easy to toggle the pool for benchmarking
purposes:

  ./configure --with-coroutine-backend=ucontext \
              --disable-coroutine-pool

Reported-by: Gabriel Kerneis <gabriel@kerneis.info>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Gabriel Kerneis <gabriel@kerneis.info>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
(cherry picked from commit 70c60c089fdc6bf8a79324e492c13e8c08d55942)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agopiix4: disable io on reset
Michael S. Tsirkin [Wed, 11 Sep 2013 10:33:31 +0000 (13:33 +0300)]
piix4: disable io on reset

io base register at 0x40 is cleared on reset,
but io is not disabled until some other event
happens to call pm_io_space_update.

Invoke pm_io_space_update directly to make this
consistent.

Cc: qemu-stable@nongnu.org
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
(cherry picked from commit c046e8c4a26c902ca1b4f5bdf668a2da6bc75f54)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agovmdk: fix cluster size check for flat extents
Fam Zheng [Mon, 23 Sep 2013 09:18:29 +0000 (17:18 +0800)]
vmdk: fix cluster size check for flat extents

We use the extent size as cluster size for flat extents (where no L1/L2
table is allocated so it's safe) reuse sector calculating code with
sparse extents.

Don't pass in the cluster size for adding flat extent, just set it to
sectors later, then the cluster size checking will not fail.

The cluster_sectors is changed to int64_t to allow big flat extent.

Without this, flat extent opening is broken:

    # qemu-img create -f vmdk -o subformat=monolithicFlat /tmp/a.vmdk 100G
    Formatting '/tmp/a.vmdk', fmt=vmdk size=107374182400 compat6=off subformat='monolithicFlat' zeroed_grain=off
    # qemu-img info /tmp/a.vmdk
    image: /tmp/a.vmdk
    file format: raw
    virtual size: 0 (0 bytes)
    disk size: 4.0K

Signed-off-by: Fam Zheng <famz@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
(cherry picked from commit 301c7d38a0c359b91526391d13617386f3d9bb29)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agorbd: avoid qemu_rbd_snap_list() memory leaks
Stefan Hajnoczi [Wed, 25 Sep 2013 14:00:48 +0000 (16:00 +0200)]
rbd: avoid qemu_rbd_snap_list() memory leaks

When there are no snapshots qemu_rbd_snap_list() returns 0 and the
snapshot table pointer is NULL.  Don't forget to free the snaps buffer
we allocated for librbd rbd_snap_list().

When the function succeeds don't forget to free the snaps buffer after
calling rbd_snap_list_end().

Cc: qemu-stable@nongnu.org
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
(cherry picked from commit 9e6337d0818650362149b734d53edf9489f3acaa)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agotap: Use numbered tap/tun devices on all *BSD OS's
Brad Smith [Sun, 4 Aug 2013 02:20:41 +0000 (22:20 -0400)]
tap: Use numbered tap/tun devices on all *BSD OS's

The following patch simplifies the *BSD tap/tun code and makes use of numbered
tap/tun interfaces on all *BSD OS's. NetBSD has a patch in their pkgsrc tree
to make use of this feature and DragonFly also supports this as well.

Signed-off-by: Brad Smith <brad@comstyle.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
(cherry picked from commit aa4f082f7526d39dac8e2ca64d192d858014ee10)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoiov: avoid "orig_len may be used unitialized" warning
Michael Tokarev [Sat, 14 Sep 2013 09:11:36 +0000 (13:11 +0400)]
iov: avoid "orig_len may be used unitialized" warning

Signed-off-by: Wenchao Xia <xiawenc@linux.vnet.ibm.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
(cherry picked from commit 2be178a475289286db80de5ddd7830e67e112bdd)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoxhci: emulate intr endpoint intervals correctly
Gerd Hoffmann [Wed, 28 Aug 2013 09:38:44 +0000 (11:38 +0200)]
xhci: emulate intr endpoint intervals correctly

Respect the interval for interrupt endpoints, so we don't finish
transfers as fast as possible but at the rate configured by the guest.

Fixes guest deadlocks triggered by interrupt storms.

Cc:
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(cherry picked from commit 4d7a81c06f5f17e019a2d3a18300500bd64f6f40)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agovirtio-blk: do not relay a previous driver's WCE configuration to the current
Paolo Bonzini [Fri, 20 Sep 2013 15:31:55 +0000 (17:31 +0200)]
virtio-blk: do not relay a previous driver's WCE configuration to the current

The following sequence happens:
- the SeaBIOS virtio-blk driver does not support the WCE feature, which
causes QEMU to disable writeback caching

- the Linux virtio-blk driver resets the device, finds WCE is available
but writeback caching is disabled; tells block layer to not send cache
flush commands

- the Linux virtio-blk driver sets the DRIVER_OK bit, which causes
writeback caching to be re-enabled, but the Linux virtio-blk driver does
not know of this side effect and cache flushes remain disabled

The bug is at the third step.  If the guest does know about CONFIG_WCE,
QEMU should ignore the WCE feature's state.  The guest will control the
cache mode solely using configuration space.  This change makes Linux
do flushes correctly, but Linux will keep SeaBIOS's writethrough mode.

Hence, whenever the guest is reset, the cache mode of the disk should
be reset to whatever was specified in the "-drive" option.  With this
change, the Linux virtio-blk driver finds that writeback caching is
enabled, and tells the block layer to send cache flush commands
appropriately.

Reported-by: Rusty Russell <rusty@au1.ibm.com
Cc: qemu-stable@nongnu.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
(cherry picked from commit ef5bc96268ceec64769617dc53b0ac3a20ff351c)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoblockdev: do not default cache.no-flush to true
Paolo Bonzini [Thu, 19 Sep 2013 16:48:53 +0000 (18:48 +0200)]
blockdev: do not default cache.no-flush to true

That's why all my VMs were so fast lately. :)

This changed in 1.6.0 by mistake in patch 29c4e2b (blockdev: Split up
'cache' option, 2013-07-18).

Cc: qemu-stable@nongnu.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
(cherry picked from commit 1df6fa4bc6754a170cf511a78e2e6fef84eb5228)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agotci: Fix qemu-alpha on 32 bit hosts (wrong assertions)
Stefan Weil [Thu, 12 Sep 2013 18:17:50 +0000 (20:17 +0200)]
tci: Fix qemu-alpha on 32 bit hosts (wrong assertions)

Debian busybox-static for alpha has a load address of 0x0000000120000000
which is mapped to 0x0000000020000000 for 32 bit hosts.

qemu-alpha uses the TCG opcodes qemu_ld32, qemu_ld64, qemu_st32 and
qemu_st64 which all raise the assertion (taddr == host_addr).

Remove all assertions of this type because they are either wrong or
unnecessary (when sizeof(tcg_target_ulong) >= sizeof(target_ulong)).

Cc: qemu-stable <qemu-stable@nongnu.org>
Signed-off-by: Stefan Weil <sw@weilnetz.de>
Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
(cherry picked from commit 07ac4dc5db22a31e47b149abdbc5ea99013cf4de)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agokvmvapic: Clear also physical ROM address when entering INACTIVE state
Jan Kiszka [Tue, 3 Sep 2013 16:08:52 +0000 (18:08 +0200)]
kvmvapic: Clear also physical ROM address when entering INACTIVE state

To avoid misinterpreting INACTIVE after migration as old qemu-kvm's
STANDBY, also clear rom_state_paddr when going back to this state.

CC: qemu-stable@nongnu.org
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit 4357930b8a7d2fcff2d8121ec518117428a781e7)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agokvmvapic: Enter inactive state on hardware reset
Jan Kiszka [Tue, 3 Sep 2013 16:08:51 +0000 (18:08 +0200)]
kvmvapic: Enter inactive state on hardware reset

ROM layout may change after reset of devices are hotplugged, so we have
to pick up the physical address again when the ROM is initialized. This
is best achieved by resetting the state to INACTIVE.

CC: qemu-stable@nongnu.org
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit c056bc3f3464cfae1c94b7dd633d3ec13b13b655)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agokvmvapic: Catch invalid ROM size
Jan Kiszka [Tue, 3 Sep 2013 16:08:50 +0000 (18:08 +0200)]
kvmvapic: Catch invalid ROM size

If not caught early, a zero-length ROM will cause a NULL-pointer access
later on in patch_hypercalls when allocating a zero-length ROM copy and
trying to read from it.

CC: qemu-stable@nongnu.org
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit 18e5eec4db96a00907eb588a2b803401637c7f67)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agochardev: fix pty_chr_timer
Gerd Hoffmann [Thu, 22 Aug 2013 09:43:58 +0000 (11:43 +0200)]
chardev: fix pty_chr_timer

pty_chr_timer first calls pty_chr_update_read_handler(), then clears
timer_tag (because it is a one-shot timer).   This is the wrong order
though.  pty_chr_update_read_handler might re-arm time timer, and the
new timer_tag gets overwitten in that case.

This leads to crashes when unplugging a pty chardev:  pty_chr_close
thinks no timer is running -> timer isn't canceled -> pty_chr_timer gets
called with stale CharDevState -> BOOM.

This patch fixes the ordering.
Kill the pointless goto while being at it.

https://bugzilla.redhat.com/show_bug.cgi?id=994414

Cc: qemu-stable@nongnu.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(cherry picked from commit b0d768c35e08d2057b63e8e77e7a513c447199fa)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agopcnet-pci: mark I/O and MMIO as LITTLE_ENDIAN
Aurelien Jarno [Wed, 28 Aug 2013 12:17:39 +0000 (14:17 +0200)]
pcnet-pci: mark I/O and MMIO as LITTLE_ENDIAN

Now that the memory subsystem is propagating the endianness correctly,
the pcnet-pci device should have its I/O ports and MMIO memory marked
as LITTLE_ENDIAN, as PCI devices are little endian.

This makes the pcnet-pci NIC to work again on big endian MIPS Malta
(default NIC).

Cc: qemu-stable@nongnu.org
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
(cherry picked from commit a26405b350c0d31d5ef53f3b459aeb6eaaf50db0)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoqapi-types.py: Fix enum struct sizes on i686
Cole Robinson [Sat, 31 Aug 2013 22:36:17 +0000 (18:36 -0400)]
qapi-types.py: Fix enum struct sizes on i686

Unlike other list types, enum wasn't adding any padding, which caused
a mismatch between the generated struct size and GenericList struct
size. More details in a678e26cbe89f7a27cbce794c2c2784571ee9d21

This crashed qemu if calling qmp query-tpm-types for example, which
upsets libvirt capabilities probing. Reproducer on i686:

(sleep 5; printf '{"execute":"qmp_capabilities"}\n{"execute":"query-tpm-types"}\n') | ./i386-softmmu/qemu-system-i386 -S -nodefaults -nographic -M none -qmp stdio

https://bugs.launchpad.net/qemu/+bug/1219207

Cc: qemu-stable@nongnu.org
Signed-off-by: Cole Robinson <crobinso@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Tested-by: Richard W.M. Jones <rjones@redhat.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
(cherry picked from commit 02dc4bf5684d3fb46786fab2ecff98214b1df9fe)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agopc_q35: Initialize Xen.
Anthony PERARD [Mon, 9 Sep 2013 16:15:53 +0000 (16:15 +0000)]
pc_q35: Initialize Xen.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
(cherry picked from commit 254c12825f93f405658ca3366cd34f8a8ad23511)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agopc: Initializing ram_memory under Xen.
Anthony PERARD [Mon, 9 Sep 2013 16:15:52 +0000 (16:15 +0000)]
pc: Initializing ram_memory under Xen.

Signed-off-by: Anthony PERARD <anthony.perard@citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
CC: qemu-stable@nongnu.org
(cherry picked from commit 04d7bad8a4fb23e6d9af9d06ce3ddc28a251d94d)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoqxl: fix local renderer
Gerd Hoffmann [Thu, 5 Sep 2013 19:57:19 +0000 (21:57 +0200)]
qxl: fix local renderer

The local spice renderer assumes the primary surface is located at the
start of the "ram" bar.  This used to be a requirement in qxl hardware
revision 1.  In revision 2+ this is relaxed.  Nevertheless guest drivers
continued to use the traditional location, for historical and backward
compatibility reasons.  The qxl kms driver doesn't though as it depends
on qxl revision 4+ anyway.

Result is that local rendering is hosed for recent linux guests, you'll
get pixel garbage with non-spice ui (gtk, sdl, vnc) and when doing
screendumps.  Fix that by doing a proper mapping of the guest-specified
memory location.

https://bugzilla.redhat.com/show_bug.cgi?id=948717

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(cherry picked from commit c58c7b959b93b864a27fd6b3646ee1465ab8832b)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoehci: save device pointer in EHCIState
Gerd Hoffmann [Mon, 9 Sep 2013 08:18:17 +0000 (10:18 +0200)]
ehci: save device pointer in EHCIState

We'll need a pointer to the actual pci/sysbus device,
stick a pointer to it into the EHCIState struct.

https://bugzilla.redhat.com/show_bug.cgi?id=1005495

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(cherry picked from commit adbecc89731cf3e0ae656d50ea9fa58c589c4bdc)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agone2000: mark I/O as LITTLE_ENDIAN
Aurelien Jarno [Mon, 2 Sep 2013 11:10:34 +0000 (13:10 +0200)]
ne2000: mark I/O as LITTLE_ENDIAN

Now that the memory subsystem is propagating the endianness correctly,
the ne2000 device should have its I/O ports marked as LITTLE_ENDIAN, as
PCI devices are little endian.

This makes the ne2000 NIC to work again on PowerPC.

Cc: qemu-stable@nongnu.org
Cc: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
(cherry picked from commit 45d883dcf208160e2db308d1b368beb74f37dc7e)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoexec: check offset_within_address_space for register subpage
Hu Tao [Thu, 29 Aug 2013 10:21:16 +0000 (18:21 +0800)]
exec: check offset_within_address_space for register subpage

If offset_within_address_space falls in a page, then we register a
subpage. So check offset_within_address_space rather than
offset_within_region.

Cc: qemu-stable@nongnu.org
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Richard Henderson <rth@twiddle.net>
Cc: "Andreas Färber" <afaerber@suse.de>
Cc: Peter Maydell <peter.maydell@linaro.org>
Cc: Blue Swirl <blauwirbel@gmail.com>
Signed-off-by: Hu Tao <hutao@cn.fujitsu.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit 88266249701032211c1d7449460d063fbc01bf12)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoRevert "memory: Return -1 again on reads from unsigned regions"
Jan Kiszka [Mon, 2 Sep 2013 16:43:31 +0000 (18:43 +0200)]
Revert "memory: Return -1 again on reads from unsigned regions"

This reverts commit 9b8c69243585a32d14b9bb9fcd52c37b0b5a1b71.

The commit was wrong: We only return -1 on invalid accesses, not on
valid but unbacked ones. This broke various corner cases.

Cc: qemu-stable@nongnu.org
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit 68a7439a150d6b4da99082ab454b9328b151bc25)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agomemory: Provide separate handling of unassigned io ports accesses
Jan Kiszka [Mon, 2 Sep 2013 16:43:30 +0000 (18:43 +0200)]
memory: Provide separate handling of unassigned io ports accesses

Accesses to unassigned io ports shall return -1 on read and be ignored
on write. Ensure these properties via dedicated ops, decoupling us from
the memory core's handling of unassigned accesses.

Cc: qemu-stable@nongnu.org
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit 3bb28b7208b349e7a1b326e3c6ef9efac1d462bf)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agow32: Fix access to host devices (regression)
Stefan Weil [Sun, 1 Sep 2013 20:59:25 +0000 (22:59 +0200)]
w32: Fix access to host devices (regression)

QEMU failed to open host devices like \\.\PhysicalDrive0 (first hard disk)
since some time (commit 8a79380b8ef1b02d2abd705dd026a18863b09020?).

Those devices use hdev_open which did not use the latest API for options.
This resulted in a fatal runtime error:

  Block protocol 'host_device' doesn't support the option 'filename'

Duplicate code from raw_open to fix this.

Cc: qemu-stable@nongnu.org
Reported-by: David Brenner <david.brenner3@gmail.com>
Signed-off-by: Stefan Weil <sw@weilnetz.de>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
(cherry picked from commit 68dc036488dfea170627a55e6ee3dfd7f2c2063e)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agousb: parallelize usb3 streams
Gerd Hoffmann [Tue, 27 Aug 2013 13:25:24 +0000 (15:25 +0200)]
usb: parallelize usb3 streams

usb3 bulk endpoints with streams are implicitly pipelined now,
so the requests will actually be processed in parallel.  Also
allow them to complete out-of-order.

Fixes stalls in the uas driver.

Cc: qemu-stable@nongnu.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(cherry picked from commit c96c41ed0d38d68a6c8b6f84751afebafeae31be)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoxhci: reset port when disabling slot
Gerd Hoffmann [Wed, 28 Aug 2013 09:47:09 +0000 (11:47 +0200)]
xhci: reset port when disabling slot

Cc: qemu-stable@nongnu.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(cherry picked from commit 5c67dd7b4884979a2613a4702ac1ab68b0e6a16e)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoexec: always use MADV_DONTFORK
Andrea Arcangeli [Thu, 25 Jul 2013 10:11:15 +0000 (12:11 +0200)]
exec: always use MADV_DONTFORK

MADV_DONTFORK prevents fork to fail with -ENOMEM if the default
overcommit heuristics decides there's too much anonymous virtual
memory allocated. If the KVM secondary MMU is synchronized with MMU
notifiers or not, doesn't make a difference in that regard.

Secondly it's always more efficient to avoid copying the guest
physical address space in the fork child (so we avoid to mark all the
guest memory readonly in the parent and so we skip the establishment
and teardown of lots of pagetables in the child).

In the common case we can ignore the error if MADV_DONTFORK is not
available. Leave a second invocation that errors out in the KVM path
if MMU notifiers are missing and KVM is enabled, to abort in such
case.

Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
Tested-By: Benoit Canet <benoit@irqsave.net>
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Gleb Natapov <gleb@redhat.com>
(cherry picked from commit 3e469dbfe413c25d48321c3a19ddfae0727dc6e5)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agovirtio_pci: fix level interrupts with irqfd
Michael S. Tsirkin [Sun, 1 Sep 2013 08:03:45 +0000 (11:03 +0300)]
virtio_pci: fix level interrupts with irqfd

commit 62c96360ae7f2c7a8b029277fbb7cb082fdef7fd
    virtio-pci: fix level interrupts
only helps systems without irqfd: on systems with irqfd support we
passed in flag requesting irqfd even when msix is disabled.

As a result, for level interrupts we didn't install an fd handler so
unmasking an fd had no effect.

Fix this up.

Cc: qemu-stable@nongnu.org
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
(cherry picked from commit 23fe2b3f9e7df8da53ac1bc32c6875254911d7f4)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoexec: fix writing to MMIO area with non-power-of-two length
Paolo Bonzini [Mon, 29 Jul 2013 12:27:39 +0000 (14:27 +0200)]
exec: fix writing to MMIO area with non-power-of-two length

The problem is introduced by commit 2332616 (exec: Support 64-bit
operations in address_space_rw, 2013-07-08).  Before that commit,
memory_access_size would only return 1/2/4.

Since alignment is already handled above, reduce l to the largest
power of two that is smaller than l.

Cc: qemu-stable@nongnu.org
Reported-by: Oleksii Shevchuk <alxchk@gmail.com>
Tested-by: Oleksii Shevchuk <alxchk@gmail.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit 098178f2749a63fbbb1a626dcc7d939d5cb2bde7)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoadlib: sort offsets in portio registration
Hervé Poussineau [Wed, 14 Aug 2013 09:49:04 +0000 (11:49 +0200)]
adlib: sort offsets in portio registration

This fixes the following assert when -device adlib is used:
ioport.c:240: portio_list_add: Assertion `pio->offset >= off_last' failed.

Signed-off-by: Hervé Poussineau <hpoussin@reactos.org>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
(cherry picked from commit 2b21fb57af305f17841d79e7e2e02ad1aec3f5ca)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agotarget-i386: fix disassembly with PAE=1, PG=0
Paolo Bonzini [Fri, 30 Aug 2013 09:58:45 +0000 (11:58 +0200)]
target-i386: fix disassembly with PAE=1, PG=0

CR4.PAE=1 will not enable paging if CR0.PG=0, but the "if" chain
in x86_cpu_get_phys_page_debug says otherwise.  Check CR0.PG
before everything else.

Fixes "-d in_asm" for a code section at the beginning of OVMF.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Richard Henderson <rth@twiddle.net>
Reviewed-by: Max Filippov <jcmvbkbc@gmail.com>
(cherry picked from commit f2f8560c7a5303065a2a3207ec475dfb3a622a0e)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoblock: expect errors from bdrv_co_is_allocated
Paolo Bonzini [Wed, 4 Sep 2013 17:00:25 +0000 (19:00 +0200)]
block: expect errors from bdrv_co_is_allocated

Some bdrv_is_allocated callers do not expect errors, but the fallback
in qcow2.c might make other callers trip on assertion failures or
infinite loops.

Fix the callers to always look for errors.

Cc: qemu-stable@nongnu.org
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
(cherry picked from commit d663640c04f2aab810915c556390211d75457704)

Conflicts:

block/cow.c

*modified to avoid dependency on upstream's e641c1e8

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoRevert "usb-hub: report status changes only once"
Gerd Hoffmann [Tue, 27 Aug 2013 15:00:04 +0000 (17:00 +0200)]
Revert "usb-hub: report status changes only once"

This reverts commit a309ee6e0a256f690760abfba44fceaa52a7c2f3.

This isn't in line with the usb specification and adds regressions,
win7 fails to drive the usb hub for example.

Was added because it "solved" the issue of hubs interacting badly
with the xhci host controller.  Now with the root cause being fixed
in xhci (commit <FIXME>) we can revert this one.

Cc: qemu-stable@nongnu.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(cherry picked from commit bdebd6ee81f4d849aa8541c289203e3992450db0)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoxhci: fix endpoint interval calculation
Gerd Hoffmann [Wed, 28 Aug 2013 09:39:02 +0000 (11:39 +0200)]
xhci: fix endpoint interval calculation

Cc: qemu-stable@nongnu.org
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(cherry picked from commit ca7162782a293f525633e5816470498dd86a51cf)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agovirtio: virtqueue_get_avail_bytes: fix desc_pa when loop over the indirect descriptor...
yinyin [Thu, 22 Aug 2013 06:47:16 +0000 (14:47 +0800)]
virtio: virtqueue_get_avail_bytes: fix desc_pa when loop over the indirect descriptor table

virtqueue_get_avail_bytes: when found a indirect desc, we need loop over it.
           /* loop over the indirect descriptor table */
           indirect = 1;
           max = vring_desc_len(desc_pa, i) / sizeof(VRingDesc);
           num_bufs = i = 0;
           desc_pa = vring_desc_addr(desc_pa, i);
But, It init i to 0, then use i to update desc_pa. so we will always get:
desc_pa = vring_desc_addr(desc_pa, 0);
the last two line should swap.

Cc: qemu-stable@nongnu.org
Signed-off-by: Yin Yin <yin.yin@cs2c.com.cn>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
(cherry picked from commit 1ae2757c6c4525c9b42f408c86818f843bad7418)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agopseries: Fix stalls on hypervisor virtual console
Anton Blanchard [Tue, 13 Aug 2013 04:10:04 +0000 (14:10 +1000)]
pseries: Fix stalls on hypervisor virtual console

A number of users are reporting stalls when using the pseries
hypervisor virtual console.

A simple test case is to paste 15 or 17 characters at a time
into the console. Pasting 15 characters at a time works fine
but pasting 17 characters hangs for a random amount of time.
Other activity (network, qemu monitor etc) unblocks it.

If qemu-char tries to send more than 16 characters at once,
vty_can_receive returns false. At this point we have to
wait for the guest to consume that output. Everything is good
so far.

The problem occurs when the the guest does consume the output.
We need to signal back to the qemu-char layer that we are
ready for more input. Without this we block until something
else kicks us (eg network activity).

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Alexander Graf <agraf@suse.de>
(cherry picked from commit 7770b6f78a2d655e03852a5de238f5926c92be6a)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agopc: fix regression for 64 bit PCI memory
Michael S. Tsirkin [Tue, 27 Aug 2013 05:37:26 +0000 (08:37 +0300)]
pc: fix regression for 64 bit PCI memory

commit 398489018183d613306ab022653552247d93919f
    pc: limit 64 bit hole to 2G by default
introduced a way for management to control
the window allocated to the 64 bit PCI hole.

This is useful, but existing management tools do not know how to set
this property.  As a result, e.g. specifying a large ivshmem device with
size > 4G is broken by default.  For example this configuration no
longer works:

-device ivshmem,size=4294967296,chardev=cfoo
-chardev socket,path=/tmp/sock,id=cfoo,server,nowait

Fix this by detecting that hole size was not specified
and defaulting to the backwards-compatible value of 1 << 62.

Cc: qemu-stable@nongnu.org
Cc: Igor Mammedov <imammedo@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
(cherry picked from commit 1466cef32dd5e7ef3c6477e96d85d92302ad02e3)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoscsi: Fix scsi_bus_legacy_add_drive() scsi-generic with serial
Markus Armbruster [Fri, 23 Aug 2013 16:01:58 +0000 (18:01 +0200)]
scsi: Fix scsi_bus_legacy_add_drive() scsi-generic with serial

scsi_bus_legacy_add_drive() creates either a scsi-disk or a
scsi-generic device.  It sets property "serial" to argument serial
unless null.  Crashes with scsi-generic, because it doesn't have such
the property.

Only usb_msd_initfn_storage() passes non-null serial.  Reproducer:

    $ qemu-system-x86_64 -nodefaults -display none -S -usb \
    -drive if=none,file=/dev/sg1,id=usb-drv0 \
    -device usb-storage,id=usb-msd0,drive=usb-drv0,serial=123
    qemu-system-x86_64: -device usb-storage,id=usb-msd0,drive=usb-drv0,serial=123: Property '.serial' not found
    Aborted (core dumped)

Fix by handling exactly like "removable": set the property only when
it exists.

Cc: qemu-stable@nongnu.org
Reviewed-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
(cherry picked from commit c24e7517ee4a98e90eee5f0f07708a1fa12326b3)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agousb/dev-hid: Modified usb-tablet category from Misc to Input
Marcel Apfelbaum [Thu, 22 Aug 2013 17:11:36 +0000 (20:11 +0300)]
usb/dev-hid: Modified usb-tablet category from Misc to Input

usb-tablet device was wrongly assigned to Misc category

Reported-by: Markus Armbruster <armbru@redhat.com>
Cc: qemu-stable@nongnu.org
Signed-off-by: Marcel Apfelbaum <marcel.a@redhat.com>
Reviewed-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(cherry picked from commit 31efd2e883018b4c079ad082105bc161fbb3fef8)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoscripts/qapi.py: Avoid syntax not supported by Python 2.4
Peter Maydell [Tue, 20 Aug 2013 14:50:15 +0000 (15:50 +0100)]
scripts/qapi.py: Avoid syntax not supported by Python 2.4

The Python "except Foo as x" syntax was only introduced in
Python 2.6, but we aim to support Python 2.4 and later.
Use the old-style "except Foo, x" syntax instead, thus
fixing configure/compile on systems with older Python.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
(cherry picked from commit 21e0043bada1a24ae2ba6cd0051e104c0cbf9634)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agordma: silly ipv6 bugfix
Michael R. Hines [Mon, 19 Aug 2013 02:27:08 +0000 (22:27 -0400)]
rdma: silly ipv6 bugfix

My bad - but it's very important for us to warn the user that
IPv6 is broken on RoCE in linux right now, until linux releases
a fixed version.

Signed-off-by: Michael R. Hines <mrhines@us.ibm.com>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
(cherry picked from commit c89aa2f1851b08c3efa8a1070c0a6b9a36e1227f)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agotarget-ppc: fix bit extraction for FPBF and FPL
Aurelien Jarno [Thu, 15 Aug 2013 11:32:38 +0000 (13:32 +0200)]
target-ppc: fix bit extraction for FPBF and FPL

Bit extraction for the FP BF and L field of the MTFSFI and MTFSF
instructions is wrong and doesn't match the reference manual (which
explain the bit number in big endian format). It has been broken in
commit 7d08d85645def18eac2a9d672c1868a35e0bcf79.

This patch fixes this, which in turn fixes the problem reported by
Khem Raj about the floor() function of libm.

Reported-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
CC: qemu-stable@nongnu.org (1.6)
Signed-off-by: Alexander Graf <agraf@suse.de>
(cherry picked from commit 779f659021d1754117bce1aab9370dc22f37ae07)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agogdbstub: Fix gdb_register_coprocessor() register counting
Andreas Färber [Mon, 12 Aug 2013 16:09:47 +0000 (18:09 +0200)]
gdbstub: Fix gdb_register_coprocessor() register counting

Commit a0e372f0c49ac01faeaeb73a6e8f50e8ac615f34 reorganized the register
counting for GDB. While it seems correct not to let the total number of
registers skyrocket in an SMP scenario through a static variable, the
distinction between total register count and 'g' packet register count
(last_reg vs. num_g_regs) got lost among the way.

Fix this by introducing CPUState::gdb_num_g_regs and using that in
gdb_handle_packet().

Reported-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Cc: qemu-stable@nongnu.org (stable-1.6)
Tested-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Tested-by: Max Filippov <jcmvbkbc@gmail.com>
Tested-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Andreas Färber <afaerber@suse.de>
(cherry picked from commit 35143f0164e6933a85c7c2b8a89a040d881a9151)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoblock: ensure bdrv_drain_all() works during bdrv_delete()
Stefan Hajnoczi [Thu, 27 Jun 2013 13:32:26 +0000 (15:32 +0200)]
block: ensure bdrv_drain_all() works during bdrv_delete()

In bdrv_delete() make sure to call bdrv_make_anon() *after* bdrv_close()
so that the device is still seen by bdrv_drain_all() when iterating
bdrv_states.

Cc: qemu-stable@nongnu.org
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
(cherry picked from commit e1b5c52e04d04bb93546c6e37e8884889d047cb1)

Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
11 years agoemulator: boot completed logging 48/11848/2
GiWoong Kim [Wed, 6 Nov 2013 07:44:01 +0000 (16:44 +0900)]
emulator: boot completed logging

1. Added logging and state setting for emulator boot completed.
2. For efficient logging, I moved gettimeofday function to osutil

Change-Id: Iea9ab8862c62f66bb33f12b6ab2b7aa778dadf3a
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agopackage: modify install and remove script. 30/11830/1
Kitae Kim [Wed, 6 Nov 2013 04:00:02 +0000 (13:00 +0900)]
package: modify install and remove script.

If tizen-kvm-multi script for multi users on a linux machine exists,
those scripts will not install tizen-kvm and not ask administrative permission
because the tizen-kvm-multi script already enable kvm driver before.

Change-Id: I41d5da6a783e7be64ad43d5d5ae6085385ebd98b
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
11 years agocommunication: modified event message names 47/11847/1
GiWoong Kim [Tue, 5 Nov 2013 09:25:28 +0000 (18:25 +0900)]
communication: modified event message names

There is little difference of event message name between
Qemu(c - msruskin_server.c) and Skin(java - ICommunicator.java).
To improve the readability of the our source code, I change
the some message and function names.

Change-Id: I457a35cd4713696990ea229e1f41d5a13ac00c2b
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agodisplay, skin: remove some warnings 42/11742/2
GiWoong Kim [Mon, 4 Nov 2013 03:06:47 +0000 (12:06 +0900)]
display, skin: remove some warnings

1. added null pointer check
2. added unlock for exceptional path (maru_sdl.c)
3. added title for boilerplate (CustomScrollBar, CustomScrollBarComposite,
CustomScrollBarCompositeLayout.java)
4. define socket macro (maruskin_server.c)
5. minor modification, etc

Change-Id: Ibf79e407d259366c72b5f7b35e400694e276fb08
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoMerge changes Ib7b505a9,I9a140e2c,I4dfbc92d,I20695a07,I82e8bd50,I3e6d670a,I1c7dd0a2...
daiyoung kim [Mon, 4 Nov 2013 07:10:19 +0000 (23:10 -0800)]
Merge changes Ib7b505a9,I9a140e2c,I4dfbc92d,I20695a07,I82e8bd50,I3e6d670a,I1c7dd0a2 into tizen

* changes:
  brillcodec: modified a way to get meta_offset.
  brillcodec: fixed sync problem when processing multi-contexts
  brillcodec: added flush_buffer routine during decoding.
  brillcodec: Apply W/A for worker threads starvation.
  brillcodec: improved performance.
  brillcodec: Fixed deadlock problem.
  brillcodec: source clean-up.

11 years agoproxy: replace gconftool-2 with gsettings 36/11736/1
munkyu.im [Mon, 4 Nov 2013 06:29:35 +0000 (15:29 +0900)]
proxy: replace gconftool-2 with gsettings

Gnome do not support gconftool-2 anymore.
They migrate Gconf to GSettings.
They support it until version 3.2.6

Change-Id: Ib26c3ca82dcb0e6b4b05e738c24c01f4e6781c6b
Signed-off-by: munkyu.im <munkyu.im@samsung.com>
11 years agobrillcodec: modified a way to get meta_offset. 32/11732/1
Kitae Kim [Mon, 4 Nov 2013 06:12:05 +0000 (15:12 +0900)]
brillcodec: modified a way to get meta_offset.

Since codec information such as name, type and etc. has stored early when probing driver,
it is not necessary to reserve a certain memory region for it.

Change-Id: Ib7b505a921e0052a19e86430a48e6961e5335323
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
11 years agobrillcodec: fixed sync problem when processing multi-contexts 31/11731/1
Kitae Kim [Mon, 4 Nov 2013 06:09:40 +0000 (15:09 +0900)]
brillcodec: fixed sync problem when processing multi-contexts

meta_data queue such as context index, api index and etc.
and codec_data queue which include audio or video input buffer were separated.
In case, video buffer can be deliveried to decode_audio function
because get an element from the meta queue and input queue might be not predictable in the multi-threads.
Two data have to be managed by one queue.

Change-Id: I9a140e2c333042786d10530210b0028823a74c2c
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
11 years agobrillcodec: added flush_buffer routine during decoding. 30/11730/1
Kitae Kim [Mon, 4 Nov 2013 05:43:17 +0000 (14:43 +0900)]
brillcodec: added flush_buffer routine during decoding.

avcodec_flush_buffers is required to reset the internal decoder state and flush internal buffers.
If there is no flush routine, decoding functions do not return picture or audio frame during seek operation.

Change-Id: I4dfbc92d82348294176b17e1c9c1238cea9146da
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
11 years agobrillcodec: Apply W/A for worker threads starvation. 29/11729/1
SeokYeon Hwang [Mon, 14 Oct 2013 10:20:04 +0000 (19:20 +0900)]
brillcodec: Apply W/A for worker threads starvation.

1. Increase default thread pool size to 8.
2. Check idle threads and add sleep against threads starvation.

Change-Id: I20695a07ed601ed44b2a639c1c62aaf2ebea3575
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
11 years agobrillcodec: improved performance. 28/11728/1
SeokYeon Hwang [Mon, 14 Oct 2013 07:43:46 +0000 (16:43 +0900)]
brillcodec: improved performance.

Reduced synchronizing areas.

Change-Id: I82e8bd50f2a9a75c6442708d1df3e4577cd5ee91
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
11 years agobrillcodec: Fixed deadlock problem. 27/11727/1
SeokYeon Hwang [Mon, 14 Oct 2013 06:40:29 +0000 (15:40 +0900)]
brillcodec: Fixed deadlock problem.

This problem happened frequently on Windows and wrong use of pthread_cond_signal a cause of deadlock.
pthread_cond_wait api has to be locked by mutex when you use it.

Change-Id: I3e6d670a36a8dcec92e49aa71d301d6b7854be8a
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
11 years agobrillcodec: source clean-up. 26/11726/1
Kitae Kim [Mon, 4 Nov 2013 05:35:27 +0000 (14:35 +0900)]
brillcodec: source clean-up.

added an exception case when worker thread tries to do the duplicated request.

Change-Id: I1c7dd0a256ab7738a7ba348f6aff8f238981b32c
Signed-off-by: Kitae Kim <kt920.kim@samsung.com>
11 years agoecp: bug fixed - byte to int conversion. 83/11683/1
Jinhyung Choi [Sun, 3 Nov 2013 03:39:54 +0000 (12:39 +0900)]
ecp: bug fixed - byte to int conversion.

In order to fix emulator control server's port transport.
Added 0xFF isolation for the correct value.

Change-Id: Iaec232e0a2270ecdf0657e9bfcf636d9cff9fa98
Signed-off-by: Jinhyung Choi <jinhyung2.choi@samsung.com>
11 years agoskin: define draw/remove hover function 16/11616/2
GiWoong Kim [Thu, 31 Oct 2013 07:55:33 +0000 (16:55 +0900)]
skin: define draw/remove hover function

refined the parts of source code for
ProfileSpecific Skin

Change-Id: I3d93ef1fa9aedb10c51c9964c12e31eef017bfeb
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoMerge "menu: added Image Path list to Detail Info" into tizen
daiyoung kim [Wed, 30 Oct 2013 10:23:37 +0000 (03:23 -0700)]
Merge "menu: added Image Path list to Detail Info" into tizen

11 years agoMerge "guest_server: changed message format for suspend/resume" into tizen
daiyoung kim [Wed, 30 Oct 2013 07:46:32 +0000 (00:46 -0700)]
Merge "guest_server: changed message format for suspend/resume" into tizen

11 years agomenu: added Image Path list to Detail Info 66/11566/1
GiWoong Kim [Wed, 30 Oct 2013 07:40:33 +0000 (16:40 +0900)]
menu: added Image Path list to Detail Info

Change-Id: I48ae2a7c6b12a56858117f017ec77a8f09191f6b
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoguest_server: changed message format for suspend/resume 65/11565/1
Jinhyung Choi [Wed, 30 Oct 2013 07:23:54 +0000 (16:23 +0900)]
guest_server: changed message format for suspend/resume

Change-Id: I6c7c6766e5baa0e380531c2cf20401d4522fae5e
Signed-off-by: Jinhyung Choi <jinhyung2.choi@samsung.com>
11 years agoMerge changes Ifac28658,I47785ef2,I3adde1a2,I014d39d8,Ifd27e39a,I604e5d4a into tizen
daiyoung kim [Wed, 30 Oct 2013 06:36:56 +0000 (23:36 -0700)]
Merge changes Ifac28658,I47785ef2,I3adde1a2,I014d39d8,Ifd27e39a,I604e5d4a into tizen

* changes:
  menu: switch the function call order for TopMost feature
  skin: no need to setRegion for entire pressed HW keys
  package: version up
  touch: keep the touch point grabbing while finger rearranging
  hwkey: move the pressed key effect into paint listener
  touch: remove null pointer dereferences