The Linux Kernel Mailing List
 help / color / mirror / Atom feed
From: "Sébastien Dugué" <sebastien.dugue@bull.net>
To: "linux-aio kvack.org" <linux-aio@kvack.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"suparna@in.ibm.com" <suparna@in.ibm.com>,
	"pbadari@us.ibm.com" <pbadari@us.ibm.com>
Subject: Re: [PATCH] 2.6.10 -  direct-io async short read bug
Date: Tue, 08 Mar 2005 11:16:29 +0100	[thread overview]
Message-ID: <1110276989.14594.27.camel@frecb000686> (raw)

Le mardi 08 mars 2005 à 01:18 -0800, Andrew Morton a écrit :
> Suparna Bhattacharya <suparna@in.ibm.com> wrote:
> >
> > ...
> > 
> > Bugs in this area seem never-ending don't they - plug one, open up
> > another - hard to be confident/verify :( - someday we'll have to
> > rewrite a part of this code.
> 
> It's solving a complex problem.  Any rewrite would probably end up
just as
> hairy once all the new bugs and corner cases are fixed.  Maybe.
> 
> 
> > Hmm, shouldn't dio->result ideally have been adjusted to be within
> > i_size at the time of io submission, so we don't have to deal with
> > this during completion ? We are creating bios with the right size
> > after all. 
> > 
> > We have this: 
> >             if (!buffer_mapped(map_bh)) {
> >                             ....
> >                             if (dio->block_in_file >=
> >
i_size_read(dio->inode)>>blkbits) {
> >                                         /* We hit eof */
> >                                         page_cache_release(page);
> >                                         goto out;
> >                                 }
> > 
> > and
> >             dio->result += iov[seg].iov_len -
> >                         ((dio->final_block_in_request -
dio->block_in_file) <<
> >                                         blkbits);
> > 
> > 
> > can you spot what is going wrong here that we have to try and
> > workaround this later ?
> 
> Good question.  Do we have the i_sem coverage to prevent a concurrent
> truncate?
> 
> But from Sebastien's description it doesn't soound as if a concurrent
> truncate is involved.

Yes, you're right, there's no concurrent truncate here. My test case
as well as Daniel's is single threaded and is the only thread accessing
the file.

Regards,

Sébastien.

-- 
------------------------------------------------------

  Sébastien Dugué                BULL/FREC:B1-247
  phone: (+33) 476 29 77 70      Bullcom: 229-7770

  mailto:sebastien.dugue@bull.net

  Linux POSIX AIO: http://www.bullopensource.org/posix
  
------------------------------------------------------


             reply	other threads:[~2005-03-08 10:17 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-03-08 10:16 Sébastien Dugué [this message]
  -- strict thread matches above, loose matches on Subject: below --
2005-03-08  9:46 [PATCH] 2.6.10 - direct-io async short read bug Sébastien Dugué
2005-03-07 10:00 Sébastien Dugué
2005-03-08  6:39 ` Andrew Morton
2005-03-08  9:09   ` Suparna Bhattacharya
2005-03-08  9:18     ` Andrew Morton
2005-03-08  9:41       ` Suparna Bhattacharya
2005-03-08  9:41         ` Andrew Morton
2005-03-08 10:27           ` Suparna Bhattacharya
2005-03-08 10:27             ` Andrew Morton
2005-03-08 17:23     ` Badari Pulavarty
2005-03-08 19:18       ` Badari Pulavarty
2005-03-08 23:27         ` Daniel McNeil
2005-03-08 23:54           ` Badari Pulavarty
2005-03-09  4:07             ` Joel Becker
2005-03-09  9:50               ` Sébastien Dugué
2005-03-09 15:20               ` Suparna Bhattacharya
2005-03-09 19:53                 ` Andrew Morton
2005-03-09 21:18                   ` Joel Becker
2005-03-09 21:31                   ` Badari Pulavarty
2005-03-09 22:39                     ` Andrew Morton
2005-03-09 22:45                       ` Badari Pulavarty
2005-03-09  1:44         ` Daniel McNeil
2005-03-09 15:58           ` Badari Pulavarty

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=1110276989.14594.27.camel@frecb000686 \
    --to=sebastien.dugue@bull.net \
    --cc=linux-aio@kvack.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pbadari@us.ibm.com \
    --cc=suparna@in.ibm.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