On 08/25/2017 01:49 PM, Eric Blake wrote: > On 08/04/2017 10:14 AM, Vladimir Sementsov-Ogievskiy wrote: >> Move nbd_co_receive_reply and nbd_coroutine_end calls into >> nbd_co_send_request and rename the latter to just nbd_co_request. >> >> This removes code duplications in nbd_client_co_{pwrite,pread,...} >> functions. Also this is needed for further refactoring. >>
>> -static int nbd_co_send_request(BlockDriverState *bs, >> - NBDRequest *request, >> - QEMUIOVector *qiov) >> +static void nbd_co_receive_reply(NBDClientSession *s, >> + NBDRequest *request, >> + NBDReply *reply, >> + QEMUIOVector *qiov); >> +static void nbd_coroutine_end(BlockDriverState *bs, >> + NBDRequest *request); > > Is it possible to organize the functions in topological order so that we > don't need forward declarations of static functions? (If there is > mutual recursion, you need the forward declaration; but other than that, > I like reading the building blocks first rather than skipping around) Answering myself: patch 9 inlines nbd_co_receive_reply into its lone caller, eliminating the need for a forward reference, and it is less code churn to have a temporary forward declaration than it is to move the function body up and then back down. (Maybe the commit message could hint that nbd_co_receive_reply will later be inlined) > > Otherwise, > Reviewed-by: Eric Blake <ebl...@redhat.com> > -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature