From: Tao Ma <tao.ma@oracle.com>
To: Jeff Moyer <jmoyer@redhat.com>
Cc: axboe@kernel.dk, linux-ext4@vger.kernel.org,
"ocfs2-devel@oss.oracle.com" <ocfs2-devel@oss.oracle.com>,
linux-kernel@vger.kernel.org, vgoyal@redhat.com
Subject: Re: [PATCH 0/3 v5][RFC] ext3/4: enhance fsync performance when using CFQ
Date: Tue, 29 Jun 2010 07:16:10 +0800 [thread overview]
Message-ID: <4C292D3A.5000208@oracle.com> (raw)
In-Reply-To: <x49hbknfeck.fsf@segfault.boston.devel.redhat.com>
[-- Attachment #1: Type: text/plain, Size: 632 bytes --]
Jeff Moyer wrote:
> Tao Ma <tao.ma@oracle.com> writes:
>
>
>> btw, I also met with a NULL pointer deference in cfq_yield. I have
>> attached the null.log also. This seems to be related to the previous
>> deadlock and happens when I try to remount the same volume after
>> reboot and ocfs2 try to do some recovery.
>>
>
> Since I can't reproduce your binary kernel even with your .config, could
> you send me the disassembly of the cfq_yield function from your vmlinux
> binary?
>
no problem. I have attached it.
btw, if you have any debug patch, I am happy to run it to make the
problem more clear to you.
Regards,
Tao
[-- Attachment #2: cfq_yield.txt --]
[-- Type: text/plain, Size: 5069 bytes --]
ffffffff821614d8 <cfq_yield>:
ffffffff821614d8: 41 56 push %r14
ffffffff821614da: 41 55 push %r13
ffffffff821614dc: 49 89 fd mov %rdi,%r13
ffffffff821614df: 41 54 push %r12
ffffffff821614e1: 55 push %rbp
ffffffff821614e2: 48 89 f5 mov %rsi,%rbp
ffffffff821614e5: 53 push %rbx
ffffffff821614e6: 48 8b 47 18 mov 0x18(%rdi),%rax
ffffffff821614ea: 4c 8b 60 08 mov 0x8(%rax),%r12
ffffffff821614ee: 65 48 8b 04 25 40 b5 mov %gs:0xb540,%rax
ffffffff821614f5: 00 00
ffffffff821614f7: 48 8b b0 00 06 00 00 mov 0x600(%rax),%rsi
ffffffff821614fe: 4c 89 e7 mov %r12,%rdi
ffffffff82161501: e8 90 eb ff ff callq ffffffff82160096 <cfq_cic_lookup>
ffffffff82161506: 48 85 c0 test %rax,%rax
ffffffff82161509: 48 89 c3 mov %rax,%rbx
ffffffff8216150c: 0f 84 f2 00 00 00 je ffffffff82161604 <cfq_yield+0x12c>
ffffffff82161512: 48 8d bd a0 05 00 00 lea 0x5a0(%rbp),%rdi
ffffffff82161519: e8 ab ba 19 00 callq ffffffff822fcfc9 <_raw_spin_lock>
ffffffff8216151e: 48 8b b5 00 06 00 00 mov 0x600(%rbp),%rsi
ffffffff82161525: 4c 89 e7 mov %r12,%rdi
ffffffff82161528: e8 69 eb ff ff callq ffffffff82160096 <cfq_cic_lookup>
ffffffff8216152d: 49 89 c6 mov %rax,%r14
ffffffff82161530: 48 8b 85 00 06 00 00 mov 0x600(%rbp),%rax
ffffffff82161537: f0 48 ff 00 lock incq (%rax)
ffffffff8216153b: fe 85 a0 05 00 00 incb 0x5a0(%rbp)
ffffffff82161541: 4d 85 f6 test %r14,%r14
ffffffff82161544: 0f 84 a6 00 00 00 je ffffffff821615f0 <cfq_yield+0x118>
ffffffff8216154a: 49 8b bd 48 03 00 00 mov 0x348(%r13),%rdi
ffffffff82161551: e8 a0 ba 19 00 callq ffffffff822fcff6 <_raw_spin_lock_irq>
ffffffff82161556: 48 8b 5b 10 mov 0x10(%rbx),%rbx
ffffffff8216155a: 48 85 db test %rbx,%rbx
ffffffff8216155d: 0f 84 83 00 00 00 je ffffffff821615e6 <cfq_yield+0x10e>
ffffffff82161563: 49 39 9c 24 68 03 00 cmp %rbx,0x368(%r12)
ffffffff8216156a: 00
ffffffff8216156b: 75 41 jne ffffffff821615ae <cfq_yield+0xd6>
ffffffff8216156d: 41 83 bc 24 54 02 00 cmpl $0x1,0x254(%r12)
ffffffff82161574: 00 01
ffffffff82161576: 75 36 jne ffffffff821615ae <cfq_yield+0xd6>
ffffffff82161578: 48 8b 83 d0 00 00 00 mov 0xd0(%rbx),%rax
ffffffff8216157f: 8b 70 38 mov 0x38(%rax),%esi
ffffffff82161582: 83 fe ff cmp $0xffffffffffffffff,%esi
ffffffff82161585: 74 27 je ffffffff821615ae <cfq_yield+0xd6>
ffffffff82161587: 48 8b 48 30 mov 0x30(%rax),%rcx
ffffffff8216158b: 48 85 c9 test %rcx,%rcx
ffffffff8216158e: 74 1e je ffffffff821615ae <cfq_yield+0xd6>
ffffffff82161590: 48 63 05 4d f2 5d 00 movslq 6156877(%rip),%rax # ffffffff827407e4 <cfq_slice_idle>
ffffffff82161597: 48 8b 15 e2 42 63 00 mov 6505186(%rip),%rdx # ffffffff82795880 <jiffies>
ffffffff8216159e: 48 01 c8 add %rcx,%rax
ffffffff821615a1: 48 39 d0 cmp %rdx,%rax
ffffffff821615a4: 79 08 jns ffffffff821615ae <cfq_yield+0xd6>
ffffffff821615a6: 3b b3 c0 00 00 00 cmp 0xc0(%rbx),%esi
ffffffff821615ac: 75 38 jne ffffffff821615e6 <cfq_yield+0x10e>
ffffffff821615ae: 49 8b 04 24 mov (%r12),%rax
ffffffff821615b2: 48 8b b8 80 04 00 00 mov 0x480(%rax),%rdi
ffffffff821615b9: 48 85 ff test %rdi,%rdi
ffffffff821615bc: 74 1a je ffffffff821615d8 <cfq_yield+0x100>
ffffffff821615be: 8b 8d 68 02 00 00 mov 0x268(%rbp),%ecx
ffffffff821615c4: 8b 93 c0 00 00 00 mov 0xc0(%rbx),%edx
ffffffff821615ca: 48 c7 c6 1d 8c 55 82 mov $0xffffffff82558c1d,%rsi
ffffffff821615d1: 31 c0 xor %eax,%eax
ffffffff821615d3: e8 a1 07 f2 ff callq ffffffff82081d79 <__trace_note_message>
ffffffff821615d8: 81 4b 04 00 20 00 00 orl $0x2000,0x4(%rbx)
ffffffff821615df: 4c 89 b3 f0 00 00 00 mov %r14,0xf0(%rbx)
ffffffff821615e6: 49 8b 85 48 03 00 00 mov 0x348(%r13),%rax
ffffffff821615ed: fe 00 incb (%rax)
ffffffff821615ef: fb sti
ffffffff821615f0: 5b pop %rbx
ffffffff821615f1: 48 8b bd 00 06 00 00 mov 0x600(%rbp),%rdi
ffffffff821615f8: 5d pop %rbp
ffffffff821615f9: 41 5c pop %r12
ffffffff821615fb: 41 5d pop %r13
ffffffff821615fd: 41 5e pop %r14
ffffffff821615ff: e9 51 8b ff ff jmpq ffffffff8215a155 <put_io_context>
ffffffff82161604: 5b pop %rbx
ffffffff82161605: 5d pop %rbp
ffffffff82161606: 41 5c pop %r12
ffffffff82161608: 41 5d pop %r13
ffffffff8216160a: 41 5e pop %r14
ffffffff8216160c: c3 retq
[-- Attachment #3: Type: text/plain, Size: 150 bytes --]
_______________________________________________
Ocfs2-devel mailing list
Ocfs2-devel@oss.oracle.com
http://oss.oracle.com/mailman/listinfo/ocfs2-devel
WARNING: multiple messages have this Message-ID (diff)
From: Tao Ma <tao.ma@oracle.com>
To: Jeff Moyer <jmoyer@redhat.com>
Cc: axboe@kernel.dk, linux-ext4@vger.kernel.org,
"ocfs2-devel@oss.oracle.com" <ocfs2-devel@oss.oracle.com>,
linux-kernel@vger.kernel.org, vgoyal@redhat.com
Subject: [Ocfs2-devel] [PATCH 0/3 v5][RFC] ext3/4: enhance fsync performance when using CFQ
Date: Tue, 29 Jun 2010 07:16:10 +0800 [thread overview]
Message-ID: <4C292D3A.5000208@oracle.com> (raw)
In-Reply-To: <x49hbknfeck.fsf@segfault.boston.devel.redhat.com>
Jeff Moyer wrote:
> Tao Ma <tao.ma@oracle.com> writes:
>
>
>> btw, I also met with a NULL pointer deference in cfq_yield. I have
>> attached the null.log also. This seems to be related to the previous
>> deadlock and happens when I try to remount the same volume after
>> reboot and ocfs2 try to do some recovery.
>>
>
> Since I can't reproduce your binary kernel even with your .config, could
> you send me the disassembly of the cfq_yield function from your vmlinux
> binary?
>
no problem. I have attached it.
btw, if you have any debug patch, I am happy to run it to make the
problem more clear to you.
Regards,
Tao
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: cfq_yield.txt
Url: http://oss.oracle.com/pipermail/ocfs2-devel/attachments/20100629/d0590f1f/attachment.txt
WARNING: multiple messages have this Message-ID (diff)
From: Tao Ma <tao.ma@oracle.com>
To: Jeff Moyer <jmoyer@redhat.com>
Cc: axboe@kernel.dk, vgoyal@redhat.com, linux-kernel@vger.kernel.org,
linux-ext4@vger.kernel.org,
"ocfs2-devel@oss.oracle.com" <ocfs2-devel@oss.oracle.com>
Subject: Re: [PATCH 0/3 v5][RFC] ext3/4: enhance fsync performance when using CFQ
Date: Tue, 29 Jun 2010 07:16:10 +0800 [thread overview]
Message-ID: <4C292D3A.5000208@oracle.com> (raw)
In-Reply-To: <x49hbknfeck.fsf@segfault.boston.devel.redhat.com>
[-- Attachment #1: Type: text/plain, Size: 632 bytes --]
Jeff Moyer wrote:
> Tao Ma <tao.ma@oracle.com> writes:
>
>
>> btw, I also met with a NULL pointer deference in cfq_yield. I have
>> attached the null.log also. This seems to be related to the previous
>> deadlock and happens when I try to remount the same volume after
>> reboot and ocfs2 try to do some recovery.
>>
>
> Since I can't reproduce your binary kernel even with your .config, could
> you send me the disassembly of the cfq_yield function from your vmlinux
> binary?
>
no problem. I have attached it.
btw, if you have any debug patch, I am happy to run it to make the
problem more clear to you.
Regards,
Tao
[-- Attachment #2: cfq_yield.txt --]
[-- Type: text/plain, Size: 5069 bytes --]
ffffffff821614d8 <cfq_yield>:
ffffffff821614d8: 41 56 push %r14
ffffffff821614da: 41 55 push %r13
ffffffff821614dc: 49 89 fd mov %rdi,%r13
ffffffff821614df: 41 54 push %r12
ffffffff821614e1: 55 push %rbp
ffffffff821614e2: 48 89 f5 mov %rsi,%rbp
ffffffff821614e5: 53 push %rbx
ffffffff821614e6: 48 8b 47 18 mov 0x18(%rdi),%rax
ffffffff821614ea: 4c 8b 60 08 mov 0x8(%rax),%r12
ffffffff821614ee: 65 48 8b 04 25 40 b5 mov %gs:0xb540,%rax
ffffffff821614f5: 00 00
ffffffff821614f7: 48 8b b0 00 06 00 00 mov 0x600(%rax),%rsi
ffffffff821614fe: 4c 89 e7 mov %r12,%rdi
ffffffff82161501: e8 90 eb ff ff callq ffffffff82160096 <cfq_cic_lookup>
ffffffff82161506: 48 85 c0 test %rax,%rax
ffffffff82161509: 48 89 c3 mov %rax,%rbx
ffffffff8216150c: 0f 84 f2 00 00 00 je ffffffff82161604 <cfq_yield+0x12c>
ffffffff82161512: 48 8d bd a0 05 00 00 lea 0x5a0(%rbp),%rdi
ffffffff82161519: e8 ab ba 19 00 callq ffffffff822fcfc9 <_raw_spin_lock>
ffffffff8216151e: 48 8b b5 00 06 00 00 mov 0x600(%rbp),%rsi
ffffffff82161525: 4c 89 e7 mov %r12,%rdi
ffffffff82161528: e8 69 eb ff ff callq ffffffff82160096 <cfq_cic_lookup>
ffffffff8216152d: 49 89 c6 mov %rax,%r14
ffffffff82161530: 48 8b 85 00 06 00 00 mov 0x600(%rbp),%rax
ffffffff82161537: f0 48 ff 00 lock incq (%rax)
ffffffff8216153b: fe 85 a0 05 00 00 incb 0x5a0(%rbp)
ffffffff82161541: 4d 85 f6 test %r14,%r14
ffffffff82161544: 0f 84 a6 00 00 00 je ffffffff821615f0 <cfq_yield+0x118>
ffffffff8216154a: 49 8b bd 48 03 00 00 mov 0x348(%r13),%rdi
ffffffff82161551: e8 a0 ba 19 00 callq ffffffff822fcff6 <_raw_spin_lock_irq>
ffffffff82161556: 48 8b 5b 10 mov 0x10(%rbx),%rbx
ffffffff8216155a: 48 85 db test %rbx,%rbx
ffffffff8216155d: 0f 84 83 00 00 00 je ffffffff821615e6 <cfq_yield+0x10e>
ffffffff82161563: 49 39 9c 24 68 03 00 cmp %rbx,0x368(%r12)
ffffffff8216156a: 00
ffffffff8216156b: 75 41 jne ffffffff821615ae <cfq_yield+0xd6>
ffffffff8216156d: 41 83 bc 24 54 02 00 cmpl $0x1,0x254(%r12)
ffffffff82161574: 00 01
ffffffff82161576: 75 36 jne ffffffff821615ae <cfq_yield+0xd6>
ffffffff82161578: 48 8b 83 d0 00 00 00 mov 0xd0(%rbx),%rax
ffffffff8216157f: 8b 70 38 mov 0x38(%rax),%esi
ffffffff82161582: 83 fe ff cmp $0xffffffffffffffff,%esi
ffffffff82161585: 74 27 je ffffffff821615ae <cfq_yield+0xd6>
ffffffff82161587: 48 8b 48 30 mov 0x30(%rax),%rcx
ffffffff8216158b: 48 85 c9 test %rcx,%rcx
ffffffff8216158e: 74 1e je ffffffff821615ae <cfq_yield+0xd6>
ffffffff82161590: 48 63 05 4d f2 5d 00 movslq 6156877(%rip),%rax # ffffffff827407e4 <cfq_slice_idle>
ffffffff82161597: 48 8b 15 e2 42 63 00 mov 6505186(%rip),%rdx # ffffffff82795880 <jiffies>
ffffffff8216159e: 48 01 c8 add %rcx,%rax
ffffffff821615a1: 48 39 d0 cmp %rdx,%rax
ffffffff821615a4: 79 08 jns ffffffff821615ae <cfq_yield+0xd6>
ffffffff821615a6: 3b b3 c0 00 00 00 cmp 0xc0(%rbx),%esi
ffffffff821615ac: 75 38 jne ffffffff821615e6 <cfq_yield+0x10e>
ffffffff821615ae: 49 8b 04 24 mov (%r12),%rax
ffffffff821615b2: 48 8b b8 80 04 00 00 mov 0x480(%rax),%rdi
ffffffff821615b9: 48 85 ff test %rdi,%rdi
ffffffff821615bc: 74 1a je ffffffff821615d8 <cfq_yield+0x100>
ffffffff821615be: 8b 8d 68 02 00 00 mov 0x268(%rbp),%ecx
ffffffff821615c4: 8b 93 c0 00 00 00 mov 0xc0(%rbx),%edx
ffffffff821615ca: 48 c7 c6 1d 8c 55 82 mov $0xffffffff82558c1d,%rsi
ffffffff821615d1: 31 c0 xor %eax,%eax
ffffffff821615d3: e8 a1 07 f2 ff callq ffffffff82081d79 <__trace_note_message>
ffffffff821615d8: 81 4b 04 00 20 00 00 orl $0x2000,0x4(%rbx)
ffffffff821615df: 4c 89 b3 f0 00 00 00 mov %r14,0xf0(%rbx)
ffffffff821615e6: 49 8b 85 48 03 00 00 mov 0x348(%r13),%rax
ffffffff821615ed: fe 00 incb (%rax)
ffffffff821615ef: fb sti
ffffffff821615f0: 5b pop %rbx
ffffffff821615f1: 48 8b bd 00 06 00 00 mov 0x600(%rbp),%rdi
ffffffff821615f8: 5d pop %rbp
ffffffff821615f9: 41 5c pop %r12
ffffffff821615fb: 41 5d pop %r13
ffffffff821615fd: 41 5e pop %r14
ffffffff821615ff: e9 51 8b ff ff jmpq ffffffff8215a155 <put_io_context>
ffffffff82161604: 5b pop %rbx
ffffffff82161605: 5d pop %rbp
ffffffff82161606: 41 5c pop %r12
ffffffff82161608: 41 5d pop %r13
ffffffff8216160a: 41 5e pop %r14
ffffffff8216160c: c3 retq
next prev parent reply other threads:[~2010-06-28 23:16 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-22 21:34 [PATCH 0/3 v5][RFC] ext3/4: enhance fsync performance when using CFQ Jeff Moyer
2010-06-22 21:35 ` [PATCH 1/3] block: Implement a blk_yield function to voluntarily give up the I/O scheduler Jeff Moyer
2010-06-23 5:04 ` Andrew Morton
2010-06-23 14:50 ` Jeff Moyer
2010-06-24 0:46 ` Vivek Goyal
2010-06-25 16:51 ` Jeff Moyer
2010-06-25 18:55 ` Jens Axboe
2010-06-25 19:57 ` Jeff Moyer
2010-06-25 20:02 ` Vivek Goyal
2010-06-22 21:35 ` [PATCH 2/3] jbd: yield the device queue when waiting for commits Jeff Moyer
2010-06-22 21:35 ` [PATCH 3/3] jbd2: yield the device queue when waiting for journal commits Jeff Moyer
2010-06-22 22:13 ` [PATCH 0/3 v5][RFC] ext3/4: enhance fsync performance when using CFQ Joel Becker
2010-06-23 9:20 ` Christoph Hellwig
2010-06-23 13:03 ` Jeff Moyer
2010-06-23 9:30 ` Tao Ma
2010-06-23 13:06 ` Jeff Moyer
2010-06-24 5:54 ` Tao Ma
2010-06-24 5:54 ` Tao Ma
2010-06-24 5:54 ` [Ocfs2-devel] " Tao Ma
2010-06-24 14:56 ` Jeff Moyer
2010-06-24 14:56 ` [Ocfs2-devel] " Jeff Moyer
2010-06-27 13:48 ` Jeff Moyer
2010-06-27 13:48 ` [Ocfs2-devel] " Jeff Moyer
2010-06-28 6:41 ` Tao Ma
2010-06-28 6:41 ` Tao Ma
2010-06-28 6:41 ` [Ocfs2-devel] " Tao Ma
2010-06-28 13:58 ` Jeff Moyer
2010-06-28 13:58 ` [Ocfs2-devel] " Jeff Moyer
2010-06-28 23:16 ` Tao Ma [this message]
2010-06-28 23:16 ` Tao Ma
2010-06-28 23:16 ` [Ocfs2-devel] " Tao Ma
2010-06-29 14:56 ` Jeff Moyer
2010-06-29 14:56 ` [Ocfs2-devel] " Jeff Moyer
2010-06-30 0:31 ` Tao Ma
2010-06-30 0:31 ` Tao Ma
2010-06-30 0:31 ` [Ocfs2-devel] " Tao Ma
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=4C292D3A.5000208@oracle.com \
--to=tao.ma@oracle.com \
--cc=axboe@kernel.dk \
--cc=jmoyer@redhat.com \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ocfs2-devel@oss.oracle.com \
--cc=vgoyal@redhat.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.