From: Stephane Chazelas <stephane_chazelas@yahoo.fr>
To: linux-btrfs <linux-btrfs@vger.kernel.org>
Subject: write(2) taking 4s. (Was: Memory leak?)
Date: Sat, 16 Jul 2011 13:12:10 +0100 [thread overview]
Message-ID: <20110716121210.GA5638@yahoo.fr> (raw)
In-Reply-To: <20110711090121.GA2537@yahoo.fr>
[-- Attachment #1: Type: text/plain, Size: 4283 bytes --]
Still on my btrfs-based backup system. I still see one BUG()
reached in btrfs-fixup per boot time, no memory exhaustion
anymore. There is now however something new: write performance
is down to a few bytes per second.
I've got a few processes (rsync, patched ntfsclone, shells
mostly) writing to files at the same time on this server.
disk stats per second:
--dsk/sda-----dsk/sdb-----dsk/sdc--
read writ: read writ: read writ
264k 44k: 193k 44k: 225k 42k
0 0 : 0 0 : 0 0
0 0 : 0 0 : 0 0
0 0 : 0 0 : 0 0
0 60k: 0 0 : 0 0
0 12k: 0 1176k: 0 1164k
0 0 : 0 0 : 0 0
0 0 : 0 0 : 0 0
0 0 : 0 0 : 0 0
0 40k: 0 0 :8192B 0
0 0 : 0 0 : 0 0
0 0 : 0 0 : 0 0
0 0 : 0 0 : 0 0
0 0 : 0 0 : 0 0
0 0 : 0 0 :4096B 0
0 0 : 0 0 : 0 0
0 0 : 0 0 : 0 0
0 0 : 0 0 : 0 0
324k 0 : 248k 0 : 548k 0
0 4096B: 0 0 : 0 0
352k 0 : 0 0 : 0 0
0 0 : 0 0 : 0 0
0 0 : 0 0 :4096B 0
0 0 : 0 0 : 0 0
0 80k: 0 0 : 0 0
rsync:
# strace -Ts0 -p 5015
Process 5015 attached - interrupt to quit
write(3, ""..., 1024) = 1024 <0.007700>
write(3, ""..., 1024) = 1024 <0.015822>
write(3, ""..., 1024) = 1024 <0.031853>
write(3, ""..., 1024) = 1024 <0.015881>
write(3, ""..., 1024) = 1024 <0.015911>
write(3, ""..., 1024) = 1024 <0.015796>
write(3, ""..., 1024) = 1024 <0.031946>
write(3, ""..., 1024) = 1024 <4.083854>
write(3, ""..., 1024) = 1024 <0.007925>
write(3, ""..., 1024) = 1024 <0.003776>
write(3, ""..., 1024) = 1024 <0.031862>
write(3, ""..., 1024) = 1024 <0.011807>
write(3, ""..., 1024) = 1024 <0.019742>
write(3, ""..., 1024) = 1024 <0.015857>
write(3, ""..., 1024) = 1024 <0.031833>
write(3, ""..., 1024) = 1024 <0.015789>
write(3, ""..., 1024) = 1024 <0.015926>
write(3, ""..., 1024) = 1024 <4.095967>
write(3, ""..., 1024) = 1024 <0.019798>
write(3, ""..., 1024) = 1024 <4.083682>
write(3, ""..., 1024) = 1024 <0.015398>
write(3, ""..., 1024) = 1024 <0.015951>
write(3, ""..., 1024) = 1024 <0.035837>
write(3, ""..., 1024) = 1024 <0.015962>
write(3, ""..., 1024) = 1024 <0.015909>
write(3, ""..., 1024) = 1024 <0.015967>
write(3, ""..., 48) = 48 <0.003782>
write(3, ""..., 1024) = 1024 <0.031802>
write(3, ""..., 1024) = 1024 <0.015811>
write(3, ""..., 1024) = 1024 <0.015944>
write(3, ""..., 1024) = 1024 <0.019810>
write(3, ""..., 1024) = 1024 <0.031948>
ntfsclone (patched to only write modified clusters):
# strace -Te write -p 4717
Process 4717 attached - interrupt to quit
write(1, " 65.16 percent completed\r", 25) = 25 <0.008996>
write(1, " 65.16 percent completed\r", 25) = 25 <0.743358>
write(1, " 65.16 percent completed\r", 25) = 25 <0.306582>
write(1, " 65.17 percent completed\r", 25) = 25 <4.082723>
write(1, " 65.17 percent completed\r", 25) = 25 <0.006402>
write(1, " 65.17 percent completed\r", 25) = 25 <0.012582>
write(1, " 65.17 percent completed\r", 25) = 25 <4.052504>
write(1, " 65.17 percent completed\r", 25) = 25 <0.012111>
write(1, " 65.17 percent completed\r", 25) = 25 <0.016001>
write(1, " 65.17 percent completed\r", 25) = 25 <4.028017>
write(1, " 65.18 percent completed\r", 25) = 25 <0.013365>
write(1, " 65.18 percent completed\r", 25) = 25 <0.003963>
(that's writing to a log file)
See how many write(2)s take 4 seconds.
No issue when writing to an ext4 FS.
SMART status on all drives OK.
What else could I look at?
Attached is a sysrq-t output.
--
Stephane
[-- Attachment #2: sysrq-t.txt.xz --]
[-- Type: application/octet-stream, Size: 14324 bytes --]
next prev parent reply other threads:[~2011-07-16 12:12 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-07-03 19:09 Memory leak? Stephane Chazelas
2011-07-03 19:38 ` cwillu
2011-07-06 8:11 ` Stephane Chazelas
2011-07-07 8:09 ` Stephane Chazelas
2011-07-07 8:20 ` Li Zefan
2011-07-07 8:37 ` Stephane Chazelas
2011-07-08 12:44 ` Stephane Chazelas
2011-07-08 15:06 ` Chris Mason
2011-07-08 15:41 ` Stephane Chazelas
2011-07-08 16:11 ` Stephane Chazelas
2011-07-08 16:17 ` Chris Mason
2011-07-08 16:57 ` Stephane Chazelas
2011-07-09 17:11 ` Stephane Chazelas
2011-07-08 16:15 ` Chris Mason
2011-07-08 17:06 ` Stephane Chazelas
2011-07-08 20:04 ` Stephane Chazelas
2011-07-08 20:12 ` Chris Mason
2011-07-09 7:09 ` Stephane Chazelas
2011-07-09 7:42 ` A lot of writing to FS only read (Was: Memory leak?) Stephane Chazelas
2011-07-10 5:58 ` Memory leak? Stephane Chazelas
2011-07-09 17:09 ` Stephane Chazelas
2011-07-09 19:25 ` cwillu
2011-07-09 20:36 ` Stephane Chazelas
2011-07-10 12:44 ` Chris Mason
2011-07-10 18:37 ` Stephane Chazelas
2011-07-11 9:01 ` Stephane Chazelas
2011-07-11 15:00 ` Chris Mason
2011-07-11 15:35 ` Stephane Chazelas
2011-07-11 16:25 ` Chris Mason
2011-07-11 16:34 ` Stephane Chazelas
2011-07-12 11:40 ` Stephane Chazelas
2011-07-16 12:12 ` Stephane Chazelas [this message]
2011-07-16 16:22 ` write(2) taking 4s. (Was: Memory leak?) Stephane Chazelas
2011-07-17 9:17 ` Stephane Chazelas
2011-07-18 10:39 ` write(2) taking 4s Stephane Chazelas
2011-07-18 19:37 ` Stephane Chazelas
2011-07-19 9:32 ` Stephane Chazelas
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=20110716121210.GA5638@yahoo.fr \
--to=stephane_chazelas@yahoo.fr \
--cc=linux-btrfs@vger.kernel.org \
/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.