diff --git a/arch/um/drivers/vector_kern.c b/arch/um/drivers/vector_kern.c index d1d53015d5724a9fece2e4ec85f2e838a92765d6..bb83a2d22ac22a25b0c1718d5d20aa32734a40f8 100644 --- a/arch/um/drivers/vector_kern.c +++ b/arch/um/drivers/vector_kern.c @@ -1156,8 +1156,10 @@ static int vector_net_open(struct net_device *dev) struct vector_device *vdevice; spin_lock_irqsave(&vp->lock, flags); - if (vp->opened) + if (vp->opened) { + spin_unlock_irqrestore(&vp->lock, flags); return -ENXIO; + } vp->opened = true; spin_unlock_irqrestore(&vp->lock, flags);