Re: [PATCH 00/26] IPVS: Add first IPv6 support to IPVS.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jun 18, 2008 at 4:30 PM, Patrick McHardy <kaber@xxxxxxxxx> wrote:
> Julius Volz wrote:
>>
>> On Wed, Jun 18, 2008 at 4:19 PM, Patrick McHardy <kaber@xxxxxxxxx> wrote:
>>>>
>>>> 2) for the service flags, only one bit is set from userspace
>>>> (persistent/nonpersistent service). So this might be not too bad to
>>>> have as a single Netlink flag attribute.
>>>
>>> And this bit can't be unset (or if it currently can't be,
>>> it also wouldn't make sense to be able to unset it)?
>>
>> It can get unset when editing a persistent service to be
>> non-persistent, so you would still have to include it in a change
>> request that doesn't want to unset it. Since it's only one flag
>> though, it didn't seem too bad to me.
>
> The problem is that its racy. You have to query the current
> state before deciding whether to send it or not. And another
> process might change it in between. An additional downside
> is the overhead for the query itself.

Right, forgot about this issue. Although ipvsadm does no getting and
setting based on the prior value (it only takes the value of the flag
from the command line), there might be other userspace tools who'd
want to use the interface differently.

>> An alternative (also, in case of more flags in the future) would be to
>> put flags into a nested attribute and if this is not supplied from
>> userspace during an edit operation, the flags will be left untouched.
>
> Then you can't unset them. I'd simply use the flags/mask
> scheme.

Ok!

Julius

-- 
Google Switzerland GmbH
--
To unsubscribe from this list: send the line "unsubscribe lvs-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystem Devel]     [Linux NFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]     [X.Org]

  Powered by Linux