From: Subrata <sub...@us...> - 2009-04-13 13:58:39
|
Update of /cvsroot/ltp/ltp/include In directory ddv4jf1.ch3.sourceforge.com:/tmp/cvs-serv915/ltp/include Modified Files: tlibio.h Log Message: I am not sure what kinds of IO and wait methods are available on uClinux, but by looking at the code in tlibio.h, the following method seems not supported there. So whenever LIO_IO_SYNCP was chosen as the random IO method, it will skip the above code and failback to "No I/O method chosen". Can you try the following patch to see if it fixes the problem? It drops LIO_IO_SYNCP as an avaliable method for uClinux, and also narrows down the wait methods since it does not support async IO there. I'd hope someone knew better than me about uClinux to review this patch. Signed-off-by: CAI Qian <ca...@cc...>. Index: tlibio.h =================================================================== RCS file: /cvsroot/ltp/ltp/include/tlibio.h,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** tlibio.h 26 Feb 2009 06:33:39 -0000 1.5 --- tlibio.h 13 Apr 2009 13:58:20 -0000 1.6 *************** *** 42,51 **** #define LIO_IO_TYPES 00061 /* all io types, non-async */ #endif /* sgi */ ! #if defined(__linux__) #define LIO_IO_TYPES 00061 /* all io types */ #define LIO_IO_ATYPES 00077 /* all io types */ #endif ! #if defined(__sun) || defined(__hpux) || defined(_AIX) ! #define LIO_IO_TYPES 00021 /* all io types */ #endif /* linux */ #ifdef CRAY --- 42,51 ---- #define LIO_IO_TYPES 00061 /* all io types, non-async */ #endif /* sgi */ ! #if defined(__linux__) && !defined(__UCLIBC__) #define LIO_IO_TYPES 00061 /* all io types */ #define LIO_IO_ATYPES 00077 /* all io types */ #endif ! #if defined(__sun) || defined(__hpux) || defined(_AIX) || defined(__UCLIBC__) ! #define LIO_IO_TYPES 00021 /* all io types except pread/pwrite */ #endif /* linux */ #ifdef CRAY *************** *** 62,66 **** #define LIO_WAIT_SIGPAUSE 00100000 /* call pause */ #define LIO_WAIT_SIGACTIVE 00200000 /* spin waiting for signal */ ! #if defined(sgi) || defined(__linux__) #define LIO_WAIT_CBSUSPEND 00400000 /* aio_suspend waiting for callback */ #define LIO_WAIT_SIGSUSPEND 01000000 /* aio_suspend waiting for signal */ --- 62,66 ---- #define LIO_WAIT_SIGPAUSE 00100000 /* call pause */ #define LIO_WAIT_SIGACTIVE 00200000 /* spin waiting for signal */ ! #if defined(sgi) || defined(__linux__) || !defined(__UCLIBC__) #define LIO_WAIT_CBSUSPEND 00400000 /* aio_suspend waiting for callback */ #define LIO_WAIT_SIGSUSPEND 01000000 /* aio_suspend waiting for signal */ *************** *** 68,72 **** #define LIO_WAIT_TYPES 00020000 /* all sync wait types (sorta) */ #endif /* sgi */ ! #if defined(__sun) || defined(__hpux) || defined(_AIX) #define LIO_WAIT_TYPES 00300000 /* all wait types, except nowait */ #endif /* linux */ --- 68,72 ---- #define LIO_WAIT_TYPES 00020000 /* all sync wait types (sorta) */ #endif /* sgi */ ! #if defined(__sun) || defined(__hpux) || defined(_AIX) || defined(__UCLIBC__) #define LIO_WAIT_TYPES 00300000 /* all wait types, except nowait */ #endif /* linux */ |