Can some one tell me what could be the adverse effect of calling syscall(SYS_gettid) from Signal Handler? I know it is not in the safe functions list to be called from signal handler but I want to know reason behind it?
what is impact if i call syscall(SYS_gettid) from signal Handler?
1.3k views Asked by sandeep At
1
There are 1 answers
Related Questions in THREAD-SAFETY
- vscode file icons
- Building C# code in VSCode on Mac
- How do I support jasmine and es6 syntax in Visual studio Code?
- JS Code didn't work, trying do a demo in css lessons
- Debug Java in Brackets editor or Visual Studio Code
- Visual Studio Code, C# support on Windows
- What is the use of the Developer Tools in VS Code?
- Option to push disabled in Visual Studio Code
- How do I include 'System.Runtime.Serialization.Json' namespace in my VSCode project on Mac OS X?
- Using System.Web.Http on mac os x
Related Questions in SYSTEM-CALLS
- vscode file icons
- Building C# code in VSCode on Mac
- How do I support jasmine and es6 syntax in Visual studio Code?
- JS Code didn't work, trying do a demo in css lessons
- Debug Java in Brackets editor or Visual Studio Code
- Visual Studio Code, C# support on Windows
- What is the use of the Developer Tools in VS Code?
- Option to push disabled in Visual Studio Code
- How do I include 'System.Runtime.Serialization.Json' namespace in my VSCode project on Mac OS X?
- Using System.Web.Http on mac os x
Related Questions in SIGNAL-HANDLING
- vscode file icons
- Building C# code in VSCode on Mac
- How do I support jasmine and es6 syntax in Visual studio Code?
- JS Code didn't work, trying do a demo in css lessons
- Debug Java in Brackets editor or Visual Studio Code
- Visual Studio Code, C# support on Windows
- What is the use of the Developer Tools in VS Code?
- Option to push disabled in Visual Studio Code
- How do I include 'System.Runtime.Serialization.Json' namespace in my VSCode project on Mac OS X?
- Using System.Web.Http on mac os x
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Popular Tags
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
I'm pretty sure this has to do with the Signal Handler methods being reentrant. Suppose a signal is sent, and your handler grabs the signal and starts processing. While processing, another signal may be sent by a concurrent program, and your handler again grabs that signal, and starts processing it.
Depending on how the scheduling works out, it's possible that the same chunk of code, the Signal Handler, executes during its own execution. The problem is that it uses the same pointers and variables, so it can corrupt itself, especially because gettid() returns the ID of the current thread. Which is the current thread in this case?