| /qemu/io/ |
| A D | task.c | 47 struct QIOTaskThreadData *thread; member 76 if (task->thread) { in qio_task_free() 77 if (task->thread->destroy) { in qio_task_free() 78 task->thread->destroy(task->thread->opaque); in qio_task_free() 81 if (task->thread->context) { in qio_task_free() 85 g_free(task->thread); in qio_task_free() 124 task->thread->worker(task, task->thread->opaque); in qio_task_thread_worker() 157 QemuThread thread; in qio_task_run_in_thread() local 168 task->thread = data; in qio_task_run_in_thread() 171 qemu_thread_create(&thread, in qio_task_run_in_thread() [all …]
|
| /qemu/migration/ |
| A D | threadinfo.c | 29 thread->name = name; in migration_threads_add() 30 thread->thread_id = thread_id; in migration_threads_add() 36 return thread; in migration_threads_add() 39 void migration_threads_remove(MigrationThread *thread) in migration_threads_remove() argument 42 if (thread) { in migration_threads_remove() 43 QLIST_REMOVE(thread, node); in migration_threads_remove() 44 g_free(thread); in migration_threads_remove() 52 MigrationThread *thread = NULL; in qmp_query_migrationthreads() local 55 QLIST_FOREACH(thread, &migration_threads, node) { in qmp_query_migrationthreads() 57 info->name = g_strdup(thread->name); in qmp_query_migrationthreads() [all …]
|
| /qemu/target/hexagon/imported/mmvec/ |
| A D | macros.def | 171 (mmvec_current_veclogsize(thread)), 338 …size1u_t B = sim_mem_read1(thread->system_ptr, thread->threadId, thread->mem_access[slot].paddr+O… 569 thread->last_pkt->double_access = 0; 574 thread->last_pkt->double_access = 1; 643 thread->last_pkt->double_access = 0; 646 thread->last_pkt->double_access = 1; 674 thread->last_pkt->double_access = 0; 677 thread->last_pkt->double_access = 1; 705 thread->last_pkt->double_access = 0; 708 thread->last_pkt->double_access = 1; [all …]
|
| /qemu/tests/tcg/multiarch/gdbstub/ |
| A D | interrupt.py | 14 def check_interrupt(thread): argument 21 print("thread ", thread.num) 22 gdb.execute("thr %d" % thread.num) 42 return (thread.num == gdb.selected_thread().num) 55 for thread in gdb.selected_inferior().threads(): 56 report(check_interrupt(thread), 57 "thread %d resumes correctly on interrupt" % thread.num)
|
| /qemu/target/hexagon/imported/ |
| A D | macros.def | 32 …{if (thread->last_pkt) thread->last_pkt->slot_cancelled |= (1<<insn->slot); return;} , /* behavior… 124 predlog_read(thread,PNUM), 130 predlog_read(thread,0), 136 predlog_read(thread,1), 457 if (!thread->branch_taken) { 459 thread->next_pkt_guess=thread->last_pkt->taken_ptr; 462 thread->branched = 1; thread->branch_taken = 1; thread->next_PC = A; \ 463 thread->branch_offset = insn->encoding_offset; thread->branch_opcode = insn->opcode; 1252 arch_fpop_start(thread), 1258 arch_fpop_end(thread), [all …]
|
| /qemu/docs/ |
| A D | multi-thread-compression.txt | 1 Use multiple thread (de)compression in live migration 36 keeping the compression thread count 4 times the decompression 37 thread count can avoid resource waste. 46 When to use the multiple thread compression in live migration 74 | original | compress thread: 8 75 | way | decompress thread: 2 94 | original | compress thread: 8 95 | way | decompress thread: 2 112 to support the multiple thread compression migration: 119 3. Set the compression thread count on source: [all …]
|
| /qemu/util/ |
| A D | qemu-thread-win32.c | 431 void *qemu_thread_join(QemuThread *thread) in qemu_thread_join() argument 437 data = thread->data; in qemu_thread_join() 449 handle = qemu_thread_get_handle(thread); in qemu_thread_join() 507 thread->data = data; in qemu_thread_create() 522 void qemu_thread_get_self(QemuThread *thread) in qemu_thread_get_self() argument 524 thread->data = qemu_thread_data; in qemu_thread_get_self() 525 thread->tid = GetCurrentThreadId(); in qemu_thread_get_self() 528 HANDLE qemu_thread_get_handle(QemuThread *thread) in qemu_thread_get_handle() argument 533 data = thread->data; in qemu_thread_get_handle() 549 bool qemu_thread_is_self(QemuThread *thread) in qemu_thread_is_self() argument [all …]
|
| A D | qemu-thread-posix.c | 549 void qemu_thread_create(QemuThread *thread, const char *name, in qemu_thread_create() argument 581 err = pthread_create(&thread->thread, &attr, in qemu_thread_create() 592 int qemu_thread_set_affinity(QemuThread *thread, unsigned long *host_cpus, in qemu_thread_set_affinity() argument 611 err = pthread_setaffinity_np(thread->thread, setsize, cpuset); in qemu_thread_set_affinity() 634 err = pthread_getaffinity_np(thread->thread, setsize, cpuset); in qemu_thread_get_affinity() 661 void qemu_thread_get_self(QemuThread *thread) in qemu_thread_get_self() argument 663 thread->thread = pthread_self(); in qemu_thread_get_self() 666 bool qemu_thread_is_self(QemuThread *thread) in qemu_thread_is_self() argument 668 return pthread_equal(pthread_self(), thread->thread); in qemu_thread_is_self() 676 void *qemu_thread_join(QemuThread *thread) in qemu_thread_join() argument [all …]
|
| A D | thread-context.c | 35 QemuThread *thread; member 70 qemu_thread_create(cmd_new->thread, cmd_new->name, in thread_context_run() 121 ret = qemu_thread_set_affinity(&tc->thread, bitmap, nbits); in thread_context_set_cpu_affinity() 150 ret = qemu_thread_get_affinity(&tc->thread, &bitmap, &nbits); in thread_context_get_cpu_affinity() 221 ret = qemu_thread_set_affinity(&tc->thread, bitmap, nbits); in thread_context_set_node_affinity() 256 qemu_thread_create(&tc->thread, thread_name, thread_context_run, tc, in thread_context_instance_complete() 266 ret = qemu_thread_set_affinity(&tc->thread, tc->init_cpu_bitmap, in thread_context_instance_complete() 308 qemu_thread_join(&tc->thread); in thread_context_instance_finalize() 334 void thread_context_create_thread(ThreadContext *tc, QemuThread *thread, in type_init() 340 .thread = thread, in type_init()
|
| /qemu/crypto/ |
| A D | pbkdf.c | 55 mach_port_t thread; in qcrypto_pbkdf2_get_thread_cpu() 60 thread = mach_thread_self(); in qcrypto_pbkdf2_get_thread_cpu() 62 kr = thread_info(thread, THREAD_BASIC_INFO, (thread_info_t)&info, &count); in qcrypto_pbkdf2_get_thread_cpu() 63 mach_port_deallocate(mach_task_self(), thread); in qcrypto_pbkdf2_get_thread_cpu() 165 QemuThread thread; in qcrypto_pbkdf2_count_iters() local 167 qemu_thread_create(&thread, "pbkdf2", threaded_qcrypto_pbkdf2_count_iters, in qcrypto_pbkdf2_count_iters() 169 qemu_thread_join(&thread); in qcrypto_pbkdf2_count_iters()
|
| /qemu/tests/qtest/ |
| A D | ivshmem-test.c | 245 GThread *thread; member 309 ServerThread thread; in test_ivshmem_server() local 323 thread.server = &server; in test_ivshmem_server() 324 g_unix_open_pipe(thread.pipe, FD_CLOEXEC, &err); in test_ivshmem_server() 326 thread.thread = g_thread_new("ivshmem-server", server_thread, &thread); in test_ivshmem_server() 327 g_assert(thread.thread != NULL); in test_ivshmem_server() 370 if (qemu_write_full(thread.pipe[1], "q", 1) != 1) { in test_ivshmem_server() 374 g_thread_join(thread.thread); in test_ivshmem_server() 377 close(thread.pipe[1]); in test_ivshmem_server() 378 close(thread.pipe[0]); in test_ivshmem_server()
|
| A D | numa-test.c | 141 int64_t socket, core, thread, node; in pc_numa_cpu() local 154 thread = qdict_get_int(props, "thread-id"); in pc_numa_cpu() 160 } else if (socket == 1 && core == 1 && thread == 0) { in pc_numa_cpu() 162 } else if (socket == 1 && core == 1 && thread == 1) { in pc_numa_cpu() 238 int64_t socket, cluster, core, thread, node; in aarch64_numa_cpu() local 253 thread = qdict_get_int(props, "thread-id"); in aarch64_numa_cpu() 255 if (socket == 0 && cluster == 0 && core == 0 && thread == 0) { in aarch64_numa_cpu() 288 int64_t socket, core, thread, node; in loongarch64_numa_cpu() local 301 thread = qdict_get_int(props, "thread-id"); in loongarch64_numa_cpu() 303 if (socket == 0 && core == 0 && thread == 0) { in loongarch64_numa_cpu() [all …]
|
| A D | tpm-tis-device-test.c | 35 GThread *thread; in main() local 51 thread = g_thread_new(NULL, tpm_emu_ctrl_thread, &test); in main() 81 g_thread_join(thread); in main()
|
| A D | tpm-tis-test.c | 31 GThread *thread; in main() local 45 thread = g_thread_new(NULL, tpm_emu_ctrl_thread, &test); in main() 74 g_thread_join(thread); in main()
|
| /qemu/scripts/qemugdb/ |
| A D | tcg.py | 25 for thread in gdb.inferiors()[0].threads(): 26 thread.switch() 41 gdb.write("%d/%d, %s, %s, %s\n" % (thread.num, thread.ptid[1],
|
| /qemu/docs/system/ |
| A D | cpu-hotplug.rst | 39 "thread-id": 0 48 "thread-id": 0 65 (QEMU) device_add id=cpu-2 driver=IvyBridge-IBRS-x86_64-cpu socket-id=0 core-id=1 thread-id=0 73 "thread-id": 0 96 "thread-id": 0 100 "thread-id": 28957 107 "thread-id": 0 111 "thread-id": 29095
|
| /qemu/docs/devel/migration/ |
| A D | dirty-limit.rst | 13 main --------------> throttle thread ------------> PREPARE(1) <-------- 14 thread \ | | 25 -> virtual CPU thread -------> ACCEPT PENALTY(4) 29 the QEMU main thread starts the throttle thread. The throttle thread, once 59 After completing the three above stages, the throttle thread loops back 62 On the other hand, each virtual CPU thread reads the sleep duration and
|
| A D | postcopy.rst | 85 the destination state to Listen, and starts a new thread 86 (the 'listen thread') which takes over the job of receiving 87 pages off the migration stream, while the main thread carries 88 on processing the blob. With this thread able to process page 97 thread now finishes processing the migration package and 104 The listen thread can now quit, and perform the cleanup of migration 147 Initially the destination looks the same as precopy, with a single thread 157 thread | | 178 the returned page (c) is loaded by the listen thread allowing the main 285 fault-thread and page requests are made on behalf of the client by QEMU. [all …]
|
| /qemu/docs/devel/ |
| A D | atomics.rst | 222 and one thread that is always a reader: 225 | thread 1 | thread 2 | 236 Sometimes, a thread is accessing many variables that are otherwise 238 thread, exactly one other thread will read or write each of these 310 acquire operation in the second thread. 327 with the exiting of the thread. 337 | thread 1 | thread 2 | 362 | thread 1 | thread 2 | 380 | thread 1 | thread 2 | 393 Note that the "writing" thread is accessing the variables in the [all …]
|
| /qemu/tests/tcg/multiarch/ |
| A D | sigreturn-sigmask.c | 32 pthread_t thread; in main() local 45 assert(pthread_create(&thread, NULL, thread_func, NULL) == 0); in main() 48 assert(pthread_join(thread, NULL) == 0); in main()
|
| /qemu/tests/tcg/x86_64/ |
| A D | cross-modifying-code.c | 59 pthread_t thread; in main() local 64 err = pthread_create(&thread, NULL, &thread_func, &command); in main() 73 err = pthread_join(thread, NULL); in main()
|
| /qemu/accel/tcg/ |
| A D | tcg-accel-ops-rr.c | 192 qemu_thread_get_self(cpu->thread); in rr_cpu_thread_fn() 319 single_tcg_cpu_thread = cpu->thread; in rr_start_vcpu_thread() 323 qemu_thread_create(cpu->thread, thread_name, in rr_start_vcpu_thread() 328 g_free(cpu->thread); in rr_start_vcpu_thread() 331 cpu->thread = single_tcg_cpu_thread; in rr_start_vcpu_thread()
|
| /qemu/tests/unit/ |
| A D | test-yank.c | 71 QemuThread thread; in char_change_test() local 131 qemu_thread_create(&thread, "accept", accept_thread, in char_change_test() 144 qemu_thread_join(&thread); in char_change_test() 162 qemu_thread_create(&thread, "accept", accept_thread, in char_change_test() 168 qemu_thread_join(&thread); in char_change_test()
|
| /qemu/include/qemu/ |
| A D | thread.h | 189 void qemu_thread_create(QemuThread *thread, const char *name, 192 int qemu_thread_set_affinity(QemuThread *thread, unsigned long *host_cpus, 194 int qemu_thread_get_affinity(QemuThread *thread, unsigned long **host_cpus, 196 void *qemu_thread_join(QemuThread *thread); 197 void qemu_thread_get_self(QemuThread *thread); 198 bool qemu_thread_is_self(QemuThread *thread);
|
| /qemu/tests/tcg/s390x/ |
| A D | cdsg.c | 79 pthread_t thread; in main() local 82 ret = pthread_create(&thread, NULL, cdsg_loop, NULL); in main() 86 ret = pthread_join(thread, NULL); in main()
|