At this point, only "vhost_user_write_sync" calls "enforce_reply"; embed the latter into the former.
This is purely refactoring -- no observable change. Cc: "Michael S. Tsirkin" <m...@redhat.com> (supporter:vhost) Cc: Eugenio Perez Martin <epere...@redhat.com> Cc: German Maglione <gmagli...@redhat.com> Cc: Liu Jiang <ge...@linux.alibaba.com> Cc: Sergio Lopez Pascual <s...@redhat.com> Cc: Stefano Garzarella <sgarz...@redhat.com> Signed-off-by: Laszlo Ersek <ler...@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <phi...@linaro.org> Reviewed-by: Stefano Garzarella <sgarz...@redhat.com> Tested-by: Albert Esteve <aest...@redhat.com> Reviewed-by: Eugenio Pérez <epere...@redhat.com> --- Notes: v3: - pick up R-b from Eugenio, T-b from Albert v2: - pick up R-b's from Phil and Stefano - rename "vhost_user_write_msg" to "vhost_user_write_sync" (in code context and commit message) [Stefano] hw/virtio/vhost-user.c | 32 ++++++++------------ 1 file changed, 13 insertions(+), 19 deletions(-) diff --git a/hw/virtio/vhost-user.c b/hw/virtio/vhost-user.c index 1476b36f0a6e..4129ba72e408 100644 --- a/hw/virtio/vhost-user.c +++ b/hw/virtio/vhost-user.c @@ -1302,24 +1302,6 @@ static int vhost_user_get_features(struct vhost_dev *dev, uint64_t *features) return 0; } -static int enforce_reply(struct vhost_dev *dev, - const VhostUserMsg *msg) -{ - uint64_t dummy; - - if (msg->hdr.flags & VHOST_USER_NEED_REPLY_MASK) { - return process_message_reply(dev, msg); - } - - /* - * We need to wait for a reply but the backend does not - * support replies for the command we just sent. - * Send VHOST_USER_GET_FEATURES which makes all backends - * send a reply. - */ - return vhost_user_get_features(dev, &dummy); -} - /* Note: "msg->hdr.flags" may be modified. */ static int vhost_user_write_sync(struct vhost_dev *dev, VhostUserMsg *msg, bool wait_for_reply) @@ -1340,7 +1322,19 @@ static int vhost_user_write_sync(struct vhost_dev *dev, VhostUserMsg *msg, } if (wait_for_reply) { - return enforce_reply(dev, msg); + uint64_t dummy; + + if (msg->hdr.flags & VHOST_USER_NEED_REPLY_MASK) { + return process_message_reply(dev, msg); + } + + /* + * We need to wait for a reply but the backend does not + * support replies for the command we just sent. + * Send VHOST_USER_GET_FEATURES which makes all backends + * send a reply. + */ + return vhost_user_get_features(dev, &dummy); } return 0;