Hi,
I am having problems with using io_getevents ? Is the o_direct aio support
stable in 2.5.67? Following is the scenario:
Machine: Dell 500SC 1.13Gz
Original Kernel : 2.4.18-3 ( redhat 7.3)
Downloaded kernel 2.5.67 and compiled it.
Installed libaio-0.3.92 aio library.
I am writing an io intensive application and want to leverage the o_direct
aio support. I am using in following way (borrowed from testcase in libaio)
struct iocb **pAiocb;
struct io_event event;
if(io_submit(io_ctx,numAiocb, pAiocb) <0)
{
perror("Error in io_submit");
return(-1);
}
for(i=0;i<numAiocb;i++)
{
if((res=io_getevents(io_ctx,0,1,event,NULL)) && (res != 1))
{
perror("Error in getevents");
return(-1);
}
printf("%d\n",event.res);
}
PROBLEM is : THe code doesn't print an ERROR but in "event.res" the amount
of data read is not same as requested. Sometimes the return size is ZERO
and event is returned.
THE CODE WORKS fine if the file is opened WITHOUT O_DIRECT.
Thanks,
Bobby
_________________________________________________________________
Protect your PC - get McAfee.com VirusScan Online
http://clinic.mcafee.com/clinic/ibuy/campaign.asp?cid=3963
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Wed Apr 30 2003 - 22:00:31 EST