diff --git a/kernel/printk.c b/kernel/printk.c
index 1c8ca176458f7ec3f4587ad8fc93f3b2c2804252..376914e2869d8a132456dc9216a77f11586dc9bd 100644
--- a/kernel/printk.c
+++ b/kernel/printk.c
@@ -601,7 +601,8 @@ static unsigned int devkmsg_poll(struct file *file, poll_table *wait)
 		/* return error when data has vanished underneath us */
 		if (user->seq < log_first_seq)
 			ret = POLLIN|POLLRDNORM|POLLERR|POLLPRI;
-		ret = POLLIN|POLLRDNORM;
+		else
+			ret = POLLIN|POLLRDNORM;
 	}
 	raw_spin_unlock_irq(&logbuf_lock);