[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-discuss] Understanding Qemu Block

From: Gadre Nayan
Subject: [Qemu-discuss] Understanding Qemu Block
Date: Wed, 27 Jul 2016 15:08:59 +0530


I have recently started working on QEMU and it seems a daunting task
to say the least, hence I wanted some head-start. I have browsed the
source but I still need to bring closer some dots so I can start
working on some experimental changes. I will have to ask further
questions based on my new improved understanding, I think my questions
could be compiled into a single FAQ list :)

I wanted to understand AIOContext in Block, Coroutines in Block. How
are they related to IOThreads and vCPU threads.

Currently My understanding is as follows (kindly validate as well)

1. There is 1 vCPU thread per CPU core that I specify in the command arguments.
    so eg: ./qemu-system-x86_64 -smp 4
    should create 4 vCPU threads ?
    These vCPU threads are going to run the Guest Code, They may also handle the
    exit conditions and dispatch the MMIO request.

    So, who handles the MMIO request and its Completion, is it the IOThreads ?

2. Lets say the Guest Code has decided to write something on a disk file on the
    Host, the guest Should then dispatch the write operation and some
IOThread will
    do the IO. How does the IO thread report back the completion of
this operation.
    And how do the AIOcontext and Coroutines play a role in this operation.

    I know the use of co-routines but I would like to understand
through some code
    snippets how they interact with the block layer.

Looking forward for some help.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]