On Wed, Jan 18, 2017 at 10:56:17PM +0100, SF Markus Elfring wrote:
> diff --git a/arch/um/drivers/port_kern.c b/arch/um/drivers/port_kern.c
> index 40ca5cc275e9..b2bbda21c5f3 100644
> --- a/arch/um/drivers/port_kern.c
> +++ b/arch/um/drivers/port_kern.c
> @@ -230,10 +230,10 @@ int port_wait(void *data)
>  
>       atomic_inc(&port->wait_count);
>       while (1) {
> -             fd = -ERESTARTSYS;
> -             if (wait_for_completion_interruptible(&port->done))
> +             if (wait_for_completion_interruptible(&port->done)) {
> +                     fd = -ERESTARTSYS;
>                       goto out;
> -
> +             }
>               spin_lock(&port->lock);
>  
>               conn = list_entry(port->connections.next, struct connection,
> -- 
> 2.11.0
>

The current code is pretty standard kernel coding style.  The inline
    fd = -ERESTARTSYS;
is likely free, or close to it, and I believe that having anything
besides a goto inside the if could make it significantly more
expensive.

                                Jeff

-- 
Jeff Dike
AddToIt
978-254-0789 (o)
978-394-8986 (c)

Reply via email to