--- a/ath/if_ath.c
+++ b/ath/if_ath.c
@@ -6474,8 +6474,9 @@ ath_rx_tasklet(TQUEUE_ARG data)
 			/*
 			 * Reject error frames if we have no vaps that
 			 * are operating in monitor mode.
+			 * Reject empty frames as well
 			 */
-			if (sc->sc_nmonvaps == 0)
+			if ((sc->sc_nmonvaps == 0) || (rs->rs_datalen == 0))
 				goto rx_next;
 		}
 rx_accept: