Re: [Qemu-devel] [PATCH] net/filter: rename qemu_netfilter_pass_to_next() to qemu_netfilter_iterate()

2016-03-14 Thread Jason Wang


On 03/15/2016 11:33 AM, Li Zhijian wrote:
>
>
> On 03/15/2016 11:08 AM, Jason Wang wrote:
>>
>>
>> On 03/09/2016 04:02 PM, Li Zhijian wrote:
>>>
>>>
>>> On 03/08/2016 04:04 PM, Yang Hongyang wrote:
 Hi Chen,

 What's the motivation that you want to change this name? The
 function actually is not
 intent to iterate every filter.
>>>
>>> Right. but this function isn't always pass packet to *a* next filter.
>>> Actually, it iterates filters until the packet is stolen(filter
>>> receiving handler return non-zero).
>>> In other words, packet could be handled by several filters at this
>>> function.
>>>
>>> BTW, it's difficult to determine what name is better.
>>>
>>> Thanks
>>> Li Zhijian
>>
>> Right, so I was considering a better function name (though I'm not a
>> native English speaker).
>>
>> But I agree qemu_netfilter_iterate() is not perfect too, may need more
>> thought.
>>
>>
> let's drop this patch temporarily ?
>
> Thanks
> Li Zhijian
>

Right, let's change it when we have a better name.

Thanks




Re: [Qemu-devel] [PATCH] net/filter: rename qemu_netfilter_pass_to_next() to qemu_netfilter_iterate()

2016-03-14 Thread Li Zhijian



On 03/15/2016 11:08 AM, Jason Wang wrote:



On 03/09/2016 04:02 PM, Li Zhijian wrote:



On 03/08/2016 04:04 PM, Yang Hongyang wrote:

Hi Chen,

What's the motivation that you want to change this name? The
function actually is not
intent to iterate every filter.


Right. but this function isn't always pass packet to *a* next filter.
Actually, it iterates filters until the packet is stolen(filter
receiving handler return non-zero).
In other words, packet could be handled by several filters at this
function.

BTW, it's difficult to determine what name is better.

Thanks
Li Zhijian


Right, so I was considering a better function name (though I'm not a
native English speaker).

But I agree qemu_netfilter_iterate() is not perfect too, may need more
thought.



let's drop this patch temporarily ?

Thanks
Li Zhijian





Re: [Qemu-devel] [PATCH] net/filter: rename qemu_netfilter_pass_to_next() to qemu_netfilter_iterate()

2016-03-14 Thread Jason Wang


On 03/09/2016 04:02 PM, Li Zhijian wrote:
>
>
> On 03/08/2016 04:04 PM, Yang Hongyang wrote:
>> Hi Chen,
>>
>>What's the motivation that you want to change this name? The
>> function actually is not
>> intent to iterate every filter.
>
> Right. but this function isn't always pass packet to *a* next filter.
> Actually, it iterates filters until the packet is stolen(filter
> receiving handler return non-zero).
> In other words, packet could be handled by several filters at this
> function.
>
> BTW, it's difficult to determine what name is better.
>
> Thanks
> Li Zhijian 

Right, so I was considering a better function name (though I'm not a
native English speaker).

But I agree qemu_netfilter_iterate() is not perfect too, may need more
thought.



Re: [Qemu-devel] [PATCH] net/filter: rename qemu_netfilter_pass_to_next() to qemu_netfilter_iterate()

2016-03-09 Thread Li Zhijian



On 03/08/2016 04:04 PM, Yang Hongyang wrote:

Hi Chen,

   What's the motivation that you want to change this name? The function 
actually is not
intent to iterate every filter.


Right. but this function isn't always pass packet to *a* next filter.
Actually, it iterates filters until the packet is stolen(filter receiving 
handler return non-zero).
In other words, packet could be handled by several filters at this function.

BTW, it's difficult to determine what name is better.

Thanks
Li Zhijian



On Mon, Mar 7, 2016 at 6:03 PM, Zhang Chen > wrote:

This API will iterate the filters attached to netdev

Signed-off-by: Zhang Chen >
Signed-off-by: Wen Congyang >
Signed-off-by: Li Zhijian >
---
  include/net/filter.h | 10 +-
  net/filter-buffer.c  |  2 +-
  net/filter.c | 12 ++--
  3 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/include/net/filter.h b/include/net/filter.h
index 5639976..ab00d54 100644
--- a/include/net/filter.h
+++ b/include/net/filter.h
@@ -67,10 +67,10 @@ ssize_t qemu_netfilter_receive(NetFilterState *nf,
 NetPacketSent *sent_cb);

  /* pass the packet to the next filter */
-ssize_t qemu_netfilter_pass_to_next(NetClientState *sender,
-unsigned flags,
-const struct iovec *iov,
-int iovcnt,
-void *opaque);
+ssize_t qemu_netfilter_iterate(NetClientState *sender,
+   unsigned flags,
+   const struct iovec *iov,
+   int iovcnt,
+   void *opaque);

  #endif /* QEMU_NET_FILTER_H */
diff --git a/net/filter-buffer.c b/net/filter-buffer.c
index 12ad2e3..a74f8c8 100644
--- a/net/filter-buffer.c
+++ b/net/filter-buffer.c
@@ -114,7 +114,7 @@ static void filter_buffer_setup(NetFilterState *nf, 
Error **errp)
  return;
  }

-s->incoming_queue = qemu_new_net_queue(qemu_netfilter_pass_to_next, 
nf);
+s->incoming_queue = qemu_new_net_queue(qemu_netfilter_iterate, nf);
  if (s->interval) {
  timer_init_us(>release_timer, QEMU_CLOCK_VIRTUAL,
filter_buffer_release_timer, nf);
diff --git a/net/filter.c b/net/filter.c
index d2a514e..7c504c3 100644
--- a/net/filter.c
+++ b/net/filter.c
@@ -50,11 +50,11 @@ static NetFilterState *netfilter_next(NetFilterState 
*nf,
  return next;
  }

-ssize_t qemu_netfilter_pass_to_next(NetClientState *sender,
-unsigned flags,
-const struct iovec *iov,
-int iovcnt,
-void *opaque)
+ssize_t qemu_netfilter_iterate(NetClientState *sender,
+   unsigned flags,
+   const struct iovec *iov,
+   int iovcnt,
+   void *opaque)
  {
  int ret = 0;
  int direction;
@@ -80,7 +80,7 @@ ssize_t qemu_netfilter_pass_to_next(NetClientState 
*sender,
  next = netfilter_next(nf, direction);
  while (next) {
  /*
- * if qemu_netfilter_pass_to_next been called, means that
+ * if qemu_netfilter_iterate been called, means that
   * the packet has been hold by filter and has already retured size
   * to the sender, so sent_cb shouldn't be called later, just
   * pass NULL to next.
--
1.9.1







--
Thanks,
Yang






Re: [Qemu-devel] [PATCH] net/filter: rename qemu_netfilter_pass_to_next() to qemu_netfilter_iterate()

2016-03-08 Thread Yang Hongyang
Hi Chen,

  What's the motivation that you want to change this name? The function
actually is not
intent to iterate every filter.

On Mon, Mar 7, 2016 at 6:03 PM, Zhang Chen 
wrote:

> This API will iterate the filters attached to netdev
>
> Signed-off-by: Zhang Chen 
> Signed-off-by: Wen Congyang 
> Signed-off-by: Li Zhijian 
> ---
>  include/net/filter.h | 10 +-
>  net/filter-buffer.c  |  2 +-
>  net/filter.c | 12 ++--
>  3 files changed, 12 insertions(+), 12 deletions(-)
>
> diff --git a/include/net/filter.h b/include/net/filter.h
> index 5639976..ab00d54 100644
> --- a/include/net/filter.h
> +++ b/include/net/filter.h
> @@ -67,10 +67,10 @@ ssize_t qemu_netfilter_receive(NetFilterState *nf,
> NetPacketSent *sent_cb);
>
>  /* pass the packet to the next filter */
> -ssize_t qemu_netfilter_pass_to_next(NetClientState *sender,
> -unsigned flags,
> -const struct iovec *iov,
> -int iovcnt,
> -void *opaque);
> +ssize_t qemu_netfilter_iterate(NetClientState *sender,
> +   unsigned flags,
> +   const struct iovec *iov,
> +   int iovcnt,
> +   void *opaque);
>
>  #endif /* QEMU_NET_FILTER_H */
> diff --git a/net/filter-buffer.c b/net/filter-buffer.c
> index 12ad2e3..a74f8c8 100644
> --- a/net/filter-buffer.c
> +++ b/net/filter-buffer.c
> @@ -114,7 +114,7 @@ static void filter_buffer_setup(NetFilterState *nf,
> Error **errp)
>  return;
>  }
>
> -s->incoming_queue = qemu_new_net_queue(qemu_netfilter_pass_to_next,
> nf);
> +s->incoming_queue = qemu_new_net_queue(qemu_netfilter_iterate, nf);
>  if (s->interval) {
>  timer_init_us(>release_timer, QEMU_CLOCK_VIRTUAL,
>filter_buffer_release_timer, nf);
> diff --git a/net/filter.c b/net/filter.c
> index d2a514e..7c504c3 100644
> --- a/net/filter.c
> +++ b/net/filter.c
> @@ -50,11 +50,11 @@ static NetFilterState *netfilter_next(NetFilterState
> *nf,
>  return next;
>  }
>
> -ssize_t qemu_netfilter_pass_to_next(NetClientState *sender,
> -unsigned flags,
> -const struct iovec *iov,
> -int iovcnt,
> -void *opaque)
> +ssize_t qemu_netfilter_iterate(NetClientState *sender,
> +   unsigned flags,
> +   const struct iovec *iov,
> +   int iovcnt,
> +   void *opaque)
>  {
>  int ret = 0;
>  int direction;
> @@ -80,7 +80,7 @@ ssize_t qemu_netfilter_pass_to_next(NetClientState
> *sender,
>  next = netfilter_next(nf, direction);
>  while (next) {
>  /*
> - * if qemu_netfilter_pass_to_next been called, means that
> + * if qemu_netfilter_iterate been called, means that
>   * the packet has been hold by filter and has already retured size
>   * to the sender, so sent_cb shouldn't be called later, just
>   * pass NULL to next.
> --
> 1.9.1
>
>
>
>
>


-- 
Thanks,
Yang


[Qemu-devel] [PATCH] net/filter: rename qemu_netfilter_pass_to_next() to qemu_netfilter_iterate()

2016-03-07 Thread Zhang Chen
This API will iterate the filters attached to netdev

Signed-off-by: Zhang Chen 
Signed-off-by: Wen Congyang 
Signed-off-by: Li Zhijian 
---
 include/net/filter.h | 10 +-
 net/filter-buffer.c  |  2 +-
 net/filter.c | 12 ++--
 3 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/include/net/filter.h b/include/net/filter.h
index 5639976..ab00d54 100644
--- a/include/net/filter.h
+++ b/include/net/filter.h
@@ -67,10 +67,10 @@ ssize_t qemu_netfilter_receive(NetFilterState *nf,
NetPacketSent *sent_cb);
 
 /* pass the packet to the next filter */
-ssize_t qemu_netfilter_pass_to_next(NetClientState *sender,
-unsigned flags,
-const struct iovec *iov,
-int iovcnt,
-void *opaque);
+ssize_t qemu_netfilter_iterate(NetClientState *sender,
+   unsigned flags,
+   const struct iovec *iov,
+   int iovcnt,
+   void *opaque);
 
 #endif /* QEMU_NET_FILTER_H */
diff --git a/net/filter-buffer.c b/net/filter-buffer.c
index 12ad2e3..a74f8c8 100644
--- a/net/filter-buffer.c
+++ b/net/filter-buffer.c
@@ -114,7 +114,7 @@ static void filter_buffer_setup(NetFilterState *nf, Error 
**errp)
 return;
 }
 
-s->incoming_queue = qemu_new_net_queue(qemu_netfilter_pass_to_next, nf);
+s->incoming_queue = qemu_new_net_queue(qemu_netfilter_iterate, nf);
 if (s->interval) {
 timer_init_us(>release_timer, QEMU_CLOCK_VIRTUAL,
   filter_buffer_release_timer, nf);
diff --git a/net/filter.c b/net/filter.c
index d2a514e..7c504c3 100644
--- a/net/filter.c
+++ b/net/filter.c
@@ -50,11 +50,11 @@ static NetFilterState *netfilter_next(NetFilterState *nf,
 return next;
 }
 
-ssize_t qemu_netfilter_pass_to_next(NetClientState *sender,
-unsigned flags,
-const struct iovec *iov,
-int iovcnt,
-void *opaque)
+ssize_t qemu_netfilter_iterate(NetClientState *sender,
+   unsigned flags,
+   const struct iovec *iov,
+   int iovcnt,
+   void *opaque)
 {
 int ret = 0;
 int direction;
@@ -80,7 +80,7 @@ ssize_t qemu_netfilter_pass_to_next(NetClientState *sender,
 next = netfilter_next(nf, direction);
 while (next) {
 /*
- * if qemu_netfilter_pass_to_next been called, means that
+ * if qemu_netfilter_iterate been called, means that
  * the packet has been hold by filter and has already retured size
  * to the sender, so sent_cb shouldn't be called later, just
  * pass NULL to next.
-- 
1.9.1