]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - tools/perf/util/util.c
Merge tag 'v2.6.38' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[mv-sheeva.git] / tools / perf / util / util.c
index 214265674ddda0a59488cc0871a0943b20fc6bd4..5b3ea49aa63ea1ff35b7d949b49a661187aa16e6 100644 (file)
@@ -114,3 +114,20 @@ unsigned long convert_unit(unsigned long value, char *unit)
 
        return value;
 }
+
+int readn(int fd, void *buf, size_t n)
+{
+       void *buf_start = buf;
+
+       while (n) {
+               int ret = read(fd, buf, n);
+
+               if (ret <= 0)
+                       return ret;
+
+               n -= ret;
+               buf += ret;
+       }
+
+       return buf - buf_start;
+}