forked from ZoneMinder/zoneminder
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Carbenium fmt #1
Closed
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…t input for custom entry
…delId and ManufacturerId saving.
From C99 spec: [...] objects of automatic storage duration that are local to the function containing the invocation of the corresponding setjmp macro that do not have volatile-qualified type and have been changed between the setjmp invocation and longjmp call are indeterminate Remove the variables in question or pass them as const refs.
…ns. Significantly reduces cpu use in motion detection.
…tion detection. Should fix decode lockup
…low '' to mean NULL when specifying Storage Area
1. FreeBSD uses elf_aux_info instead of getauxval. 2. FreeBSD uses HWCAP_NEON macro for Neon.
Fix build on FreeBSD/armv7
When moving from a 2nd storage to Default it fails with "New storage does not have an id. Moving will not happen" because the default ID is 0.
…e to prevent errors being logged due to missing files
…pshots and make the code a little easier to read
…anything we spawn doesn't become a zombie.
Fix Copy/Move to Default Storage
connortechnology
pushed a commit
that referenced
this pull request
Feb 26, 2022
Notifying `mCondition` without taking the lock causes a race condition in ::process() between checking `mTerminate` and waiting for the `mCondition`, which causes a dead lock. This commit moves writing to `mTerminate` and notifying `mCondition` under the lock to eliminate race condition and dead lock. This is not theoretical. It has caused zmu to hang at exit on a Raspberry Pi 4, exhuasting PHP-FPM process pool. The stacks below are captured when running ZoneMinder 1.36.12-focal1 on Ubuntu 20.04: (gdb) thread apply all bt Thread 2 (Thread 0xffff80c1c880 (LWP 259988)): #0 futex_wait_cancelable (private=0, expected=0, futex_word=0xaaaae0584e80 <dbQueue+176>) at ../sysdeps/nptl/futex-internal.h:183 #1 __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0xaaaae0584e28 <dbQueue+88>, cond=0xaaaae0584e58 <dbQueue+136>) at pthread_cond_wait.c:508 ZoneMinder#2 __pthread_cond_wait (cond=0xaaaae0584e58 <dbQueue+136>, mutex=0xaaaae0584e28 <dbQueue+88>) at pthread_cond_wait.c:638 ZoneMinder#3 0x0000ffff8700d670 in std::condition_variable::wait(std::unique_lock<std::mutex>&) () from /lib/aarch64-linux-gnu/libstdc++.so.6 ZoneMinder#4 0x0000aaaae0438f08 in zmDbQueue::process (this=0xaaaae0584dd0 <dbQueue>) at ./src/zm_db.cpp:250 ZoneMinder#5 0x0000ffff87013fac in ?? () from /lib/aarch64-linux-gnu/libstdc++.so.6 ZoneMinder#6 0x0000ffff891264fc in start_thread (arg=0xffffe60d84bf) at pthread_create.c:477 ZoneMinder#7 0x0000ffff86dd767c in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:78 Thread 1 (Thread 0xffff80c23010 (LWP 259987)): #0 __pthread_clockjoin_ex (threadid=281472841926784, thread_return=0x0, clockid=0, abstime=<optimized out>, block=<optimized out>) at pthread_join_common.c:145 #1 0x0000ffff87014240 in std::thread::join() () from /lib/aarch64-linux-gnu/libstdc++.so.6 ZoneMinder#2 0x0000aaaae04314d0 in exit_zmu (exit_code=0) at ./src/zmu.cpp:200 ZoneMinder#3 0x0000aaaae042f4c8 in main (argc=<optimized out>, argv=<optimized out>) at ./src/zmu.cpp:797
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
include a cmake Module stolen from XBMC