add set thread count

Change-Id: I70f02908d8362a465eb8a2a24356f6989847f7ba
diff --git a/include/binder/ProcessState.h b/include/binder/ProcessState.h
index 9725822..8caf1af 100644
--- a/include/binder/ProcessState.h
+++ b/include/binder/ProcessState.h
@@ -70,6 +70,8 @@
 
             void                spawnPooledThread(bool isMain);
             
+            status_t            setThreadPoolMaxThreadCount(size_t maxThreads);
+
 private:
     friend class IPCThreadState;
     
diff --git a/libs/binder/ProcessState.cpp b/libs/binder/ProcessState.cpp
index 5399e52..d95fd6f 100644
--- a/libs/binder/ProcessState.cpp
+++ b/libs/binder/ProcessState.cpp
@@ -295,6 +295,15 @@
     }
 }
 
+status_t ProcessState::setThreadPoolMaxThreadCount(size_t maxThreads) {
+    status_t result = NO_ERROR;
+    if (ioctl(mDriverFD, BINDER_SET_MAX_THREADS, &maxThreads) == -1) {
+        result = -errno;
+        ALOGE("Binder ioctl to set max threads failed: %s", strerror(-result));
+    }
+    return result;
+}
+
 static int open_driver()
 {
     int fd = open("/dev/binder", O_RDWR);