You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by GitBox <gi...@apache.org> on 2020/06/30 11:59:37 UTC
[GitHub] [incubator-nuttx] anchao opened a new pull request #1336: syscall/prctl: fix PR_SET_NAME failure if without arg
anchao opened a new pull request #1336:
URL: https://github.com/apache/incubator-nuttx/pull/1336
## Summary
syscall/prctl: fix PR_SET_NAME failure if without <pid> arg
add PR_SET_NAME_EXT/PR_GET_NAME_EXT extension to avoid semantic
conflicts, use extened version for pthread_setname_np/pthread_getname_np
```
PRCTL(2)
NAME
prctl - operations on a process
....
DESCRIPTION
....
PR_SET_NAME (since Linux 2.6.9)
Set the name of the calling thread, using the value in the location pointed to by (char *) arg2.
The name can be up to 16 bytes long, including the terminating null byte.
(If the length of the string, including the terminating null byte, exceeds 16 bytes, the string is silently truncated.)
```
## Impact
prctl(PR_SET_NAME, "test name")
## Testing
Set the specified name to self and pause the current process:
```
$ git diff .
diff --git a/examples/hello/hello_main.c b/examples/hello/hello_main.c
index 953597a..f21b74b 100644
--- a/examples/hello/hello_main.c
+++ b/examples/hello/hello_main.c
@@ -50,6 +50,9 @@
int main(int argc, FAR char *argv[])
{
+ prctl(PR_SET_NAME, "test name");
printf("Hello, World!!\n");
+ pause();
return 0;
}
```
Before patch:
```
$ hello &
Hello, World!!
$ ps
PID PPID PRI POLICY TYPE NPX STATE EVENT SIGMASK STACK COMMAND
0 0 0 FIFO Kthread N-- Ready 00000000 004096 Idle Task
2 1 100 FIFO Task --- Running 00000000 008160 /system/bin/nsh
3 2 100 FIFO Task --- Waiting Signal 00000000 008176 hello
```
After patch:
```
$ hello &
Hello, World!!
$ ps
PID PPID PRI POLICY TYPE NPX STATE EVENT SIGMASK STACK COMMAND
0 0 0 FIFO Kthread N-- Ready 00000000 004096 Idle Task
2 1 100 FIFO Task --- Running 00000000 008160 /system/bin/nsh
3 2 100 FIFO Task --- Waiting Signal 00000000 008176 test name
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [incubator-nuttx] xiaoxiang781216 merged pull request #1336: syscall/prctl: fix PR_SET_NAME failure if without arg
Posted by GitBox <gi...@apache.org>.
xiaoxiang781216 merged pull request #1336:
URL: https://github.com/apache/incubator-nuttx/pull/1336
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [incubator-nuttx] xiaoxiang781216 commented on pull request #1336: syscall/prctl: fix PR_SET_NAME failure if without arg
Posted by GitBox <gi...@apache.org>.
xiaoxiang781216 commented on pull request #1336:
URL: https://github.com/apache/incubator-nuttx/pull/1336#issuecomment-652749581
LGTM.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org