On 3/12/21 1:02 PM, leirao wrote:
> From: "Rao, Lei" <[email protected]>
>
> The iov_size has been calculated in filter_send(). we can directly
> return the size.In this way, this is no need to repeat calculations
> in filter_redirector_receive_iov();
>
> Signed-off-by: Lei Rao <[email protected]>
Reviewed-by: Li Zhijian <[email protected]>
> ---
> net/filter-mirror.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/net/filter-mirror.c b/net/filter-mirror.c
> index f8e6500..f20240c 100644
> --- a/net/filter-mirror.c
> +++ b/net/filter-mirror.c
> @@ -88,7 +88,7 @@ static int filter_send(MirrorState *s,
> goto err;
> }
>
> - return 0;
> + return size;
>
> err:
> return ret < 0 ? ret : -EIO;
> @@ -159,7 +159,7 @@ static ssize_t filter_mirror_receive_iov(NetFilterState
> *nf,
> int ret;
>
> ret = filter_send(s, iov, iovcnt);
> - if (ret) {
> + if (ret < 0) {
> error_report("filter mirror send failed(%s)", strerror(-ret));
> }
>
> @@ -182,10 +182,10 @@ static ssize_t
> filter_redirector_receive_iov(NetFilterState *nf,
>
> if (qemu_chr_fe_backend_connected(&s->chr_out)) {
> ret = filter_send(s, iov, iovcnt);
> - if (ret) {
> + if (ret < 0) {
> error_report("filter redirector send failed(%s)",
> strerror(-ret));
> }
> - return iov_size(iov, iovcnt);
> + return ret;
> } else {
> return 0;
> }