Ryo Nakamura
24e86f58d8
mscp: maintain mscp_thread structs in list
...
Instead of m->threads array, struct mscp_thread instanes are
maintained in m->thread_list. This enables stable counter access
via mscp_get_stats().
2023-05-07 21:05:05 +09:00
Ryo Nakamura
1b9ae51974
add message.h and message.c, mscp_set|get_error()
...
Instead of pr_err(), libmscp uses mscp_set_error() and
applications use mscp_get_errror() to get error message.
2023-03-03 21:29:43 +09:00
Ryo Nakamura
3d26cc2c18
add copy-related functions to path
2023-02-25 23:39:20 +09:00
Ryo Nakamura
d27db01d8d
use pthread_cleanup to acquire and release lock
...
In chunk_prepare(), if multiple threads wait for acquiring f->lock,
and then pthread_cancel() is called, the waiting threads are never
canceled because pthread_mutex_lock() is not a cancellation point.
So, use pthread_cleanup_push/pop to release the lock.
2022-12-11 13:23:41 +09:00
Ryo Nakamura
c76fa3141d
change indent from space to tab
2022-10-29 23:48:50 +09:00
Ryo Nakamura
b2ae183c81
implement copy chunk
2022-10-22 18:23:42 +09:00
Ryo Nakamura
ab0bf7e5dc
add atomic refcnt and locks.
...
It might be unnecessary, if open/close can be done without lock.
2022-10-20 20:25:23 +09:00