FreeBSD disk AIO support

Igor Sysoev is at rambler-co.ru
Mon Aug 24 01:13:07 MSD 2009


On Sun, Aug 23, 2009 at 10:44:58PM +0400, Вадим wrote:

> Здравствуйте.
> 
> OpenSUSE 11.0 и выше, например.

Поставил openSUSE 11.1.

> uname -r
2.6.27.7-9-default

> /lib/libc.so.6               
GNU C Library stable release version 2.9 (20081117), by Roland McGrath et al.
...

/usr/include/libaio.h:

struct iocb {
        PADDEDptr(void *data, __pad1);  /* Return in the io completion event */
        PADDED(unsigned key, __pad2);   /* For use in identifying io requests */

        short           aio_lio_opcode;
        short           aio_reqprio;
        int             aio_fildes;

        union {
                struct io_iocb_common           c;
...     

struct io_iocb_common {
        PADDEDptr(void  *buf, __pad1);
        PADDEDul(nbytes, __pad2);
        long long       offset;
        long long       __pad3, __pad4;
};      /* result code is the amount read or -'ve errno */


Полей .aio_flags и .aio_resfd в struct iocb нет. Ну и как это собирать ?

> Igor Sysoev пишет:
> >On Sun, Aug 23, 2009 at 11:51:02PM +0600, Nick Knutov wrote:
> >
> >  
> >>А планируется?
> >>    
> >
> >Да, только у меня сейчас нет под рукой Линукса с ядром минимум 2.6.22
> >и glibc 2.7. Есть какой-нибудь дистрибутив, в котором это есть сразу
> >после установки ?
> >
> >  
> >>Igor Sysoev пишет:
> >>    
> >>>Для Линукса, скорее всего, нужно использовать eventfd.


-- 
Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list