Re: AIO Support and related package information??

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux