Mike Frysinger wrote: > On Tuesday 10 November 2009 04:38:30 liubo wrote: > >> 1) rt_sigaction >> "sigaction" has the structure: >> >> struct sigaction { >> __sighandler_t sa_handler; >> unsigned long sa_flags; >> #ifdef SA_RESTORER >> __sigrestore_t sa_restorer; >> #endif >> sigset_t sa_mask; /* mask last for extensibility */ >> }; >> >> However, on arch x86_64, if we directly get to call rt_sigaction, >> the argument "sa_restorer" will not be fulfilled, and this will lead >> to segment fault. >> on arch x86_64, if sa_restorer is not set, kernel will lead to segment >> fault. In other arch, if sa_restorer is not set, kernel can do the correct >> work. To avoid this segment fault, we use glibc function >> "int sigaction(...);" instead, which can fulfill the argument >> "sa_restorer". >> > > which defeats the purpose of the test. there is no guarantee that the C > library sigaction function is implemented via the __NR_rt_sigaction syscall. >
In x86_64, it do this. And If we want to use __NR_rt_sigaction syscall directly, we must fill the sa_restorer and set the RESTORER flag to sa_mask. If we do not set the sa_restorer, kill will always cause segment fault. > >> 2) rt_sigprocmask >> This failure contains two aspects, >> the first is the segment fault as described in 1), >> the second is that testcase uses a unknown signal 33 for test, >> and this will lead sigaction cannot bind signal 33 to the action. >> >> So, we attempt to use a known signal instead, such as 34. >> > > which is just as bogus and unportable. if the test needs a real time signal, > it should leverage the sigrtmin...sigrtmax defines. > -mike > > ------------------------------------------------------------------------ > > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day > trial. Simplify your report design, integration and deployment - and focus on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > ------------------------------------------------------------------------ > > _______________________________________________ > Ltp-list mailing list > Ltp-list@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/ltp-list > ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Ltp-list mailing list Ltp-list@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ltp-list