From owner-svn-src-projects@FreeBSD.ORG  Sat May 30 08:01:17 2015
Return-Path: <owner-svn-src-projects@FreeBSD.ORG>
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115])
 (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits))
 (No client certificate requested)
 by hub.freebsd.org (Postfix) with ESMTPS id 1246A4F5;
 Sat, 30 May 2015 08:01:17 +0000 (UTC)
 (envelope-from glebius@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org
 [IPv6:2001:1900:2254:2068::e6a:0])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (Client did not present a certificate)
 by mx1.freebsd.org (Postfix) with ESMTPS id 00C6A1A9E;
 Sat, 30 May 2015 08:01:17 +0000 (UTC)
 (envelope-from glebius@FreeBSD.org)
Received: from svn.freebsd.org ([127.0.1.70])
 by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t4U81Gv6025392;
 Sat, 30 May 2015 08:01:16 GMT (envelope-from glebius@FreeBSD.org)
Received: (from glebius@localhost)
 by svn.freebsd.org (8.14.9/8.14.9/Submit) id t4U81G10025391;
 Sat, 30 May 2015 08:01:16 GMT (envelope-from glebius@FreeBSD.org)
Message-Id: <201505300801.t4U81G10025391@svn.freebsd.org>
X-Authentication-Warning: svn.freebsd.org: glebius set sender to
 glebius@FreeBSD.org using -f
From: Gleb Smirnoff <glebius@FreeBSD.org>
Date: Sat, 30 May 2015 08:01:16 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject: svn commit: r283764 - projects/ifnet/sys/net
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.20
Precedence: list
List-Id: "SVN commit messages for the src &quot; projects&quot;
 tree" <svn-src-projects.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/options/svn-src-projects>, 
 <mailto:svn-src-projects-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-projects/>
List-Post: <mailto:svn-src-projects@freebsd.org>
List-Help: <mailto:svn-src-projects-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-projects>, 
 <mailto:svn-src-projects-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 30 May 2015 08:01:17 -0000

Author: glebius
Date: Sat May 30 08:01:16 2015
New Revision: 283764
URL: https://svnweb.freebsd.org/changeset/base/283764

Log:
  Fix an error I made in r283655. We need to sleep while we DON'T have an mbuf.
  
  Submitted by:	Tiwei Bie <btw mail.ustc.edu.cn>

Modified:
  projects/ifnet/sys/net/if_tap.c

Modified: projects/ifnet/sys/net/if_tap.c
==============================================================================
--- projects/ifnet/sys/net/if_tap.c	Sat May 30 04:49:19 2015	(r283763)
+++ projects/ifnet/sys/net/if_tap.c	Sat May 30 08:01:16 2015	(r283764)
@@ -888,7 +888,7 @@ tapread(struct cdev *dev, struct uio *ui
 	tp->tap_flags &= ~TAP_RWAIT;
 
 	/* sleep until we get a packet */
-	while ((m = mbufq_dequeue(&tp->tap_queue)) != NULL) {
+	while ((m = mbufq_dequeue(&tp->tap_queue)) == NULL) {
 		if (flag & O_NONBLOCK) {
 			mtx_unlock(&tp->tap_mtx);
 			return (EWOULDBLOCK);