[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH COLO-Frame v10 33/38] netfilter: Introduce an AP
From: |
Jason Wang |
Subject: |
Re: [Qemu-devel] [PATCH COLO-Frame v10 33/38] netfilter: Introduce an API to delete the timer of all buffer-filters |
Date: |
Wed, 4 Nov 2015 10:51:18 +0800 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 |
On 11/03/2015 09:07 PM, zhanghailiang wrote:
> Hi,
>
> On 2015/11/3 20:41, Yang Hongyang wrote:
>> Can you explain why this is needed? Seems that this api hasn't
>> been used in this series.
>>
>
> We will call it in colo_init_filter_buffers() which is introduced in
> patch 37,
> We should remove the timers of filter-buffers which are configured by
> users.
> Or there will be two places to release packets when we enable colo ft,
> one in timer callback,
> the other one in COLO when we do checkpoint.
>
>
> Thanks,
> zhanghailiang
Hi:
Then you'd better explain this in commit log.
Thanks
>
>> On 2015年11月03日 19:56, zhanghailiang wrote:
>>> Signed-off-by: zhanghailiang <address@hidden>
>>> Cc: Jason Wang <address@hidden>
>>> ---
>>> v10: new patch
>>> ---
>>> include/net/filter.h | 1 +
>>> net/filter-buffer.c | 17 +++++++++++++++++
>>> 2 files changed, 18 insertions(+)
>>>
>>> diff --git a/include/net/filter.h b/include/net/filter.h
>>> index 5a09607..4499d60 100644
>>> --- a/include/net/filter.h
>>> +++ b/include/net/filter.h
>>> @@ -74,5 +74,6 @@ ssize_t qemu_netfilter_pass_to_next(NetClientState
>>> *sender,
>>> int iovcnt,
>>> void *opaque);
>>> void filter_buffer_release_all(void);
>>> +void filter_buffer_del_all_timers(void);
>>>
>>> #endif /* QEMU_NET_FILTER_H */
>>> diff --git a/net/filter-buffer.c b/net/filter-buffer.c
>>> index b344901..5f0ea70 100644
>>> --- a/net/filter-buffer.c
>>> +++ b/net/filter-buffer.c
>>> @@ -178,6 +178,23 @@ void filter_buffer_release_all(void)
>>> qemu_foreach_netfilter(filter_buffer_release_packets, NULL,
>>> NULL);
>>> }
>>>
>>> +static void filter_buffer_del_timer(NetFilterState *nf, void *opaque,
>>> + Error **errp)
>>> +{
>>> + if (!strcmp(object_get_typename(OBJECT(nf)),
>>> TYPE_FILTER_BUFFER)) {
>>> + FilterBufferState *s = FILTER_BUFFER(nf);
>>> +
>>> + if (s->interval) {
>>> + timer_del(&s->release_timer);
>>> + }
>>> + }
>>> +}
>>> +
>>> +void filter_buffer_del_all_timers(void)
>>> +{
>>> + qemu_foreach_netfilter(filter_buffer_del_timer, NULL, NULL);
>>> +}
>>> +
>>> static void filter_buffer_init(Object *obj)
>>> {
>>> object_property_add(obj, "interval", "int",
>>>
>>
>
>
- Re: [Qemu-devel] [PATCH COLO-Frame v10 35/38] netfilter: Introduce a API to automatically add filter-buffer for each netdev, (continued)
- Re: [Qemu-devel] [PATCH COLO-Frame v10 35/38] netfilter: Introduce a API to automatically add filter-buffer for each netdev, zhanghailiang, 2015/11/03
- Re: [Qemu-devel] [PATCH COLO-Frame v10 35/38] netfilter: Introduce a API to automatically add filter-buffer for each netdev, zhanghailiang, 2015/11/05
- Re: [Qemu-devel] [PATCH COLO-Frame v10 35/38] netfilter: Introduce a API to automatically add filter-buffer for each netdev, Wen Congyang, 2015/11/05
- Re: [Qemu-devel] [PATCH COLO-Frame v10 35/38] netfilter: Introduce a API to automatically add filter-buffer for each netdev, Jason Wang, 2015/11/05
- Re: [Qemu-devel] [PATCH COLO-Frame v10 35/38] netfilter: Introduce a API to automatically add filter-buffer for each netdev, Wen Congyang, 2015/11/05
- Re: [Qemu-devel] [PATCH COLO-Frame v10 35/38] netfilter: Introduce a API to automatically add filter-buffer for each netdev, Jason Wang, 2015/11/05
- Re: [Qemu-devel] [PATCH COLO-Frame v10 35/38] netfilter: Introduce a API to automatically add filter-buffer for each netdev, zhanghailiang, 2015/11/05
[Qemu-devel] [PATCH COLO-Frame v10 33/38] netfilter: Introduce an API to delete the timer of all buffer-filters, zhanghailiang, 2015/11/03
[Qemu-devel] [PATCH COLO-Frame v10 26/38] COLO: Control the checkpoint delay time by migrate-set-parameters command, zhanghailiang, 2015/11/03