|
From: Nikolaus R. <Nik...@ra...> - 2011-01-11 02:21:21
|
Julian Seward <js...@ac...> writes: >> My guess would be that stat64 is not marked as a system call that can >> block and that it needs the MayBlock flag adding. > > Yes, that could be it. I guess, normally, a stat64 (etc) call is > completed eventually by the kernel, without the need for any other > thread to run. But in this case a stat64 call might somehow require > some other thread to progress. > > Nikolaus, try adding > > *flags |= SfMayBlock; > > to PRE(sys_stat64) in syswrap-x86-linux.c (I assume this is > 32-bit x86). As I said in my other mail, this fixed the stat64() hang. However, now I am facing the same problem with the chown() syscall. I couldn't find a PRE(sys_chown) structure in the same file, but a PRE(sys_chown16) in syswrap-linux.c. Is that the right one to modify? I anticipate that I will need to do the same thing for chmod setxattr getxattr statvfs readlink mknod mkdir rmdir unlink symlink rename link opendir readdir listxattr removexattr create open close Can I safely add the flag using the same procedure, or are there any issues I should look out for? Best, -Nikolaus -- »Time flies like an arrow, fruit flies like a Banana.« PGP fingerprint: 5B93 61F8 4EA2 E279 ABF6 02CF A9AD B7F8 AE4E 425C |