All of lore.kernel.org
 help / color / mirror / Atom feed
From: Daniel McNeil <daniel@osdl.org>
To: Andrew Morton <akpm@osdl.org>, Suparna Bhattacharya <suparna@in.ibm.com>
Cc: "linux-aio@kvack.org" <linux-aio@kvack.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: AIO and DIO testing on 2.6.0-test7-mm1
Date: 17 Oct 2003 16:12:58 -0700	[thread overview]
Message-ID: <1066432378.2133.40.camel@ibm-c.pdx.osdl.net> (raw)

I've been doing some testing on 2.6.0-test7-mm1 with O_DIRECT and
AIO.  I wrote some tests to check the buffered i/o verses O_DIRECT
i/o races and O_DIRECT verses truncate.

I still had apply suparna's direct-io.c patch to prevent oopses.
Suparna, you said the patch was not the complete patch, do you have
the complete patch?

I wrote some simple tests to create 2 processes with one doing
O_DIRECT i/o (of zeros) and the other doing buffered i/o and checking
that the buffered i/o process never saw non-zero data which was
posssible before the i_alloc_sem and other changes.  The test I
wrote are:
	dio_append - use O_DIRECT to append while doing buffered reads
 	dio_sparse - write O_DIRECT to holes while doing buffered reads
	dio_truncate - do O_DIRECT reads while truncating
	aiodio_append - same as dio_append but with AIO
	aiodio_sparse - same as dio_sparse but with AIO

These and a simple README are available here
	http://developer.osdl.org/daniel/AIO/TESTS/

The good news was I  never got any non-zero data or oops on test7-mm1
(with the direct-io patch).

Unfortunately, when I ran these on test7, I also did not get any
non-zero data.  On AIO test7 still gives me oopses:

Slab corruption: start=e7d9573c, expend=e7d957db, problemat=e7d95774
Last user: [<c018b612>](__aio_put_req+0x97/0x185)
Data: ********************************************************00 00 89 02 00 00
00 00 ***********************************************************************************************A5
Next: 71 F0 2C .12 B6 18 C0 71 F0 2C .********************
slab error in check_poison_obj(): cache `kiocb': object was modified after freeing
Call Trace:
 [<c0148c95>] check_poison_obj+0x106/0x18f
 [<c0148ed4>] slab_destroy+0x1b6/0x1be
 [<c014bf2f>] reap_timer_fnc+0x254/0x326
 [<c014bcdb>] reap_timer_fnc+0x0/0x326
 [<c012d80d>] run_timer_softirq+0xed/0x226
 [<c0128dcd>] do_softirq+0xc9/0xcb
 [<c011a165>] smp_apic_timer_interrupt+0xcd/0x135
 [<c0108029>] default_idle+0x0/0x32
 [<c010b0b6>] apic_timer_interrupt+0x1a/0x20
 [<c0108029>] default_idle+0x0/0x32
 [<c0108056>] default_idle+0x2d/0x32
 [<c01080d4>] cpu_idle+0x3a/0x43
 [<c0125050>] printk+0x1b4/0x258


I guess this expected because it does not have the ref counting and
other AIO fixes.

I'm planning on doing more testing and write some AIO verses truncate
tests.

If you have any ideas on how to better test the AIO and O_DIRET changes
in -mm, just let me know.

Daniel


             reply	other threads:[~2003-10-17 23:13 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-10-17 23:12 Daniel McNeil [this message]
2003-10-18  0:24 ` AIO and DIO testing on 2.6.0-test7-mm1 Andrew Morton
2003-10-20 14:27 ` Suparna Bhattacharya
2003-10-20 23:47   ` Daniel McNeil
2003-10-21 12:11     ` Patch for Retry based AIO-DIO (Was AIO and DIO testing on 2.6.0-test7-mm1) Suparna Bhattacharya
2003-10-23  0:40       ` Daniel McNeil
2003-10-23 10:49         ` Suparna Bhattacharya
2003-10-23 13:50           ` Suparna Bhattacharya
2003-10-23 22:59             ` Andrew Morton
2003-10-23 23:20               ` Patch for Retry based AIO-DIO (Was AIO and DIO testing on2.6.0-test7-mm1) Adrian Bunk
2003-10-23 23:25                 ` Andrew Morton
2003-10-23 23:37                   ` Patch for Retry based AIO-DIO (Was AIO and DIO testingon2.6.0-test7-mm1) Adrian Bunk
2003-10-23 23:46                     ` Andrew Morton
2003-10-24  0:34                       ` Patch for Retry based AIO-DIO (Was AIO and DIOtestingon2.6.0-test7-mm1) Adrian Bunk
2003-10-26 11:57                       ` Adrian Bunk
2003-10-26 12:08                         ` Russell King
2003-10-26 12:17                           ` Adrian Bunk
2003-10-26 13:00                             ` Russell King
2003-10-23 23:22               ` Patch for Retry based AIO-DIO (Was AIO and DIO testing on 2.6.0-test7-mm1) Dan Kegel

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=1066432378.2133.40.camel@ibm-c.pdx.osdl.net \
    --to=daniel@osdl.org \
    --cc=akpm@osdl.org \
    --cc=linux-aio@kvack.org \
    --cc=linux-kernel@vger.kernel.org \
    --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 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.