hello ALL ,
I am very curious about the AIO support in kernel. I
have downloaded the
recent kernel 2.6.13 and applied suparna's patches on
that but now i got stuck as
now there are two different packages are available.
1) libaio rpm
There are many rpm available such as
libaio-0.3.xxx-02.src rpm and many
more but at http://lse.sourceforge.net/io/aio.html
,Somebody has said to use
libaio-0.3.99 package ..
So can you please give me some guidelines on after
applying the patch how
to proceed further???
Is these packages are part of linux kernel
installation ????
Is this package implementation is really necessary and
if yes then what
are the packages we need to install.
And if any other resource is required then from where
i can get that
resource.
2) libposix API library of
http://www.bullopensource.org/posix.
How to use it???
Is it any other way of implementing the AIO
Support or it is to
provide posix conformance to the kernel.
3) What is the relation between libposixaio pacakage
supported by bullsource.net and libaio pacakage
supported by redhat ....
4) I am able to built that libposix package without
libaio ??????
5) are these pacakages are supported for othewr
platforms such as arm and ppc ,I am not able to build
libposix for arm platform.Do Cross compiling is
supported ???
6) How to use these api in test program
Can i use it as mentioned below ????
Test1.c
#include <aio.h>
#include <errno.h>
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#define BYTES 8
int main( int argc, char *argv[] )
{
int i, r;
int fildes;
struct aiocb cb;
char buff[BYTES];
if ((fildes = open( "/etc/resolv.conf", O_RDONLY
)) < 0) {
perror( "opening file" ); return 1;
}
cb.aio_fildes = fildes;
cb.aio_offset = 0;
cb.aio_buf = buff;
cb.aio_nbytes = BYTES;
cb.aio_reqprio = 0;
cb.aio_sigevent.sigev_notify = SIGEV_NONE;
errno = 0;
r = aio_read( &cb );
printf( "aio_read() ret: %i\terrno: %i\n", r,
errno );
while (aio_error( &cb ) == EINPROGRESS) {
usleep( 10 ); }
for (i = 0; i < BYTES; i++) { printf( "%c ",
buff[i] ); } printf(
"\n" );
errno = 0;
r = aio_return( &cb );
printf( "aio_return() ret: %i\tBYTES: %i\terrno:
%i\n", r, BYTES,
errno );
return 0;
}
Any other information, if u can provide then it will
be of great use ...
Thanks in advance ...
Vikas
__________________________________________________________
Yahoo! India Matrimony: Find your partner now. Go to http://yahoo.shaadi.com
Hi Vikas,
On Thu, 2005-09-22 at 04:08 +0100, vikas gupta wrote:
> hello ALL ,
>
> I am very curious about the AIO support in kernel. I
> have downloaded the
> recent kernel 2.6.13 and applied suparna's patches on
> that but now i got stuck as
> now there are two different packages are available.
You should try Ben LaHaise's patchset which includes
Suparna's patches. It's available as a single patch at:
http://www.kvack.org/~bcrl/patches/aio-2.6.13-rc6-B1-all.diff
and broken down at:
http://www.kvack.org/~bcrl/patches/aio-2.6.13-rc6-B1/
>
> 1) libaio rpm
>
libaio is meant as a way for using the kernel AIO support but
does not provide a POSIX compliant interface.
> There are many rpm available such as
> libaio-0.3.xxx-02.src rpm and many
> more but at http://lse.sourceforge.net/io/aio.html
> ,Somebody has said to use
> libaio-0.3.99 package ..
I've been using libaio-0.3.92 with success.
>
> So can you please give me some guidelines on after
> applying the patch how
> to proceed further???
>
> Is these packages are part of linux kernel
> installation ????
>
> Is this package implementation is really necessary and
> if yes then what
> are the packages we need to install.
>
> And if any other resource is required then from where
> i can get that
> resource.
>
> 2) libposix API library of
> http://www.bullopensource.org/posix.
>
> How to use it???
> Is it any other way of implementing the AIO
> Support or it is to
> provide posix conformance to the kernel.
Just like libaio, libposix-aio uses the kernel AIO support but
provides a POSIX compliant interface.
There are no man pages yet, but you can look a the SuSV3
specification (links are on http://www.bullopensource.org/posix/).
For completeness, I should add that there is a POSIX AIO
implementation in glibc librt but it uses helper threads to achieve
asynchrony and does not use kernel support.
>
> 3) What is the relation between libposixaio pacakage
> supported by bullsource.net and libaio pacakage
> supported by redhat ....
None, libposix-aio used to rely on libaio for the syscalls but that's
no longer the case.
>
> 4) I am able to built that libposix package without
> libaio ??????
Normal.
>
> 5) are these pacakages are supported for othewr
> platforms such as arm and ppc ,I am not able to build
> libposix for arm platform.Do Cross compiling is
> supported ???
>
Right now support is provided for:
i386 - tested
ia64 - not tested
x86_64 - not tested
If you're willing to add support for other platforms there is
only one file to add for implementing the architecture dependant
syscalls, such as syscall_arm.h or syscall_ppc.h. Look at the sources.
>
>
> 6) How to use these api in test program
>
> Can i use it as mentioned below ????
>
> Test1.c
>
> #include <aio.h>
> #include <errno.h>
> #include <stdio.h>
> #include <string.h>
> #include <unistd.h>
>
> #define BYTES 8
>
> int main( int argc, char *argv[] )
> {
> int i, r;
> int fildes;
> struct aiocb cb;
> char buff[BYTES];
>
> if ((fildes = open( "/etc/resolv.conf", O_RDONLY
> )) < 0) {
> perror( "opening file" ); return 1;
> }
>
> cb.aio_fildes = fildes;
> cb.aio_offset = 0;
> cb.aio_buf = buff;
> cb.aio_nbytes = BYTES;
> cb.aio_reqprio = 0;
> cb.aio_sigevent.sigev_notify = SIGEV_NONE;
>
> errno = 0;
> r = aio_read( &cb );
> printf( "aio_read() ret: %i\terrno: %i\n", r,
> errno );
>
> while (aio_error( &cb ) == EINPROGRESS) {
> usleep( 10 ); }
>
> for (i = 0; i < BYTES; i++) { printf( "%c ",
> buff[i] ); } printf(
> "\n" );
>
> errno = 0;
> r = aio_return( &cb );
> printf( "aio_return() ret: %i\tBYTES: %i\terrno:
> %i\n", r, BYTES,
> errno );
>
> return 0;
> }
That should be OK. Look at the examples in libposix-aio, in
the check and testbed subdirectories.
>
>
>
> Any other information, if u can provide then it will
> be of great use ...
>
>
> Thanks in advance ...
>
> Vikas
Hope this helps,
S?bastien.
--
------------------------------------------------------
S?bastien Dugu? BULL/FREC:B1-247
phone: (+33) 476 29 77 70 Bullcom: 229-7770
mailto:[email protected]
Linux POSIX AIO: http://www.bullopensource.org/posix
------------------------------------------------------
hi Sebastein,
Well Thanks For your Reply...
I will Try to Provide support on Arm Platform ...
but while cross building in configure script only i am
getting error i had given follwing option with
configure script
CC=<pathto cross compiler> ./configure --host=<arm
host> --prefix=<build library>
But i am getting errors ...
Can you please look into the matter
Thanks in advance
--- S?bastien Dugu? <[email protected]> wrote:
> Hi Vikas,
>
>
> On Thu, 2005-09-22 at 04:08 +0100, vikas gupta
> wrote:
> > hello ALL ,
> >
> > I am very curious about the AIO support in kernel.
> I
> > have downloaded the
> > recent kernel 2.6.13 and applied suparna's patches
> on
> > that but now i got stuck as
> > now there are two different packages are
> available.
>
> You should try Ben LaHaise's patchset which
> includes
> Suparna's patches. It's available as a single patch
> at:
>
>
http://www.kvack.org/~bcrl/patches/aio-2.6.13-rc6-B1-all.diff
>
>
> and broken down at:
>
http://www.kvack.org/~bcrl/patches/aio-2.6.13-rc6-B1/
>
> >
> > 1) libaio rpm
> >
>
> libaio is meant as a way for using the kernel AIO
> support but
> does not provide a POSIX compliant interface.
>
> > There are many rpm available such as
> > libaio-0.3.xxx-02.src rpm and many
> > more but at http://lse.sourceforge.net/io/aio.html
> > ,Somebody has said to use
> > libaio-0.3.99 package ..
>
> I've been using libaio-0.3.92 with success.
>
> >
> > So can you please give me some guidelines on after
> > applying the patch how
> > to proceed further???
> >
> > Is these packages are part of linux kernel
> > installation ????
> >
> > Is this package implementation is really necessary
> and
> > if yes then what
> > are the packages we need to install.
> >
> > And if any other resource is required then from
> where
> > i can get that
> > resource.
> >
> > 2) libposix API library of
> > http://www.bullopensource.org/posix.
> >
> > How to use it???
> > Is it any other way of implementing the
> AIO
> > Support or it is to
> > provide posix conformance to the kernel.
>
>
> Just like libaio, libposix-aio uses the kernel AIO
> support but
> provides a POSIX compliant interface.
>
> There are no man pages yet, but you can look a the
> SuSV3
> specification (links are on
> http://www.bullopensource.org/posix/).
>
> For completeness, I should add that there is a
> POSIX AIO
> implementation in glibc librt but it uses helper
> threads to achieve
> asynchrony and does not use kernel support.
>
> >
> > 3) What is the relation between libposixaio
> pacakage
> > supported by bullsource.net and libaio pacakage
> > supported by redhat ....
>
> None, libposix-aio used to rely on libaio for the
> syscalls but that's
> no longer the case.
>
> >
> > 4) I am able to built that libposix package
> without
> > libaio ??????
>
> Normal.
>
> >
> > 5) are these pacakages are supported for othewr
> > platforms such as arm and ppc ,I am not able to
> build
> > libposix for arm platform.Do Cross compiling is
> > supported ???
> >
>
> Right now support is provided for:
>
> i386 - tested
> ia64 - not tested
> x86_64 - not tested
>
> If you're willing to add support for other
> platforms there is
> only one file to add for implementing the
> architecture dependant
> syscalls, such as syscall_arm.h or syscall_ppc.h.
> Look at the sources.
>
> >
> >
> > 6) How to use these api in test program
> >
> > Can i use it as mentioned below ????
> >
> > Test1.c
> >
> > #include <aio.h>
> > #include <errno.h>
> > #include <stdio.h>
> > #include <string.h>
> > #include <unistd.h>
> >
> > #define BYTES 8
> >
> > int main( int argc, char *argv[] )
> > {
> > int i, r;
> > int fildes;
> > struct aiocb cb;
> > char buff[BYTES];
> >
> > if ((fildes = open( "/etc/resolv.conf",
> O_RDONLY
> > )) < 0) {
> > perror( "opening file" ); return 1;
> > }
> >
> > cb.aio_fildes = fildes;
> > cb.aio_offset = 0;
> > cb.aio_buf = buff;
> > cb.aio_nbytes = BYTES;
> > cb.aio_reqprio = 0;
> > cb.aio_sigevent.sigev_notify = SIGEV_NONE;
> >
> > errno = 0;
> > r = aio_read( &cb );
> > printf( "aio_read() ret: %i\terrno: %i\n",
> r,
> > errno );
> >
> > while (aio_error( &cb ) == EINPROGRESS) {
> > usleep( 10 ); }
> >
> > for (i = 0; i < BYTES; i++) { printf( "%c ",
> > buff[i] ); } printf(
> > "\n" );
> >
> > errno = 0;
> > r = aio_return( &cb );
> > printf( "aio_return() ret: %i\tBYTES:
> %i\terrno:
> > %i\n", r, BYTES,
> > errno );
> >
> > return 0;
> > }
>
> That should be OK. Look at the examples in
> libposix-aio, in
> the check and testbed subdirectories.
>
>
> >
> >
> >
> > Any other information, if u can provide then it
> will
> > be of great use ...
> >
> >
> > Thanks in advance ...
> >
> > Vikas
>
> Hope this helps,
>
=== message truncated ===
__________________________________________________________
Yahoo! India Matrimony: Find your partner now. Go to http://yahoo.shaadi.com
On Fri, 2005-09-23 at 04:10 +0100, vikas gupta wrote:
> hi Sebastein,
> Well Thanks For your Reply...
> I will Try to Provide support on Arm Platform ...
> but while cross building in configure script only i am
> getting error i had given follwing option with
> configure script
> CC=<pathto cross compiler> ./configure --host=<arm
> host> --prefix=<build library>
>
> But i am getting errors ...
> Can you please look into the matter
>
> Thanks in advance
>
>
Vikas,
could you provide more details on the error you get and
the configure command or send me the config.log.
S?bastien.
--
------------------------------------------------------
S?bastien Dugu? BULL/FREC:B1-247
phone: (+33) 476 29 77 70 Bullcom: 229-7770
mailto:[email protected]
Linux POSIX AIO: http://www.bullopensource.org/posix
------------------------------------------------------
hi Sebastien ,
I am having yet another query related to AIO Support
1)As you mentioned that aio posix support is provided
by glibc also so can you tell me on the performance
basis which one is better (glibc implementation or
libposix implementation ) and how do we measure the
performance
I have compiled glibc with following command
gcc -g $1.c -o $1 -lrt -lpthread
2)What posix features is supported by bare kernel and
libposix implementation, without applying the
patches.I have broken down my query in following
parts
2.1) aio_read/aio_write is supported but what
limitation are there
2.2) aio_fsync is supported or not
2.3) what are the limitation with lio_listio
2.4) what are the additional feature it provides for
aio_cancel implementation
3) Is glibc implementation is providing all the above
mentioned fetures
4) Is there any test program that can measure
efficiency for both glibc and libposix implementation
With Thanks in advance
Vikas
__________________________________________________________
Yahoo! India Matrimony: Find your partner now. Go to http://yahoo.shaadi.com
On Mon, 2005-09-26 at 08:32 +0100, vikas gupta wrote:
> hi Sebastien ,
>
> I am having yet another query related to AIO Support
>
> 1)As you mentioned that aio posix support is provided
> by glibc also so can you tell me on the performance
> basis which one is better (glibc implementation or
> libposix implementation ) and how do we measure the
> performance
Have a look at:
http://www.bullopensource.org/posix/Bench/sysbench-oltp/sysbench.html
for benchmarks using Sysbench and MySQL.
>
> I have compiled glibc with following command
>
> gcc -g $1.c -o $1 -lrt -lpthread
Then you're using glibc AIO implementation based on helper threads
and without taking advantage of kernel support.
>
>
> 2)What posix features is supported by bare kernel and
> libposix implementation, without applying the
> patches.I have broken down my query in following
> parts
Without any of the patches:
>
> 2.1) aio_read/aio_write is supported but what
> limitation are there
Supported but without notification (SIGEV_NONE only).
>
> 2.2) aio_fsync is supported or not
Supported only if the underlying fs implements it
>
> 2.3) what are the limitation with lio_listio
Not supported wihtout the patches.
>
> 2.4) what are the additional feature it provides for
> aio_cancel implementation
>
Needs support from the underlying fs.
>
> 3) Is glibc implementation is providing all the above
> mentioned fetures
Yes, I think so.
>
> 4) Is there any test program that can measure
> efficiency for both glibc and libposix implementation
I personally use Sysbench and have compiled 3 MySQL servers,
one with librt AIO, one with libposix-aio and one with MySQL
native simulated AIO.
You may also try iozone.
>
>
> With Thanks in advance
> Vikas
Hope this helps,
S?bastien.
--
------------------------------------------------------
S?bastien Dugu? BULL/FREC:B1-247
phone: (+33) 476 29 77 70 Bullcom: 229-7770
mailto:[email protected]
Linux POSIX AIO: http://www.bullopensource.org/posix
------------------------------------------------------
hi sebastien,
>
>> Have a look at:
>>
http://www.bullopensource.org/posix/Bench/sysbench->oltp/sysbench.html
>> for benchmarks using Sysbench and MySQL.
I think this link is broken as it is not working ...
Can you please check it ....
>> > 2.1) aio_read/aio_write is supported but what
>> > limitation are there
>>
>> Supported but without notification (SIGEV_NONE
>> only).
Can you please tell whether kernel behaves
asynchronously for read operation without O_DIRECT
MACRO's ???
> > 4) Is there any test program that can measure
> > efficiency for both glibc and libposix
> implementation
>
> I personally use Sysbench and have compiled 3
> MySQL servers,
> one with librt AIO, one with libposix-aio and one
> with MySQL
> native simulated AIO.
>
> You may also try iozone.
Can you please tell which one is better among three
that you have tested
4) Is there any simple procedure to test the above
mentioned library packages ???
WITH THANKS IN ADVANCE
vIKAS
__________________________________________________________
Yahoo! India Matrimony: Find your partner now. Go to http://yahoo.shaadi.com
On Mon, 2005-09-26 at 10:13 +0100, vikas gupta wrote:
> hi sebastien,
>
> >
> >> Have a look at:
> >>
> http://www.bullopensource.org/posix/Bench/sysbench->oltp/sysbench.html
> >> for benchmarks using Sysbench and MySQL.
>
> I think this link is broken as it is not working ...
> Can you please check it ....
It's working but your mail client may have broken down the url.
Start at http://www.bullopensource.org/posix/ and follow the
Sysbench - oltp link under Benchmark results.
>
> >> > 2.1) aio_read/aio_write is supported but what
> >> > limitation are there
> >>
> >> Supported but without notification (SIGEV_NONE
> >> only).
>
> Can you please tell whether kernel behaves
> asynchronously for read operation without O_DIRECT
> MACRO's ???
Without any of the patches you need to use O_DIRECT
and aligned buffers, size and offset.
Buffered AIO is implemented by Suparna's patches.
>
> > > 4) Is there any test program that can measure
> > > efficiency for both glibc and libposix
> > implementation
> >
> > I personally use Sysbench and have compiled 3
> > MySQL servers,
> > one with librt AIO, one with libposix-aio and one
> > with MySQL
> > native simulated AIO.
> >
> > You may also try iozone.
>
> Can you please tell which one is better among three
> that you have tested
It depends on what you want to benchmark. Typically, Sysbench
in oltp mode mimics database use.
>
> 4) Is there any simple procedure to test the above
> mentioned library packages ???
For POSIX conformance, have a look at the Open POSIX
Test Suite at http://posixtest.sourceforge.net/
S?bastien.
--
------------------------------------------------------
S?bastien Dugu? BULL/FREC:B1-247
phone: (+33) 476 29 77 70 Bullcom: 229-7770
mailto:[email protected]
Linux POSIX AIO: http://www.bullopensource.org/posix
------------------------------------------------------
Hi Sebastien
Thanks for Your reply .. I am now trying for that
Sysbench ..
In the mean time i have executed test cases that are
under check folder in libposix package ...
Well I am getting following result ...
----------------------------------------------------
aio_cancel
aio_cancel: cancel error : 11 (Resource temporarily
unavailable)
real 0m0.017s
user 0m0.001s
sys 0m0.002s
aio_cancel_fd
aio_cancel_fd: cancel returned AIO_NOTCANCELED
real 0m0.004s
user 0m0.003s
sys 0m0.002s
aio_fsync
aio_fsync: fsync error 22 (Invalid argument)
real 0m0.003s
user 0m0.001s
sys 0m0.002s
aio_read_one
real 0m0.004s
user 0m0.001s
sys 0m0.003s
aio_read_one_sig
aio_read_one_sig: aio_read error: Invalid argument
real 0m0.003s
user 0m0.001s
sys 0m0.002s
aio_read_one_thread
aio_read_one_thread: aio_read error: Invalid argument
real 0m0.003s
user 0m0.000s
sys 0m0.003s
aio_read_one_thread_id
aio_read_one_thread_id: aio_read error: Invalid
argument
real 0m0.003s
user 0m0.000s
sys 0m0.003s
aio_suspend
aio_suspend: lio_listio failed (Invalid argument)
real 0m0.003s
user 0m0.000s
sys 0m0.003s
aio_suspend_timeout
aio_suspend_timeout: lio_listio failed (Invalid
argument)
real 0m0.003s
user 0m0.000s
sys 0m0.003s
aio_write_one
real 0m0.004s
user 0m0.000s
sys 0m0.004s
aio_write_one_sig
aio_write_one_sig: aio_write error: Invalid argument
real 0m0.003s
user 0m0.001s
sys 0m0.002s
aio_write_one_thread
aio_write_thread: aio_write error: Invalid argument
real 0m0.003s
user 0m0.002s
sys 0m0.002s
aio_write_one_thread_id
aio_write_one_thread_id: aio_write error: Invalid
argument
real 0m0.003s
user 0m0.000s
sys 0m0.003s
lio_listio_nowait
lio_listio_nowait: lio_listio failed: Invalid argument
real 0m0.003s
user 0m0.001s
sys 0m0.002s
lio_listio_wait
lio_listio_wait: lio_listio failed: Invalid argument
real 0m0.003s
user 0m0.001s
sys 0m0.002s
--------------------------------------
Apart from that two test cases aio_read_one_thread_id
and aio_write_one_thread_id are hanging ...
Can You please justify this behaviour ....
As most of the testcases are giving either
error(Invalid Argument ..)
I have also executed same test cases for glibc but
their it is not showing this behaviour ...???
Thanks in advance
__________________________________________________________
Yahoo! India Matrimony: Find your partner now. Go to http://yahoo.shaadi.com
On Mon, 2005-09-26 at 15:06 +0100, vikas gupta wrote:
> Hi Sebastien
>
> Thanks for Your reply .. I am now trying for that
> Sysbench ..
>
> In the mean time i have executed test cases that are
> under check folder in libposix package ...
> Well I am getting following result ...
> ----------------------------------------------------
...
> Apart from that two test cases aio_read_one_thread_id
> and aio_write_one_thread_id are hanging ...
>
> Can You please justify this behaviour ....
> As most of the testcases are giving either
> error(Invalid Argument ..)
These results are normal if you has none of the aio patches
applied.
--
------------------------------------------------------
S?bastien Dugu? BULL/FREC:B1-247
phone: (+33) 476 29 77 70 Bullcom: 229-7770
mailto:[email protected]
Linux POSIX AIO: http://www.bullopensource.org/posix
------------------------------------------------------
HI Sebastien,
Thanks for your Reply
...
As i told you that i am trying to build libposix
package for arm platform,with bare Kernel AIO Support
(without applying patches) and libposix-0.6 package.
When i tried to build the package then while
configuration it is showing Following
Error:
"Checking for default value for max events...
configure: error: cannot
run
test program while cross compiling
See `config.log' for more details."
I traced the configure script for following Error and
got following code that is, I think causing this
Problem:
Code in configure script:
if test "${enable_default_maxevents+set}" = set; then
enableval="$enable_default_maxevents"
ac_aio_default_maxevents=$enableval
else
echo "$as_me:$LINENO: checking for default value for
max events" >&5
echo $ECHO_N "checking for default value for max
events... $ECHO_C" >&6
if test "$cross_compiling" = yes; then
{ { echo "$as_me:$LINENO: error: cannot run test
program while cross
compiling
See \`config.log' for more details." >&5
echo "$as_me: error: cannot run test program while
cross compiling
See \`config.log' for more details." >&2;}
{ (exit 1); exit 1; }; }
else
cat >conftest.$ac_ext <<_ACEOF
Even on x86 it is going into else part but their as
cross compiling is false in that case it goes to
cat > conftest.$ac_ext <<_ACEOF
So With this code while cross compiling we always face
the same problem...
So Can you please tell me how to resolve this
problem...
Thanks in advance...
Vikas
__________________________________________________________
Yahoo! India Matrimony: Find your partner now. Go to http://yahoo.shaadi.com
On Tue, 2005-09-27 at 08:09 +0100, vikas gupta wrote:
> HI Sebastien,
> Thanks for your Reply
> ...
>
> As i told you that i am trying to build libposix
> package for arm platform,with bare Kernel AIO Support
> (without applying patches) and libposix-0.6 package.
>
> When i tried to build the package then while
> configuration it is showing Following
>
> Error:
>
> "Checking for default value for max events...
> configure: error: cannot
> run
> test program while cross compiling
> See `config.log' for more details."
>
> I traced the configure script for following Error and
> got following code that is, I think causing this
> Problem:
>
> Code in configure script:
>
> if test "${enable_default_maxevents+set}" = set; then
> enableval="$enable_default_maxevents"
> ac_aio_default_maxevents=$enableval
> else
> echo "$as_me:$LINENO: checking for default value for
> max events" >&5
> echo $ECHO_N "checking for default value for max
> events... $ECHO_C" >&6
> if test "$cross_compiling" = yes; then
> { { echo "$as_me:$LINENO: error: cannot run test
> program while cross
> compiling
> See \`config.log' for more details." >&5
> echo "$as_me: error: cannot run test program while
> cross compiling
> See \`config.log' for more details." >&2;}
> { (exit 1); exit 1; }; }
> else
> cat >conftest.$ac_ext <<_ACEOF
>
> Even on x86 it is going into else part but their as
> cross compiling is false in that case it goes to
> cat > conftest.$ac_ext <<_ACEOF
>
>
> So With this code while cross compiling we always face
> the same problem...
>
> So Can you please tell me how to resolve this
> problem...
>
> Thanks in advance...
>
> Vikas
>
Ok, then try to disable all the feature with:
./configure --disable-default-maxevents --disable-aio-signal
--disable-lio-signal --disable-lio-wait --disable-cancel-fd
--disable-buffered-aio
that way, the configure script will not try to autodetect
kernel features.
The configure options available may be found with
configure --help
aio_read and aio_write with no event notification should work
provided you implemented the ARM syscall wrappers.
Sebastien.
--
------------------------------------------------------
S?bastien Dugu? BULL/FREC:B1-247
phone: (+33) 476 29 77 70 Bullcom: 229-7770
mailto:[email protected]
Linux POSIX AIO: http://www.bullopensource.org/posix
------------------------------------------------------
hi Sebastien,
Thanks for your Support
well i am able to build for arm platform by removing
all the exit statments from configure script but while
executing on arm board ,i am getting this result log
for libposix-0.6/check :
aio_cancel: cancel error : 1 (Operation not permitted)
aio_cancel_fd: cancel returned AIO_NOTCANCELED
aio_fsync: fsync error 1 (Operation not permitted)
aio_read_one_sig: aio_read error: Invalid argument
aio_read_one_thread: aio_read error: Invalid argument
aio_read_one_thread_id: aio_read error: Invalid
argument
aio_suspend: Cannot create testfile: Invalid argument
aio_suspend_timeout: Cannot create testfile: Invalid
argument
aio_write_one_sig: aio_write error: Invalid argument
aio_write_thread: aio_write error: Invalid argument
aio_write_one_thread_id: aio_write error: Invalid
argument
lio_listio_wait: Cannot open testfile: Invalid
argument
lio_listio_nowait: Cannot open testfile: Invalid
argument
only two test cases ./aio_read_one and ./aio_write_one
is not giving
any
error
Is this justified
Do you think it is correct ,This is with bare
kernel2.6.11 and libposix-0.6 package
2)
> ./configure --disable-default-maxevents
> --disable-aio-signal
> --disable-lio-signal --disable-lio-wait
> --disable-cancel-fd
> --disable-buffered-aio
>
> that way, the configure script will not try to
> autodetect
> kernel features.
>
> The configure options available may be found with
>
> configure --help
>
> aio_read and aio_write with no event notification
> should work
> provided you implemented the ARM syscall wrappers.
I tried this approach but i am getting these errors
Errors :
checking for signal support on AIO completion...
configure: error:
cannot
run test program while cross compiling
See `config.log' for more details.
checking for signal support on LIO completion...
configure: error:
cannot
run test program while cross compiling
Can this be Resolved
Thanks in advance
Vikas
__________________________________________________________
Yahoo! India Matrimony: Find your partner now. Go to http://yahoo.shaadi.com
hi Sebastien,
Thanks for your Support
well i am able to build for arm platform by removing
all the exit statments from configure script but while
executing on arm board ,i am getting this result log
for libposix-0.6/check :
aio_cancel: cancel error : 1 (Operation not permitted)
aio_cancel_fd: cancel returned AIO_NOTCANCELED
aio_fsync: fsync error 1 (Operation not permitted)
aio_read_one_sig: aio_read error: Invalid argument
aio_read_one_thread: aio_read error: Invalid argument
aio_read_one_thread_id: aio_read error: Invalid
argument
aio_suspend: Cannot create testfile: Invalid argument
aio_suspend_timeout: Cannot create testfile: Invalid
argument
aio_write_one_sig: aio_write error: Invalid argument
aio_write_thread: aio_write error: Invalid argument
aio_write_one_thread_id: aio_write error: Invalid
argument
lio_listio_wait: Cannot open testfile: Invalid
argument
lio_listio_nowait: Cannot open testfile: Invalid
argument
only two test cases ./aio_read_one and ./aio_write_one
is not giving
any
error
Is this justified
Do you think it is correct ,This is with bare
kernel2.6.11 and libposix-0.6 package
2)
> ./configure --disable-default-maxevents
> --disable-aio-signal
> --disable-lio-signal --disable-lio-wait
> --disable-cancel-fd
> --disable-buffered-aio
>
> that way, the configure script will not try to
> autodetect
> kernel features.
>
> The configure options available may be found with
>
> configure --help
>
> aio_read and aio_write with no event notification
> should work
> provided you implemented the ARM syscall wrappers.
I tried this approach but i am getting these errors
Errors :
checking for signal support on AIO completion...
configure: error:
cannot
run test program while cross compiling
See `config.log' for more details.
checking for signal support on LIO completion...
configure: error:
cannot
run test program while cross compiling
Can this be Resolved
Thanks in advance
Vikas
__________________________________________________________
Yahoo! India Matrimony: Find your partner now. Go to http://yahoo.shaadi.com
On Wed, 2005-09-28 at 13:58 +0100, vikas gupta wrote:
> hi Sebastien,
>
> Thanks for your Support
> well i am able to build for arm platform by removing
> all the exit statments from configure script but while
> executing on arm board ,i am getting this result log
> for libposix-0.6/check :
>
> aio_cancel: cancel error : 1 (Operation not permitted)
> aio_cancel_fd: cancel returned AIO_NOTCANCELED
> aio_fsync: fsync error 1 (Operation not permitted)
> aio_read_one_sig: aio_read error: Invalid argument
> aio_read_one_thread: aio_read error: Invalid argument
> aio_read_one_thread_id: aio_read error: Invalid
> argument
> aio_suspend: Cannot create testfile: Invalid argument
> aio_suspend_timeout: Cannot create testfile: Invalid
> argument
> aio_write_one_sig: aio_write error: Invalid argument
> aio_write_thread: aio_write error: Invalid argument
> aio_write_one_thread_id: aio_write error: Invalid
> argument
> lio_listio_wait: Cannot open testfile: Invalid
> argument
> lio_listio_nowait: Cannot open testfile: Invalid
> argument
>
> only two test cases ./aio_read_one and ./aio_write_one
> is not giving
> any
> error
>
> Is this justified
> Do you think it is correct ,This is with bare
> kernel2.6.11 and libposix-0.6 package
This is perfectly normal as a vanilla kernel only have
support for aio_read and aio_write without event notification
so only aio_read_one and aio_write_one will pass
> 2)
>
> > ./configure --disable-default-maxevents
> > --disable-aio-signal
> > --disable-lio-signal --disable-lio-wait
> > --disable-cancel-fd
> > --disable-buffered-aio
> >
> > that way, the configure script will not try to
> > autodetect
> > kernel features.
> >
> > The configure options available may be found with
> >
> > configure --help
> >
> > aio_read and aio_write with no event notification
> > should work
> > provided you implemented the ARM syscall wrappers.
>
> I tried this approach but i am getting these errors
>
> Errors :
>
> checking for signal support on AIO completion...
> configure: error:
> cannot
> run test program while cross compiling
> See `config.log' for more details.
> checking for signal support on LIO completion...
> configure: error:
> cannot
> run test program while cross compiling
>
> Can this be Resolved
Strange, if you gave the --disable-aio-signal and
--disable-lio-signal arguments, configure should not even
try to check those features. Send me your resulting
config.log.
S?bastien.
--
------------------------------------------------------
S?bastien Dugu? BULL/FREC:B1-247
phone: (+33) 476 29 77 70 Bullcom: 229-7770
mailto:[email protected]
Linux POSIX AIO: http://www.bullopensource.org/posix
------------------------------------------------------
Hi Sebastein,
Thanks for Replying ....
>
> This is perfectly normal as a vanilla kernel only
> have
> support for aio_read and aio_write without event
> notification
> so only aio_read_one and aio_write_one will pass
1)well Whether these test cases will work after
applying the patches to kernel
2)What all the patches we need to apply in order to
provide full AIO support on kernel 2.6.11
> Strange, if you gave the --disable-aio-signal and
> --disable-lio-signal arguments, configure should not
> even
> try to check those features. Send me your resulting
> config.log.
>
Well Sorry For this ,As my script has broken down
these option ..Again Sorry for this mistake...
Thanks in advance
Vikas
__________________________________________________________
Yahoo! India Matrimony: Find your partner now. Go to http://yahoo.shaadi.com
On Wed, 2005-09-28 at 15:04 +0100, vikas gupta wrote:
> Hi Sebastein,
>
> Thanks for Replying ....
>
> >
> > This is perfectly normal as a vanilla kernel only
> > have
> > support for aio_read and aio_write without event
> > notification
> > so only aio_read_one and aio_write_one will pass
>
> 1)well Whether these test cases will work after
> applying the patches to kernel
The patches will make all the aio_read, aio_write, listio
and aio_suspend tests work. The aio_cancel and aio_fsync
still need support from the underlying fs.
>
> 2)What all the patches we need to apply in order to
> provide full AIO support on kernel 2.6.11
The patches are for the 2.6.10 or 2.6.12 kernel only,
sorry.
S?bastien.
--
------------------------------------------------------
S?bastien Dugu? BULL/FREC:B1-247
phone: (+33) 476 29 77 70 Bullcom: 229-7770
mailto:[email protected]
Linux POSIX AIO: http://www.bullopensource.org/posix
------------------------------------------------------
> The patches are for the 2.6.10 or 2.6.12 kernel
> only,
> sorry.
>
Can we back port these patches to apply on 2.6.11
kernel ... i will try for it.
__________________________________________________________
Yahoo! India Matrimony: Find your partner now. Go to http://yahoo.shaadi.com