From: NeilBrown <neilb@suse.de>
To: Kenny Root <kenny@the-b.org>
Cc: linux-raid@vger.kernel.org
Subject: Re: Possible leak during reshaping layout
Date: Mon, 21 Jul 2014 17:26:51 +1000 [thread overview]
Message-ID: <20140721172651.1fcacfe7@notabene.brown> (raw)
In-Reply-To: <20140720052700.GB1838@batman-mbp.internally.la.gs>
[-- Attachment #1: Type: text/plain, Size: 4200 bytes --]
On Sat, 19 Jul 2014 22:27:00 -0700 Kenny Root <kenny@the-b.org> wrote:
> I may have stumbled into a kernel memory leak during reshaping of a RAID 10
> from offset to near layout:
>
> I have a RAID 10 array which was previously in offset layout. I decided to
> reshape to a near layout. Eventually the machine had become very sluggish,
> the load average shot up, and the reshape slowed down to nearly nothing.
>
> md127 : active raid10 sdh1[2] sdk1[3] sdf1[0] sdg1[1]
> 7813771264 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]
> [=========>...........] reshape = 49.5% (3872227840/7813771264) finish=63624.5min speed=1032K/sec
>
> A look at slabtop appears to show that there is an allocation that is
> larger than the physical RAM (16GB):
>
> Active / Total Objects (% used) : 61551490 / 61918456 (99.4%)
> Active / Total Slabs (% used) : 2209811 / 2209811 (100.0%)
> Active / Total Caches (% used) : 76 / 99 (76.8%)
> Active / Total Size (% used) : 15241504.92K / 15319798.41K (99.5%)
> Minimum / Average / Maximum Object : 0.01K / 0.25K / 15.69K
>
> OBJS ACTIVE USE OBJ SIZE SLABS OBJ/SLAB CACHE SIZE NAME
> 60511744 60511219 29% 0.25K 2183366 32 17466928K kmalloc-256
> 193408 82391 42% 0.06K 3022 64 12088K kmalloc-64
> 154880 129949 83% 0.03K 1210 128 4840K kmalloc-32
> 154624 152783 98% 0.01K 302 512 1208K kmalloc-8
> 144160 143412 99% 0.02K 848 170 3392K fsnotify_event_holder
> 125103 34053 27% 0.08K 2453 51 9812K selinux_inode_security
>
This very suspicious.
As you might imagine, it is not possible for a slab to use more memory than
is physically available.
It claims there are 60511219 active objects out of a total of 60511744.
I calculate that as 99.9999132%, but it suggests 29%.
If there were 32 OBJ/SLAB, then the slabs must be 8K. This is possible, but
they are 4K on my machine, and all the other slabs you listed are too.
I've tried a similar reshape on 3.16-rc3 and there is no similar leak.
The only patch since 3.13 that could possibly be relevant is
commit cc13b1d1500656a20e41960668f3392dda9fa6e2
Author: NeilBrown <neilb@suse.de>
Date: Mon May 5 13:34:37 2014 +1000
md/raid10: call wait_barrier() for each request submitted.
That might fix a leak. However the leak it might fix was introduced in
3.14-rc1:
commit 20d0189b1012a37d2533a87fb451f7852f2418d1
block: Introduce new bio_split()
So unless Fedora backported one of those but not the other I don't see how
this can be caused by RAID10.
What does /proc/slabinfo contain? Maybe "slabtop" is presenting it poorly.
NeilBrown
> Output of mdadm -D:
>
> /dev/md127:
> Version : 1.2
> Creation Time : Wed Dec 20 19:41:25 2013
> Raid Level : raid10
> Array Size : 7813771264 (7451.79 GiB 8001.30 GB)
> Used Dev Size : 3906885632 (3725.90 GiB 4000.65 GB)
> Raid Devices : 4
> Total Devices : 4
> Persistence : Superblock is persistent
>
> Update Time : Sat Jul 19 22:20:55 2014
> State : active, reshaping
> Active Devices : 4
> Working Devices : 4
> Failed Devices : 0
> Spare Devices : 0
>
> Layout : offset=2
> Chunk Size : 512K
>
> Reshape Status : 49% complete
> New Layout : near=2, far=1
>
> Name : local:home (local to host local)
> UUID : 3102a888:f08888a8:da88e888:c6288888
> Events : 70841
>
> Number Major Minor RaidDevice State
> 0 8 81 0 active sync /dev/sdf1
> 1 8 97 1 active sync /dev/sdg1
> 2 8 113 2 active sync /dev/sdh1
> 3 8 161 3 active sync /dev/sdk1
>
> uname -r output:
> 3.13.6-200.fc20.x86_64
> --
> To unsubscribe from this list: send the line "unsubscribe linux-raid" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 828 bytes --]
next prev parent reply other threads:[~2014-07-21 7:26 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-20 5:27 Possible leak during reshaping layout Kenny Root
2014-07-21 7:26 ` NeilBrown [this message]
2014-07-21 15:16 ` Kenny Root
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=20140721172651.1fcacfe7@notabene.brown \
--to=neilb@suse.de \
--cc=kenny@the-b.org \
--cc=linux-raid@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox