qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH reformat] block: move I/O request processing to


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [PATCH reformat] block: move I/O request processing to block/io.c
Date: Tue, 17 Feb 2015 10:21:24 +0000

On Thu, Feb 5, 2015 at 12:22 PM, Kevin Wolf <address@hidden> wrote:
> Am 04.02.2015 um 18:51 hat Eric Blake geschrieben:
>> From: Stefan Hajnoczi <address@hidden>
>>
>> The block.c file has grown to over 6000 lines.  It is time to split this
>> file so there are fewer conflicts and the code is easier to maintain.
>>
>> Extract I/O request processing code:
>>  * Read
>>  * Write
>>  * Flush
>>  * Discard
>>  * ioctl
>>  * Tracked requests and queuing
>>  * Throttling and copy-on-read
>>
>> The patch simply moves code from block.c into block/io.c.
>>
>> No code changes are made except adding the following block_int.h
>> functions so they can be called across block.c and block/io.c:
>> bdrv_drain_one(), bdrv_set_dirty(), bdrv_reset_dirty().
>>
>> I/O request processing needs to set up BlockDriver coroutine and AIO
>> emulation function pointers, so add bdrv_setup_io_funcs(bdrv) interface
>> that block.c calls.
>>
>> Signed-off-by: Stefan Hajnoczi <address@hidden>
>> ---
>>
>> This patch produces identical results to Stefan's email, but is
>> MUCH more readable (hint: git config diff.algorithm patience)
>
> Any thoughts on moving (some of) the following functions in addition?
>
> * bdrv_drain_all()
> * bdrv_make_zero()
> * bdrv_flush_all()
> * bdrv_is_allocated/get_block_status family of functions
> * Anything with respect to BlockLimits
> * load/save_vmstate()
> * qemu_blockalign() and friends

I'll send a v2 with these functions added.

Stefan



reply via email to

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