public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
* why xfs_write() race with O_DIRECT only?
@ 2009-03-28  1:10 Curtis Doty
  2009-04-02 23:48 ` Curtis Doty
  2009-04-06 17:38 ` Christoph Hellwig
  0 siblings, 2 replies; 3+ messages in thread
From: Curtis Doty @ 2009-03-28  1:10 UTC (permalink / raw)
  To: XFS

I'm guessing this is the race fixed in 2.6.29.
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=25051158

But my app is running O_DIRECT and only calls pwrite(). Is there
something I'm missing that explains the aio stuff etc.?

../C

------------[ cut here ]------------
WARNING: at fs/xfs/linux-2.6/xfs_lrw.c:724 xfs_write+0x364/0x694()
Modules linked in: dm_mod sg usbhid usbkbd usbmouse qla2xxx
firmware_class scsi_transport_fc bnx2 hpilo ipmi_si ipmi_msghandler
container shpchp pci_hotplug rng_core iTCO_wdt iTCO_vendor_support
thermal button processor rtc_cmos rtc_core rtc_lib ehci_hcd uhci_hcd usbcore
Pid: 5789, comm: myServer Not tainted 2.6.28.9 #1
Call Trace:
 [<c0122d30>] warn_on_slowpath+0x41/0x5b
 [<c014f27b>] ? mempool_alloc+0x21/0xbc
 [<c0217d2c>] ? xfs_vm_direct_IO+0x90/0xb4
 [<c021800f>] ? xfs_get_blocks_direct+0x0/0x14
 [<c021754b>] ? xfs_end_io_direct+0x0/0x5c
 [<c014dde5>] ? generic_file_direct_write+0x184/0x1dc
 [<c0210409>] ? xfs_trans_unlocked_item+0x28/0x3e
 [<c021e034>] xfs_write+0x364/0x694
 [<c0107a21>] ? read_tsc+0x9/0x26
 [<c0136c67>] ? getnstimeofday+0x54/0xe4
 [<c021ae6b>] xfs_file_aio_write+0x50/0x58
 [<c016ba9d>] do_sync_write+0xab/0xe6
 [<c01322be>] ? autoremove_wake_function+0x0/0x33
 [<c03874b8>] ? schedule+0x737/0x785
 [<c0107a21>] ? read_tsc+0x9/0x26
 [<c016b9f2>] ? do_sync_write+0x0/0xe6
 [<c016c177>] vfs_write+0x8c/0x108
 [<c016c6a4>] sys_pwrite64+0x45/0x60
 [<c0102be5>] sysenter_do_call+0x12/0x21
 [<c0380000>] ? hpwdt_init_one+0x103/0x38d
---[ end trace 3985be2a3d46f5ef ]---

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

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

* Re: why xfs_write() race with O_DIRECT only?
  2009-03-28  1:10 why xfs_write() race with O_DIRECT only? Curtis Doty
@ 2009-04-02 23:48 ` Curtis Doty
  2009-04-06 17:38 ` Christoph Hellwig
  1 sibling, 0 replies; 3+ messages in thread
From: Curtis Doty @ 2009-04-02 23:48 UTC (permalink / raw)
  To: XFS

Mar 27 Curtis Doty said:

> I'm guessing this is the race fixed in 2.6.29.
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=25051158
>
> But my app is running O_DIRECT and only calls pwrite(). Is there
> something I'm missing that explains the aio stuff etc.?
>
> ------------[ cut here ]------------
> WARNING: at fs/xfs/linux-2.6/xfs_lrw.c:724 xfs_write+0x364/0x694()
> Modules linked in: dm_mod sg usbhid usbkbd usbmouse qla2xxx
> firmware_class scsi_transport_fc bnx2 hpilo ipmi_si ipmi_msghandler
> container shpchp pci_hotplug rng_core iTCO_wdt iTCO_vendor_support
> thermal button processor rtc_cmos rtc_core rtc_lib ehci_hcd uhci_hcd usbcore
> Pid: 5789, comm: myServer Not tainted 2.6.28.9 #1
>

No luck with 2.6.29. It's still occuring.

------------[ cut here ]------------
WARNING: at fs/xfs/linux-2.6/xfs_lrw.c:715 xfs_write+0x34b/0x67e()
Hardware name: ProLiant DL360 G5
Modules linked in: dm_mod sg usbhid usbkbd usbmouse qla2xxx firmware_class 
scsi_transport_fc ipmi_si ipmi_msghandler hpilo bnx2 container thermal 
button processor ehci_hcd rtc_cmos rng_core rtc_core shpchp rtc_lib 
iTCO_wdt pci_hotplug iTCO_vendor_support uhci_hcd usbcore
Pid: 5681, comm: diskServer Not tainted 2.6.29 #1
Call Trace:
  [<c0124fed>] warn_slowpath+0x74/0x8a
  [<c015d61f>] ? __pagevec_release+0x18/0x21
  [<c015d8b4>] ? invalidate_inode_pages2_range+0x1c4/0x20c
  [<c021ec00>] ? __xfs_get_blocks+0x179/0x239
  [<c021e152>] ? xfs_end_io_direct+0x0/0x66
  [<c01570ff>] ? generic_file_direct_write+0xfe/0x1dc
  [<c0217de3>] ? xfs_trans_unlocked_item+0x2a/0x41
  [<c0224ce6>] xfs_write+0x34b/0x67e
  [<c011e27d>] ? default_wake_function+0xb/0xd
  [<c0119a5c>] ? __wake_up_common+0x2f/0x5a
  [<c013de20>] ? wake_futex+0x22/0x2f
  [<c02219bd>] xfs_file_aio_write+0x5b/0x63
  [<c0175bde>] do_sync_write+0xab/0xe6
  [<c01344d2>] ? autoremove_wake_function+0x0/0x33
  [<c0175b33>] ? do_sync_write+0x0/0xe6
  [<c017623b>] vfs_write+0x8c/0x108
  [<c01767f9>] sys_pwrite64+0x45/0x60
  [<c0102c41>] sysenter_do_call+0x12/0x21
  [<c0390000>] ? mxcsr_feature_mask_init+0xe/0x47
---[ end trace f75be9e7e7f9aa47 ]---

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

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

* Re: why xfs_write() race with O_DIRECT only?
  2009-03-28  1:10 why xfs_write() race with O_DIRECT only? Curtis Doty
  2009-04-02 23:48 ` Curtis Doty
@ 2009-04-06 17:38 ` Christoph Hellwig
  1 sibling, 0 replies; 3+ messages in thread
From: Christoph Hellwig @ 2009-04-06 17:38 UTC (permalink / raw)
  To: Curtis Doty; +Cc: XFS

On Fri, Mar 27, 2009 at 06:10:42PM -0700, Curtis Doty wrote:
> I'm guessing this is the race fixed in 2.6.29.
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=25051158
> 
> But my app is running O_DIRECT and only calls pwrite(). Is there
> something I'm missing that explains the aio stuff etc.?

The aboe patch only matters when using dmapi.  Can you send a simple
sample program or other kind of testcases that reproduces the bug that
you see?

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

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

end of thread, other threads:[~2009-04-06 17:39 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-28  1:10 why xfs_write() race with O_DIRECT only? Curtis Doty
2009-04-02 23:48 ` Curtis Doty
2009-04-06 17:38 ` Christoph Hellwig

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox