[GSoC22 Weekly Status report #12&13&14] Working on signal handling functions: Koichi Imai
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 19 Sep 2022 10:49:38 UTC
Hello, Thankfully, the deadline was extended, so I could make a lot of progress over the past few weeks. First, I've solved the issue with the ioctl system call. As I expected, this was due to the difference in the macro values used in the ioctl system call. Values such as IOC_IN, IOC_OUT, TCGETS, TCSETSW are all different from those of other architectures in powerpc64 so I redefined it in linux.h. Also, when running ls command in bash, it said "cannot open directory "." ." This was due to the difference in the struct l_newstat used for open_at(2) and fstat(2). I've fixed this and now I can successfully run "/bin/ls". I tried to execute LTP test for the open system call, however, it stopped with segmentation fault. I've investigated the cause of this failure and found out that it was because of the signal handling. I haven't yet implemented the signal handling functions for Linux. Last week I read the Linux code on signal delivery and have a better understanding of this step, whose main role is to create the signal frame and initialize the user registers. I'm now implementing linux_rt_sendsig() which does that for Linuxulator. The goal for this week is to implement sendsig and sigreturn functions. Koichi