{"push_id":900956569,"size":157,"distinct_size":157,"ref":"refs/heads/master","head":"c6d239fa790ef48d932d1243d002253101648f7f","before":"43403b8221ed0d6e65d4766fc629f178915df4e4","commits":[{"sha":"b0e91acb611bd7e6c39bc8756b38b41809a727a3","author":{"email":"26a9c458f5d15e6af1b815255dc299b08a010a80@mail.ru","name":"Ivan Maidanski"},"message":"[boehm] Match BDWGC v7 API\n\nMono-specific libgc functionality has been recently added to BDWGC.\nThis commit changes API of included Boehm GC to match that of the\nexternal GC.\n\n * Renaming:\n   - GCEventType -> GC_EventType\n   - GC_get_restart_signal -> GC_get_thr_restart_signal\n   - GC_toggleref_register_callback -> GC_set_toggleref_func\n   - GC_set_finalizer_notify_proc -> GC_set_await_finalize_proc\n\n * Replace global variable with a setter:\n   - GC_notify_event -> GC_set_on_collection_event() (acquires GC lock)\n\n * Foreign threads registration:\n   - add GC_allow_register_threads() (no-op for GC v6, called by\n     mono_gc_base_init)\n   - add GC_SUCCESS, GC_DUPLICATE, GC_NO_MEMORY, GC_UNIMPLEMENTED macros\n   - add struct GC_stack_base\n   - replace GC_thread_register_foreign(void*) with\n     GC_register_my_thread(struct GC_stack_base)\n   - define GC_register_my_thread also for Solaris and Win32\n   - GC_register_my_thread returns GC_DUPLICATE if already registered\n\n * Toggle-ref callback declaration change:\n   - add GC_ToggleRefStatus (enum type)\n   - callback returns GC_ToggleRefStatus instead of int\n\n * Toggle-ref addition status checked:\n   - GC_toggleref_add return type changed from void to int\n   - GC_toggleref_add returns GC_SUCCESS or GC_NO_MEMORY\n   - static ensure_toggleref_capacity() returns FALSE if GC MALLOC failed\n   - call g_error() if GC_toggleref_add failed\n\n * Conditional public function declaration:\n   - wrap GC_DllMain declaration into ifdef GC_INSIDE_DLL\n   - define GC_INSIDE_DLL prior to include gc.h","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/b0e91acb611bd7e6c39bc8756b38b41809a727a3"},{"sha":"5e3eac6b4d2a5878560ca15257d5500e81325fed","author":{"email":"26a9c458f5d15e6af1b815255dc299b08a010a80@mail.ru","name":"Ivan Maidanski"},"message":"[boehm] Put *_freelists into thread_local_freelists (as in BDWGC v7)\n\nMono create_allocator accesses libgc private *_freelists directly.\nThese fields have been grouped together into struct\nthread_local_freelists in BDWGC v7.\nThis commit does code refactoring to match the structure of external\nGC regarding *_freelists.\n\n * Move GRANULARITY, NFREELISTS (used by *_freelists) out of\n   GC_Thread_Rep.\n\n * Move ptrfree_freelists, normal_freelists, gcj_freelists from\n   GC_Thread_Rep to struct thread_local_freelists.\n\n * Add tlfs field (of type struct thread_local_freelists) to\n   GC_Thread_Rep.\n\n * Update pthread_support.c and boehm-gc.c code accordingly.","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/5e3eac6b4d2a5878560ca15257d5500e81325fed"},{"sha":"48c61581b2ca786f45f6b6144e7fc84b287412a8","author":{"email":"747d425dfc602428febd97bd935311d9ede791b9@gmail.com","name":"Vlad Brezae"},"message":"[sgen] Remove unused stat","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/48c61581b2ca786f45f6b6144e7fc84b287412a8"},{"sha":"950d7d21514cb6aa504d50372bfaf48361e761cf","author":{"email":"747d425dfc602428febd97bd935311d9ede791b9@gmail.com","name":"Vlad Brezae"},"message":"[sgen] Register counter for evacuated objects","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/950d7d21514cb6aa504d50372bfaf48361e761cf"},{"sha":"b54ab7a4ba268f64e69f18c3777de6734924e26a","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[mutex] Cleanup\n\nMove all the code to mono-mutex.c, so it will be easier to make it coop\nsuspend friendly.","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/b54ab7a4ba268f64e69f18c3777de6734924e26a"},{"sha":"34a361a6df41f42e1124fa7d766939e3ef4f5d08","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[semaphore] Cleanup\n\nMove all the code to mono-semaphore.c, so it will be easier to make it\ncoop suspend friendly.","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/34a361a6df41f42e1124fa7d766939e3ef4f5d08"},{"sha":"4899b4627aa14e59c932102458240841092cd131","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[attach] Remove dead code","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/4899b4627aa14e59c932102458240841092cd131"},{"sha":"7ac23bc974fa7f4db71fa7885ac78463ac5e2fb8","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[utils] Move mutex and semaphore to mono_os_*\n\nThis is to separate from the mono_coop_* mutex and semaphores","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/7ac23bc974fa7f4db71fa7885ac78463ac5e2fb8"},{"sha":"33e1332df8b580c5c955d22f300c1e4247f15e86","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[utils] Add mutex and semaphore API to support coop suspend\n\nInstead of having to use MONO_PREPARE_BLOCKING/MONO_TRY_BLOCKING in the\nuser code, we do it directly in this new mutex and semaphore coop API.\n\nUsing the mono_os_* locking functions should not be the default case, as\nthat could lead to longer than necessary time to suspend, and even in\ncertain cases to deadlocks.","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/33e1332df8b580c5c955d22f300c1e4247f15e86"},{"sha":"77f9f4086984d1887627d462d70977f5cca89b78","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[gc] Remove dead code","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/77f9f4086984d1887627d462d70977f5cca89b78"},{"sha":"3895f81572bcafe2573bfa155dc5ca1a6dcd51f1","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[coop] Switch finalizer_sem to coop mutex","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/3895f81572bcafe2573bfa155dc5ca1a6dcd51f1"},{"sha":"5db3e92b519d726150305e4be65fec161bfcdc50","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[coop] Switch MonoInternalThread->synch_cs to coop mutex","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/5db3e92b519d726150305e4be65fec161bfcdc50"},{"sha":"3546e55aaf824ece2d8c2f7e2aeb6ca824061f55","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[coop] Switch sleep_(mutex|cond) to coop implementation","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/3546e55aaf824ece2d8c2f7e2aeb6ca824061f55"},{"sha":"49eb91e6f8c393ca3086434e667c6b3836750713","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[coop] Switch appdomains_mutex to coop implementation","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/49eb91e6f8c393ca3086434e667c6b3836750713"},{"sha":"95acc1e441edeb453f6c97f1d9ca0cbec4f31da1","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[io-layer] Fix uninitialized mutex","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/95acc1e441edeb453f6c97f1d9ca0cbec4f31da1"},{"sha":"6fde25fe9976b8f6c4249b3e454e14b18a3d09e1","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[coop] Switch type_initialization_section and TypeInitializationLock->initialization_section to coop implementation","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/6fde25fe9976b8f6c4249b3e454e14b18a3d09e1"},{"sha":"0fe6879969012ce6772a639a6c89cd2130cfa621","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[socket] Fix blocking section around close","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/0fe6879969012ce6772a639a6c89cd2130cfa621"},{"sha":"06ae5e2e923e84f61f038172e78ad48d382bd5ca","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[coop] Switch ThreadPoolIO locks to coop implementation","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/06ae5e2e923e84f61f038172e78ad48d382bd5ca"},{"sha":"5f4a87021897e4c2d6b8cc8878469b885ff10795","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[coop] Switch ThreadPool locks to coop implementation","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/5f4a87021897e4c2d6b8cc8878469b885ff10795"},{"sha":"9f522ef368af2878487fe82936e84607a356fb44","author":{"email":"146473bcb6ff4a8b8b564d04e59c99d8296501cb@xamarin.com","name":"Ludovic Henry"},"message":"[coop] Switch SGen gc_mutex to coop implementation","distinct":true,"url":"https://api.github.com/repos/sushihangover/playscript/commits/9f522ef368af2878487fe82936e84607a356fb44"}]}