sdk/emulator/qemu.git
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

11 years agoguest_server: added a sending suspend state after sdb server registers 61/11561/2
Jinhyung Choi [Wed, 30 Oct 2013 06:18:23 +0000 (15:18 +0900)]
guest_server: added a sending suspend state after sdb server registers

Change-Id: I303b143a329d43ba5f830d9301b5cc0ee0d70fb8
Signed-off-by: Jinhyung Choi <jinhyung2.choi@samsung.com>
11 years agomenu: switch the function call order for TopMost feature 57/11557/1
GiWoong Kim [Wed, 30 Oct 2013 01:49:22 +0000 (10:49 +0900)]
menu: switch the function call order for TopMost feature

gdk_x11_display_get_xdisplay(4.3) > GDK_DISPLAY(3.7)

Change-Id: Ifac28658c350fb0b3aa42dbdff728fd65d11ad79
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoskin: no need to setRegion for entire pressed HW keys 26/11526/1
GiWoong Kim [Tue, 29 Oct 2013 08:38:12 +0000 (17:38 +0900)]
skin: no need to setRegion for entire pressed HW keys

Change-Id: I47785ef2c690dc6048c877813bbbc2d0362fb477
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agopackage: version up 13/11513/1
GiWoong Kim [Tue, 29 Oct 2013 06:42:07 +0000 (15:42 +0900)]
package: version up

1.6.0

Change-Id: I3adde1a29745ca68523d290be23dfa9ad2d02ad0
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agotouch: keep the touch point grabbing while finger rearranging 12/11512/1
GiWoong Kim [Tue, 29 Oct 2013 06:08:38 +0000 (15:08 +0900)]
touch: keep the touch point grabbing while finger rearranging

Change-Id: I014d39d843ee0f9487200b5b55fd833c6f9199ff
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agohwkey: move the pressed key effect into paint listener 11/11511/1
GiWoong Kim [Tue, 29 Oct 2013 04:34:04 +0000 (13:34 +0900)]
hwkey: move the pressed key effect into paint listener

Change-Id: Ifd27e39a29c59d0e2b6cd325b0ad170abf506b0f
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agotouch: remove null pointer dereferences 10/11510/1
GiWoong Kim [Mon, 28 Oct 2013 04:39:45 +0000 (13:39 +0900)]
touch: remove null pointer dereferences

Change-Id: I604e5d4aa5965e745e804da3b70edde27767fcc7
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoskin: indenting & remove repeated condition 62/11362/1
GiWoong Kim [Fri, 25 Oct 2013 02:39:46 +0000 (11:39 +0900)]
skin: indenting & remove repeated condition

Change-Id: I8d3bc5136cd12db1ae070ad42860c5102e3d848a
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoemulator: removed dead code & added lock to touchscreen 61/11361/1
GiWoong Kim [Thu, 24 Oct 2013 03:07:34 +0000 (12:07 +0900)]
emulator: removed dead code & added lock to touchscreen

Change-Id: I8eb4df360822a1e6d0752c99833befe4d732796c
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoA ESM implementation changes for systemd. 00/11300/1
SeokYeon Hwang [Thu, 24 Oct 2013 03:48:46 +0000 (12:48 +0900)]
A ESM implementation changes for systemd.

For systemd boot progress monitor, introduce 'mode' specifier.

Change-Id: I0d79a4167b7034126b9b4bb1c6cbced37fa589d7
Signed-off-by: SeokYeon Hwang <syeon.hwang@samsung.com>
11 years agoRevert "build : YAGL module is excluded from the build on MacOS in temparary." 46/11246/1
jinhyung.jo [Wed, 23 Oct 2013 07:19:06 +0000 (16:19 +0900)]
Revert "build : YAGL module is excluded from the build on MacOS in temparary."

This reverts commit 446e85cb36fa45173a3d83433190b3054efbf63b.

Fixed a build problem on MacOS by followed commit.
commit 9dfe963ec492fbe6a7d8a99bac94515de2848554

Change-Id: If4b47c8379c3b807ed0be1ac765cd325b33e288d
Signed-off-by: Jinhyung Jo <jinhyung.jo@samsung.com>
11 years agoskin: added null check & remove exceptional resource leak 95/11195/1
GiWoong Kim [Tue, 22 Oct 2013 11:55:02 +0000 (20:55 +0900)]
skin: added null check & remove exceptional resource leak

Change-Id: I50f738eee8f3dab4666c34d06990ab27acc43b71
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoskin: block the popup menu while shell grabbing 92/11192/1
GiWoong Kim [Tue, 22 Oct 2013 10:21:07 +0000 (19:21 +0900)]
skin: block the popup menu while shell grabbing

Change-Id: If92b632362127f1e42e29f57f0f9c50a9094bbc8
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoskin: disable gc interpolation for stretched image 68/11168/1
GiWoong Kim [Fri, 18 Oct 2013 06:00:51 +0000 (15:00 +0900)]
skin: disable gc interpolation for stretched image

Change-Id: I9d6e3525958f9cb66d3b6d3dbc98070aa96e78ca
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoMerge "prevent: fixed ecs related prevent issues" into tizen
daiyoung kim [Fri, 18 Oct 2013 10:53:24 +0000 (03:53 -0700)]
Merge "prevent: fixed ecs related prevent issues" into tizen

11 years agoprevent: fixed ecs related prevent issues 03/11103/1
Jinhyung Choi [Fri, 18 Oct 2013 06:34:40 +0000 (15:34 +0900)]
prevent: fixed ecs related prevent issues

Change-Id: I180b1a7c2600576968ab98b9939c8e3b24142c1d
Signed-off-by: Jinhyung Choi <jinhyung2.choi@samsung.com>
11 years agoMerge "YaGL: Batching improved" into tizen
daiyoung kim [Fri, 18 Oct 2013 06:23:46 +0000 (23:23 -0700)]
Merge "YaGL: Batching improved" into tizen

11 years agoMerge "YaGL: Transport improved" into tizen
daiyoung kim [Fri, 18 Oct 2013 06:22:48 +0000 (23:22 -0700)]
Merge "YaGL: Transport improved" into tizen

11 years agoMerge "nfc: arrange message format" into tizen
daiyoung kim [Fri, 18 Oct 2013 01:57:28 +0000 (18:57 -0700)]
Merge "nfc: arrange message format" into tizen

11 years agopackage: version up 73/11073/1
GiWoong Kim [Thu, 17 Oct 2013 09:17:56 +0000 (18:17 +0900)]
package: version up

1.5.103

Change-Id: I73fba0c524f3db439cb1e448bfbbd34eaabeb08e
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoskin: function call re-ordering in arrangeSkin() & etc 72/11072/1
GiWoong Kim [Thu, 17 Oct 2013 09:07:20 +0000 (18:07 +0900)]
skin: function call re-ordering in arrangeSkin() & etc

Change-Id: Ib3f26f7ca8b7759fc5998b67ed07d38ac41cb05c
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agonfc: arrange message format 67/11067/1
munkyu.im [Thu, 17 Oct 2013 08:47:51 +0000 (17:47 +0900)]
nfc: arrange message format

add logs and modify protocol

Change-Id: If007079c9f28856378add559e876baacb6f5665c
Signed-off-by: munkyu.im <munkyu.im@samsung.com>
11 years agoYaGL: Batching improved 81/11081/1
Stanislav Vorobiov [Mon, 7 Oct 2013 11:29:16 +0000 (15:29 +0400)]
YaGL: Batching improved

The improvements are:

* State tracking is moved completely from host to target,
  this allows executing many OpenGL functions such as state queries
  without doing vmexits
* Host code now contains mostly rendering and is made
  as trivial as possible so that amount of time spend inside host
  is minimal
* True TLS is not used anymore, we fake it using yagl_thread, this is
  both faster and doesn't cause compilation problems on Mac
* yagl_thread no longer creates a separate thread for OpenGL call
  processing. The processing is done inplace and OpenGL contexts are
  switch accordingly. This gives us an opportunity to use glFlush
  instead of glFinish inside eglSwapBuffers, thus, host OpenGL
  throughput is increased
* We now have a single OpenGL driver - yagl_gles_driver instead of two.
  Having several separate OpenGL drivers only complicates things

Change-Id: I053958e700350a4b0dd103990d59df9ff352eff5

11 years agoYaGL: Transport improved 80/11080/1
Stanislav Vorobiov [Wed, 18 Sep 2013 14:20:18 +0000 (18:20 +0400)]
YaGL: Transport improved

The improvements are:

* All transport related things are now inside yagl_transport, the code
  is now concentrated in a single place instead of being scattered
  all over
* No more direct memory access and page walks from API implementation
  code, this is now done inside yagl_transport, thus, API
  implementation is transport agnostic now, function prototypes
  exactly match those of target
* Target arrays can now be accessed via pointer, again, all details
  are handled by yagl_transport. For output arrays API implementation
  also receives number of elements in an array, for input
  arrays it receives maximum number of elements and is able
  to specify how much elements are actually written in order not to
  waste bandwith by transferring excess data

Change-Id: If2689c9f8452ca2d15fe54b123fa2ac9e01a61be

11 years agoskin: added swt version logging 71/11071/1
GiWoong Kim [Thu, 17 Oct 2013 05:57:45 +0000 (14:57 +0900)]
skin: added swt version logging

Change-Id: I348306d4257984ca54a35cb798dfe9a0ad1f4521
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoskin: load nine-patch image throught imageRegistry 57/11057/1
GiWoong Kim [Wed, 16 Oct 2013 09:11:16 +0000 (18:11 +0900)]
skin: load nine-patch image throught imageRegistry

Change-Id: Ieaf2046efa8cd52c163a2c2d18cb7dd7d4c084fb
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agomenu: modified deprecated function 56/11056/1
GiWoong Kim [Wed, 16 Oct 2013 05:42:53 +0000 (14:42 +0900)]
menu: modified deprecated function

replace usage of GDK_DISPLAY with gdk_x11_display_get_xdisplay

Change-Id: If4d6936447704540c4e4700186b77e0e1e032330
Signed-off-by: GiWoong Kim <giwoong.kim@samsung.com>
11 years agoecs:keep alive checking & device(network & keyboard) msg handling added 14/11014/1
Jinhyung Choi [Thu, 10 Oct 2013 03:55:26 +0000 (12:55 +0900)]
ecs:keep alive checking & device(network & keyboard) msg handling added

Signed-off-by: Jinhyung Choi <jinhyung2.choi@samsung.com>