diff --git a/libc/Android.mk b/libc/Android.mk
index 13fc297..2270dc6 100644
--- a/libc/Android.mk
+++ b/libc/Android.mk
@@ -58,6 +58,7 @@
     bionic/sigsetmask.c \
     bionic/system_properties_compat.c \
     stdio/findfp.c \
+    stdio/fread.c \
     stdio/snprintf.c\
     stdio/sprintf.c \
     stdio/stdio_ext.cpp \
@@ -406,7 +407,6 @@
     upstream-openbsd/lib/libc/stdio/fputs.c \
     upstream-openbsd/lib/libc/stdio/fputwc.c \
     upstream-openbsd/lib/libc/stdio/fputws.c \
-    upstream-openbsd/lib/libc/stdio/fread.c \
     upstream-openbsd/lib/libc/stdio/freopen.c \
     upstream-openbsd/lib/libc/stdio/fscanf.c \
     upstream-openbsd/lib/libc/stdio/fseek.c \
diff --git a/libc/upstream-openbsd/lib/libc/stdio/fread.c b/libc/stdio/fread.c
similarity index 84%
rename from libc/upstream-openbsd/lib/libc/stdio/fread.c
rename to libc/stdio/fread.c
index 8a592f6..e052128 100644
--- a/libc/upstream-openbsd/lib/libc/stdio/fread.c
+++ b/libc/stdio/fread.c
@@ -68,7 +68,23 @@
 		fp->_r = 0;
 	total = resid;
 	p = buf;
-	while (resid > (r = fp->_r)) {
+
+	// BEGIN android-added
+	// Avoid pathological behavior on unbuffered files. OpenBSD
+	// will loop reading one byte then memcpying one byte!
+	if ((fp->_flags & __SNBF) != 0) {
+		// We know if we're unbuffered that our buffer is empty, so
+		// we can just read directly.
+		while (resid > 0 && (r = (*fp->_read)(fp->_cookie, p, resid)) > 0) {
+			p += r;
+			resid -= r;
+		}
+		FUNLOCKFILE(fp);
+		return ((total - resid) / size);
+	}
+	// END android-added
+
+	while (resid > (size_t)(r = fp->_r)) {
 		(void)memcpy((void *)p, (void *)fp->_p, (size_t)r);
 		fp->_p += r;
 		/* fp->_r = 0 ... done in __srefill */
