On Thu, 12.12.13 23:46, Shawn Landden (sh...@churchofgit.com) wrote:

> -Socket.ReusePort,                config_parse_bool,                  0,      
>                        offsetof(Socket, reuse_port)
> +Socket.ReusePort,                config_parse_tristate,             -1,      
>                        offsetof(Socket, reuse_port)
                                                                      ^^^^^

Why -1 there? That should be there... The parse call doesn't make use of
that, so it should be 0, really.


> +        if (s->reuse_port < 0) {
> +                if (s->distribute > 0)
> +                        s->reuse_port = true;
> +                else
> +                        s->reuse_port = false;
> +        }
> +


Nitpicking: I'd just write it like this:

if (s->reuse_port < 0) 
        s->reuse_port = s->distribute > 0;


> -                if (s->n_connections >= s->max_connections) {
> +                if (s->n_connections >= s->max_connections && 
> !(s->distribute)) {

Still too many ()....

>  
> -        if (se->state == SERVICE_RUNNING)
> -                socket_set_state(s, SOCKET_RUNNING);
> +        if (se->state == SERVICE_RUNNING) {
> +                if (s->n_connections < s->distribute)
> +                        ;
> +                else
> +                        socket_set_state(s, SOCKET_RUNNING);
> +        }

Hmm, too simple, no? We wanted that logic, that we enter
SOCKET_RUNNING as long as at least one service is still starting up or
when we reached the limit. I only see the check for the latter here...

Still missing the bit where the socket is duplicated for propery
SO_REUSEPORT usgae...


Lennart

-- 
Lennart Poettering, Red Hat
_______________________________________________
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel

Reply via email to