1
0
mirror of https://github.com/RPCS3/rpcs3.git synced 2024-11-22 02:32:36 +01:00

macOS: Set correct maxfiles (fixes shader cache and SPU LLVM)

This commit is contained in:
nastys 2022-01-10 14:14:14 +01:00 committed by Ivan
parent ed542b2cb4
commit 3571e6ef85
2 changed files with 18 additions and 0 deletions

View File

@ -1905,6 +1905,11 @@ void thread_base::start()
m_thread = ::_beginthreadex(nullptr, 0, entry_point, this, CREATE_SUSPENDED, nullptr); m_thread = ::_beginthreadex(nullptr, 0, entry_point, this, CREATE_SUSPENDED, nullptr);
ensure(m_thread); ensure(m_thread);
ensure(::ResumeThread(reinterpret_cast<HANDLE>(+m_thread)) != -1); ensure(::ResumeThread(reinterpret_cast<HANDLE>(+m_thread)) != -1);
#elif defined(__APPLE__)
pthread_attr_t stack_size_attr;
pthread_attr_init(&stack_size_attr);
pthread_attr_setstacksize(&stack_size_attr, 0x200000);
ensure(pthread_create(reinterpret_cast<pthread_t*>(&m_thread.raw()), &stack_size_attr, entry_point, this) == 0);
#else #else
ensure(pthread_create(reinterpret_cast<pthread_t*>(&m_thread.raw()), nullptr, entry_point, this) == 0); ensure(pthread_create(reinterpret_cast<pthread_t*>(&m_thread.raw()), nullptr, entry_point, this) == 0);
#endif #endif

View File

@ -508,6 +508,19 @@ int main(int argc, char** argv)
setenv( "KDE_DEBUG", "1", 0 ); setenv( "KDE_DEBUG", "1", 0 );
#endif #endif
#ifdef __APPLE__
struct ::rlimit rlim;
::getrlimit(RLIMIT_NOFILE, &rlim);
rlim.rlim_cur = OPEN_MAX;
if (::setrlimit(RLIMIT_NOFILE, &rlim) != 0)
std::cerr << "Failed to set max open file limit (" << OPEN_MAX << ").\n";
#endif
#ifndef _WIN32
// Write file limits
sys_log.notice("Maximum open file descriptors: %i", utils::get_maxfiles());
#endif
std::lock_guard qt_init(s_qt_init); std::lock_guard qt_init(s_qt_init);
// The constructor of QApplication eats the --style and --stylesheet arguments. // The constructor of QApplication eats the --style and --stylesheet arguments.