All of lore.kernel.org
 help / color / mirror / Atom feed
* Anyone doing async I/O on FreeBSD?
@ 2012-10-24 21:45 Tom Blamer
  2012-10-25  8:20 ` Jens Axboe
  0 siblings, 1 reply; 5+ messages in thread
From: Tom Blamer @ 2012-10-24 21:45 UTC (permalink / raw)
  To: fio

On a clean install of 9.0-RELEASE, fio-2.0.10 built from source, any
job with posixaio fails with a "Function not implemented" error (see
below).

It looks like the ports collection contains some kind of emulation
tool for libaio (linux-libaio), should I be looking into that?

bsdserv1# cat doit.job
[doit]
thread
ioengine=posixaio
iodepth=2
size=16M
nrfiles=1
rw=rw
rwmixread=90

bsdserv1# fio doit.job
doit: (g=0): rw=rw, bs=4K-4K/4K-4K/4K-4K, ioengine=posixaio, iodepth=2
fio-2.0.10
Starting 1 thread
fio: pid=100082, err=78/file:engines/posixaio.c:198, func=xfer,
error=Function not implemented

doit: (groupid=0, jobs=1): err=78 (file:engines/posixaio.c:198,
func=xfer, error=Function not implemented): pid=100082: Wed Oct 24
16:27:05 2012
  cpu          : usr=0.00%, sys=0.00%, ctx=0, majf=0, minf=5
  IO depths    : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=50.0%, 4=50.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     issued    : total=r=0/w=1/d=0, short=r=0/w=0/d=0

Run status group 0 (all jobs):
bsdserv1#

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Anyone doing async I/O on FreeBSD?
  2012-10-24 21:45 Anyone doing async I/O on FreeBSD? Tom Blamer
@ 2012-10-25  8:20 ` Jens Axboe
  2012-10-25 10:58   ` Bruce Cran
  0 siblings, 1 reply; 5+ messages in thread
From: Jens Axboe @ 2012-10-25  8:20 UTC (permalink / raw)
  To: Tom Blamer; +Cc: fio

On 2012-10-24 23:45, Tom Blamer wrote:
> On a clean install of 9.0-RELEASE, fio-2.0.10 built from source, any
> job with posixaio fails with a "Function not implemented" error (see
> below).
> 
> It looks like the ports collection contains some kind of emulation
> tool for libaio (linux-libaio), should I be looking into that?
> 
> bsdserv1# cat doit.job
> [doit]
> thread
> ioengine=posixaio
> iodepth=2
> size=16M
> nrfiles=1
> rw=rw
> rwmixread=90
> 
> bsdserv1# fio doit.job
> doit: (g=0): rw=rw, bs=4K-4K/4K-4K/4K-4K, ioengine=posixaio, iodepth=2
> fio-2.0.10
> Starting 1 thread
> fio: pid=100082, err=78/file:engines/posixaio.c:198, func=xfer,
> error=Function not implemented

That's aio_read or aio_write returning -1/ENOSYS, which means that it's
not implemented. From a quick google, on FreeBSD, it seems you need to
have a kernel compiled with VFS_AIO enabled. Not sure why that isn't the
default...

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Anyone doing async I/O on FreeBSD?
  2012-10-25  8:20 ` Jens Axboe
@ 2012-10-25 10:58   ` Bruce Cran
  2012-10-25 12:30     ` Jens Axboe
  0 siblings, 1 reply; 5+ messages in thread
From: Bruce Cran @ 2012-10-25 10:58 UTC (permalink / raw)
  To: Jens Axboe; +Cc: Tom Blamer, fio


On 25 Oct 2012, at 09:20, Jens Axboe <axboe@kernel.dk> wrote:

> That's aio_read or aio_write returning -1/ENOSYS, which means that it's
> not implemented. From a quick google, on FreeBSD, it seems you need to
> have a kernel compiled with VFS_AIO enabled. Not sure why that isn't the
> default…


There was a discussion about it a few months ago - http://freebsd.1045724.n5.nabble.com/aio-in-GENERIC-td5727900.html .
For now you need to 'kldload aio'.

-- 
Bruce Cran

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Anyone doing async I/O on FreeBSD?
  2012-10-25 10:58   ` Bruce Cran
@ 2012-10-25 12:30     ` Jens Axboe
  2012-10-25 21:43       ` Tom Blamer
  0 siblings, 1 reply; 5+ messages in thread
From: Jens Axboe @ 2012-10-25 12:30 UTC (permalink / raw)
  To: Bruce Cran; +Cc: Tom Blamer, fio

On 2012-10-25 12:58, Bruce Cran wrote:
> 
> On 25 Oct 2012, at 09:20, Jens Axboe <axboe@kernel.dk> wrote:
> 
>> That's aio_read or aio_write returning -1/ENOSYS, which means that it's
>> not implemented. From a quick google, on FreeBSD, it seems you need to
>> have a kernel compiled with VFS_AIO enabled. Not sure why that isn't the
>> default�
> 
> 
> There was a discussion about it a few months ago - http://freebsd.1045724.n5.nabble.com/aio-in-GENERIC-td5727900.html .
> For now you need to 'kldload aio'.

Thanks Bruce, helps with somebody from the camp :-)

"Someone" should collect all these questions and turn them into an
FAQ...

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Anyone doing async I/O on FreeBSD?
  2012-10-25 12:30     ` Jens Axboe
@ 2012-10-25 21:43       ` Tom Blamer
  0 siblings, 0 replies; 5+ messages in thread
From: Tom Blamer @ 2012-10-25 21:43 UTC (permalink / raw)
  To: Jens Axboe; +Cc: Bruce Cran, fio

On Thu, Oct 25, 2012 at 7:30 AM, Jens Axboe <axboe@kernel.dk> wrote:
> On 2012-10-25 12:58, Bruce Cran wrote:
>>
>> On 25 Oct 2012, at 09:20, Jens Axboe <axboe@kernel.dk> wrote:
>>
>>> That's aio_read or aio_write returning -1/ENOSYS, which means that it's
>>> not implemented. From a quick google, on FreeBSD, it seems you need to
>>> have a kernel compiled with VFS_AIO enabled. Not sure why that isn't the
>>> default…
>>
>>
>> There was a discussion about it a few months ago - http://freebsd.1045724.n5.nabble.com/aio-in-GENERIC-td5727900.html .
>> For now you need to 'kldload aio'.
>
> Thanks Bruce, helps with somebody from the camp :-)
>
> "Someone" should collect all these questions and turn them into an
> FAQ...
>
> --
> Jens Axboe
>

Thanks for the quick responses. I tried 'kldload aio' and that worked
for me. Shows how much I know...


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2012-10-25 21:43 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-10-24 21:45 Anyone doing async I/O on FreeBSD? Tom Blamer
2012-10-25  8:20 ` Jens Axboe
2012-10-25 10:58   ` Bruce Cran
2012-10-25 12:30     ` Jens Axboe
2012-10-25 21:43       ` Tom Blamer

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.