Flexible I/O Tester development
 help / color / mirror / Atom feed
From: Jens Axboe <jens.axboe@oracle.com>
To: Radha Ramachandran <radha@google.com>
Cc: fio@vger.kernel.org
Subject: Re: Add extra_buff_count flag
Date: Wed, 4 Nov 2009 21:01:58 +0100	[thread overview]
Message-ID: <20091104200158.GK8742@kernel.dk> (raw)
In-Reply-To: <20091104193622.GJ8742@kernel.dk>

On Wed, Nov 04 2009, Jens Axboe wrote:
> > You also mentioned that you saw some kind of a race on io_u->flags
> > today, do you by any chance know if you were using iodepth_low or
> > iodepth_batch_complete or libaio engine options.
> > I think I see an issue when using them and understand why it happens,
> > but dont have a clean fix yet, will hopefully have one soon. I was
> > wondering if its the same issue you are seeing.
> > Basically the issue is we might think the queue is full (because we
> > cannot allocate any more io_u (they are probably doing async verify)),
> > but the code assumes that if the queue is full, then there is atleast
> > one I/O that we can do "io_getevents" on. And that will cause a hang
> > in the code.
> 
> I didn't use libaio, I can reproduce it with the sync engine directly
> and much easier if using fast "null" verifies. It triggers this assert
> in put_io_u():
> 
>         assert((io_u->flags & IO_U_F_FREE) == 0);
> 
> and this in __get_io_u():
> 
>                 assert(io_u->flags & IO_U_F_FREE);
> 
> The former I think is just a bug, it's likely a reput or something, but
> not sure yet. The latter looks like a race on the flags, since it isn't
> always locked down when manipulated.

I think this is fixed now, committed a patch for it.

-- 
Jens Axboe


  reply	other threads:[~2009-11-04 20:01 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-11-04  0:33 Add extra_buff_count flag Radha Ramachandran
2009-11-04  7:35 ` Jens Axboe
2009-11-04 17:12   ` Radha Ramachandran
2009-11-04 17:29     ` Jens Axboe
2009-11-04 17:39       ` Radha Ramachandran
2009-11-04 17:41         ` Jens Axboe
2009-11-04 19:22           ` Jens Axboe
2009-11-04 19:31             ` Radha Ramachandran
2009-11-04 19:36               ` Jens Axboe
2009-11-04 20:01                 ` Jens Axboe [this message]
2009-11-04 22:50                   ` Radha Ramachandran
2009-11-05  7:32                     ` Jens Axboe

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20091104200158.GK8742@kernel.dk \
    --to=jens.axboe@oracle.com \
    --cc=fio@vger.kernel.org \
    --cc=radha@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox