Граф коммитов

454 Коммитов

Автор SHA1 Сообщение Дата
Bingyi Yang 59cc1df5b1
add a threadpool chaos test (#406)
* add a chaos test

* change back thread count

* address comments

* address comments

* address comment

* add a comment

* fixed a typo

* address comments
2024-11-11 18:04:43 -08:00
Dan Cristoloveanu 87af89ee32
Update dependencies (#407) 2024-11-05 15:58:57 -08:00
Matt Durak 78b5281143
Add real_threadpool_thandle for convenience in UTs (#405)
* Add real_threadpool_thandle for convenience in UTs
2024-11-04 09:54:16 -08:00
Jelani Brandon 7501f78f6f
updating wait_on_address to return the timeout (#404)
Co-authored-by: Jelani Brandon <jebrando@microsoft.com>
2024-10-31 16:29:09 -07:00
Nishikant Deshmukh 6aaa879511
Specs for threadpool_open move to threadpool_create and threadpool_cl… (#403)
* Specs for threadpool_open move to threadpool_create and threadpool_close to threadpool_dispose

* Addressed Dan's comments

* Missing SRS_THREADPOOL_WIN32_01_006 added back

* Pushing some of the missing changes and some new changes

* More changes

* One more change remaining

* Removed the backtick
2024-10-31 13:29:12 -07:00
Bert Kleewein e1df027dc1
add reals for job_object_helper (#402)
* add reals for job_object_helper

* add stdint
2024-10-26 20:27:36 -07:00
anporumb fa600a0a8b
Solve C4505 t the source. (#400)
* added MU_SUPPRESS_WARNING for REF_COUNT types

* also removed it from thandle_ll.h

* MU_SUPPRESS_WARNING(4505) /*warning C4505: 'function': unreferenced function with internal linkage has been removed*/

* propagate_all_repos anporumb/pchmock6

* propagate_all_repos anporumb/pchmock6

* propagate_all_repos anporumb/pchmock6

* propagate_all_repos anporumb/pchmock6

* use latest dependencies 13 Oct 2024

* use vcpkg from master
2024-10-25 12:58:21 -07:00
David Robson fc42835c0e
Update dependencies (#398) 2024-10-24 15:37:29 -07:00
Bingyi Yang 537d59b60f
add threadpool timer state spec (#396)
* add spec

* address comments
2024-10-24 11:29:47 -07:00
Bert Kleewein bd77337893
Code and tests for job-object-helper (#388)
* copy tests from geo

* ready for tests

* first pass

* second pass

* negative test pass

* more

* a few more

* all unit tests pass

* integration test for memory use

* integration tests for CPU use

* comment out full memory use test

* adjust CPU expectations

* really relaxing this test. Maybe we need something better.

* fix interlock

* passing"

* log lines

* final PR feedback
2024-10-22 15:42:24 +00:00
Jelani Brandon bbc959b9e9
re-enable traceability code in repo (#393)
Co-authored-by: Jelani Brandon <jebrando@microsoft.com>
2024-10-21 14:40:48 -07:00
Jelani Brandon b593eda612
Revert check in for Socket transport (#392)
* reverting files

* fixing reverted changes

---------

Co-authored-by: Jelani Brandon <jebrando@microsoft.com>
2024-10-21 18:24:53 +00:00
anporumb 752bec6839
fixes for EBS repo and remove c_pal_interfacesmocks (#391)
* c_pal_umocktypes should link with c_pal_reals

* no need to build a mock library for c_pal_interface

* take out pal_ll_interfaces_mocks

* make call_once_ut compile

* better reals for async_socket

* added (void) to void functions

* add real socjket transport / socket for win32

* added reals for sokcet transport on linux

* async socket uses socket transport

* added real async socket for linux

* socket_transport has unbalanced } in C++ lands

* reals changes

* windows compiles now

* better but still doesn't compile on linux

* now it all compiles

* added stdint.h after CR
2024-10-18 11:41:44 -07:00
anporumb e66530d200
use latest master AND modifications for latest ctestrunnerswitcher (#390)
* pal_interfaces now appears in Visual Studio and has mocks

* now it compiles on Linux too

* propagate_all_repos anporumb/pchmock4

* propagate_all_repos anporumb/pchmock4

* spaces removed apparently

* propagate_all_repos anporumb/pchmock4

* propagate_all_repos anporumb/pchmock4

* use the variable set in c-testrunnerswitcher

* propagate_all_repos anporumb/pchmock4

* propagate_all_repos anporumb/pchmock4

* propagate_all_repos anporumb/pchmock4

* propagate_all_repos anporumb/pchmock4

* propagate_all_repos anporumb/pchmock4

* propagate_all_repos anporumb/pchmock4

* propagate_all_repos anporumb/pchmock4

* propagate_all_repos anporumb/pchmock4

* revert interfaces/CMakeLists.txt to master

* use latest dependencies 17 Oct 2024

* use vcpkg from master
2024-10-18 04:51:45 +00:00
samrach9 ab26b45658
initial integrations of socket_transport into async_socket (#354)
* initial integrations of socket_transport into async_socket

---------

Co-authored-by: Jelani Brandon <jebrando@microsoft.com>
2024-10-16 10:27:20 -07:00
anporumb fd1c0a2c6c
Update dependencies (#387) 2024-10-14 12:13:01 -07:00
anporumb 99dc1e943e
linux reals shoud bring in the include for linux (#386)
* also have target_include_directories(pal_ll_win32 with common/inc

* linux_reals should bring in the interface of linux
2024-10-11 13:30:43 -07:00
anporumb cf83dc4ed7
use correct include path and no double reals (#385)
* use the correct include path

* propagate_all_repos anporumb/pchmock3

* no double include

* why CMAKE, WHY
2024-10-11 11:41:50 -07:00
anporumb 0fee3af5d5
add the smallest precompiled header and use it in 1x project. (#384)
* meek attempt to have a mocks library with precompiled header

* this creates by hand win32_ll_mocks and uses it in call_once_ut_exe_c_pal

* mock loibrary for c_pal_interfaces is build with a function

* propagate_all_repos anporumb/pchmock3

* itr also compiles but does NOT link on linux

* now it builds AND links on LINUX

* added a minimal explanation about exiting visual studio

* propagate_all_repos anporumb/pchmock3

* propagate_all_repos anporumb/pchmock3

* propagate_all_repos anporumb/pchmock3

* threadpool uses terminate_process

* make pal_ll_interfaces appear in Visual Studio

* it needs to be prefixed with inc

* extraneous files are removed

* write library name with capital letters

* use also for #ifdef

* propagate_all_repos anporumb/pchmock3

* propagate_all_repos anporumb/pchmock3

* propagate_all_repos anporumb/pchmock3

* propagate_all_repos anporumb/pchmock3

* propagate_all_repos anporumb/pchmock3

* propagate_all_repos anporumb/pchmock3

* propagate_all_repos anporumb/pchmock3

* use latest dependencies 10 Oct 2024

* remove C_PAL_INC_FOLDER

* make it compile with latest c-pal

* use latest dependencies 10 Oct 2024

* remove garbage from build folder

* use latest dependencies 10 Oct 2024

* propagate_all_repos anporumb/pchmock3

* use latest dependencies 10 Oct 2024

* use latest dependencies 10 Oct 2024
2024-10-11 10:26:22 -07:00
Jelani Brandon e8692afe7d
fix missing include in real file (#383)
Co-authored-by: Jelani Brandon <jebrando@microsoft.com>
2024-10-09 21:03:33 -07:00
Bert Kleewein 345b3df3c7
job_object_helper_v2 spec and header (#377)
* job_object_helper_v2 spec and header

* PR feedback
2024-10-08 03:37:22 +00:00
Nishikant Deshmukh 9b78edc73e
Change Timeouts to UINT32_MAX (#382) 2024-10-07 19:46:56 +00:00
Nishikant Deshmukh a768b6241b
Threadpull Linux Implementation (#381)
* Spec changes to handle freeing the context after all tasks are completed and corresponding minor changes in threadpool_schedule_work

* Addressed Jelani's comments

* Corrected the verbage of assigning 0 for success in few of the Specs

* Threadpool Linux Implementation Initial Check In

* Fixed traceability issues #1

* Fixed traceability issues #2
2024-10-07 10:51:11 -07:00
anporumb 2a63cf4345
Anpo 03 oct 2024 update deps (#380)
* use latest dependencies 03 Oct 2024

* use master vcpkg

* use submodule master check
2024-10-04 01:14:01 +00:00
Parth Aggarwal 24f3a9d8c8
Update dependencies (#379) 2024-10-03 16:48:32 -07:00
Jelani Brandon 26720d19e2
adding code to detect port exhaustion (#378)
* adding code to detect port exhaustion

Co-authored-by: Jelani Brandon <jebrando@microsoft.com>
2024-10-02 16:33:55 -07:00
Bert Kleewein 21354df004
design & header specs for job_object_helper (#370)
* design & header specs for job_object_helper

* PR feedback

* updated requirements

* update API to set memory limit
2024-09-26 14:50:34 -07:00
anporumb d7bf19f934
Anporumb/pchmock (#375)
* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* use latest masters

* revert vcpkg to master

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* use latest masters
2024-09-26 19:44:47 +00:00
anporumb c6626d7ff6
use_vld (#374)
* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* use latest masters
2024-09-26 12:06:36 +00:00
Nishikant Deshmukh 878c8367b3
Spec changes to handle freeing the context after all tasks are comple… (#373)
* Spec changes to handle freeing the context after all tasks are completed and corresponding minor changes in threadpool_schedule_work

* Addressed Jelani's comments

* Corrected the verbage of assigning 0 for success in few of the Specs
2024-09-25 16:47:40 -07:00
anporumb e25f8f0494
update for umock IMPL/DECL (#372)
* propagate anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* fix c_pal against LNK errors

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* changes for MOCKABLE_INTERFACE

* fix typo

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* propagate_all_repos anporumb/pchmock

* update to latest subrepos

* doisable incklude what you use
2024-09-24 19:58:36 +05:30
Nishikant Deshmukh 71e315817c
Threadpool WIN32 changes implementation (#371)
* Threadpool WIN32 changes implementation

* Fixed few unit-tests and memory leaks
2024-09-19 14:52:53 -07:00
Navya Gaur 27c3d6f2ca
Added method to get time elapsed in seconds without creating a timer (#369)
* Added a new method timer_global_get_elapsed in timer_win32.c
timer_global_get_elapsed calculates time elapsed in seconds
Added a new test case in timer_win32_ut.c file to test the new method
Added spec for this new method

* Added global_timer_state_reset method to reset g_timer_state variable to 0 after each test case
Added an UT for g_timer_get_elapsed_in_us_succeeds to test timer_global_get_elapsed_us
Added global_timer_state_reset in interface file

* Added suffix _s to timer_global_get_elapsed
Added implementation for timer_global_get_elapsed_s in timer_linux.c
Added releavnt ut and specs in timer_linux_ut.c and timer_linux_requirements.md

* Added reference to spec for test case in timer_win32_ut.c

* Defining a macro with real_ prefix to avoid conflict with existing functions defined

* Added macro for global_timer_state_reset for avoid conflict with any existing method

* Added integration test for timer_global_get_elapsed_s()

---------

Co-authored-by: Navya Gaur <navyagaur@microsoft.com>
2024-09-19 13:33:49 +05:30
Jasmine Lo 17e13e9be2
fix build error (#368) 2024-09-10 12:28:53 -07:00
Jasmine Lo 0f2a094135
Update dependencies (#367) 2024-09-09 14:14:11 -07:00
Nishikant Deshmukh cc9697529c
Fixing the failed merge in threadpool_specs_pt2 branch (#366) 2024-09-04 17:47:13 +00:00
Nishikant Deshmukh d558f1cc7e
Nisdeshmukh/threadpool specs pt2 (#365)
* Initial checkin with specs

* Fixed Traceability

* Fixed PVOID on Linux

* Fixed PVOID in threadpool.h

* Forgot to add threadpool.h into the commit, adding it now

* Addressed comments by Matt

* Addressed ALL comments by Matt

* Fixed some of the typos and requirement doc mismatches across the three interfaces, linux, win32

* Removed some dangling PVOID in linux implementation

* Fixing win32 reals and linux_reals

* Added the missing success message specs in threadpool_create_work_item

* Addressedd changes after discussion with Matt and Dan.

* Addressed Dan's comments

* Final comments from Dan resolved
2024-09-04 01:33:19 +00:00
Nishikant Deshmukh 8c1dd06fb3
Initial checkin with specs (#362)
* Initial checkin with specs

* Fixed Traceability

* Fixed PVOID on Linux

* Fixed PVOID in threadpool.h

* Forgot to add threadpool.h into the commit, adding it now

* Addressed comments by Matt

* Addressed ALL comments by Matt
2024-09-03 17:35:36 -07:00
Dan Cristoloveanu 82c66b2da7
Update dependencies (#363) 2024-08-30 09:50:01 -07:00
Dan Cristoloveanu a6e04ff3ca
Update dependencies (#361) 2024-08-26 14:48:53 -07:00
samrach9 d79a408f35
adding two functions to socket_transport API (#359)
* adding two functions to socket_transport API

* changing function name

* small fixes
2024-08-19 11:30:52 -07:00
anporumb 2ddd023c53
Update dependencies (#360) 2024-08-16 08:08:13 -07:00
samrach9 f20caca657
adding timeout to socket_transport (#358)
* adding timeout to socket_transport

* iwyu fix

* adding define
2024-08-14 09:53:16 -07:00
samrach9 4edd494c91
adding socket_accept enum (#356)
* adding socket_accept enum

* changing to NO_CONNECTION

* adding SOCKET_ACCEPT_NO_CONNECTION to linux
2024-08-08 12:17:39 -07:00
anporumb 1cbc6cedfd
Update dependencies (#355) 2024-08-06 08:55:34 -07:00
Bert Kleewein 31ae6b6faf
Fix geo -- timer.h is required for ENABLE_SOCKET_LOGGING (#353) 2024-07-23 14:55:32 -07:00
anporumb f487b41594
Update dependencies (#352) 2024-07-18 17:44:25 +00:00
samrach9 487d7cd1e7
Socket transport sr (#351)
* unit tests for socket_transport_

* fixed memory leaks and reviews

* fixed int test and binding socket errors

* making socket_transport_create seperate APIs

* fix for linux test

* fixes to spec

* chaos tests for socket transport

* fixes for failing chaos test

* fixes for failing chaos test pt 2

* iwyu fixes

* combining tests

* condensing socket transport chaos test

* port number fix

* port number fix pt2

* removing wait_for_value and ports

* iwyu fix
2024-07-11 16:09:25 -07:00
samrach9 2ddec669e3
Socket transport sr (#349) 2024-07-11 14:37:18 -07:00
Jelani Brandon cc9d870f5f
Set socket reuse option on linux listening socket (#350)
* set the linux socket listen reuse flag

---------

Co-authored-by: Jelani Brandon <jebrando@microsoft.com>
2024-07-11 11:35:24 -07:00