+* 1.7.18
+- modified prevent defects in hwkey, keyboard
+== SungMin Ha <sungmin82.ha@samsung.com> 2014-01-21
* 1.7.17
- removed platform information of install dependency in emulator-qemu-x86
== SungMin Ha <sungmin82.ha@samsung.com> 2014-01-20
-Version: 1.7.17
+Version: 1.7.18
Maintainer: Yeong-Kyoon Lee<yeongkyoon.lee@samsung.com>
Source: emulator
DeviceState *qdev = DEVICE(vdev);
vhk = VIRTIO_HWKEY(vdev);
- virtio_init(vdev, TYPE_VIRTIO_HWKEY, VIRTIO_ID_HWKEY, 0);
-
if (vdev == NULL) {
ERR("failed to initialize the hwkey device\n");
return -1;
}
+ virtio_init(vdev, TYPE_VIRTIO_HWKEY, VIRTIO_ID_HWKEY, 0);
+
vhk->vq = virtio_add_queue(vdev, MAX_BUF_COUNT, maru_virtio_hwkey_handle);
vhk->qdev = qdev;
/* reset the counters */
+ pthread_mutex_lock(&event_mutex);
event_queue_cnt = event_ringbuf_cnt = 0;
+ pthread_mutex_unlock(&event_mutex);
+
elem_queue_cnt = elem_ringbuf_cnt = 0;
/* bottom-half */
static void virtio_keyboard_event(void *opaque, int keycode)
{
- EmulKbdEvent kbdevt;
+ EmulKbdEvent kbdevt = {0};
int *index = NULL;
VirtIOKeyboard *vkbd = (VirtIOKeyboard *)opaque;
vkbd = VIRTIO_KEYBOARD(vdev);
INFO("initialize virtio-keyboard device\n");
- virtio_init(vdev, TYPE_VIRTIO_KEYBOARD, VIRTIO_ID_KEYBOARD, 0);
if (vdev == NULL) {
- ERR("failed to initialize device\n");
+ ERR("failed to initialize virtio-keyboard device\n");
return -1;
}
+ virtio_init(vdev, TYPE_VIRTIO_KEYBOARD, VIRTIO_ID_KEYBOARD, 0);
+
memset(&vkbd->kbdqueue, 0x00, sizeof(vkbd->kbdqueue));
vkbd->extension_key = 0;
qemu_mutex_init(&vkbd->event_mutex);