From: Bill Davidsen <davidsen@tmr.com>
To: Matti Aarnio <matti.aarnio@zmailer.org>
Cc: Jesper Juhl <jj@chaosbits.net>,
Prakash Punnoor <prakash@punnoor.de>,
Michael Tokarev <mjt@tls.msk.ru>,
linux-kernel@vger.kernel.org, linux-raid@vger.kernel.org,
neilb@suse.de
Subject: Re: Proposal: make RAID6 code optional
Date: Tue, 21 Apr 2009 09:58:54 -0400 [thread overview]
Message-ID: <49EDD11E.2030309@tmr.com> (raw)
In-Reply-To: <20090418145850.GD28512@mea-ext.zmailer.org>
Matti Aarnio wrote:
> On Sat, Apr 18, 2009 at 03:56:17PM +0200, Jesper Juhl wrote:
>
>> On Sat, 18 Apr 2009, Prakash Punnoor wrote:
>>
>>> On Samstag 18 April 2009 10:09:54 Michael Tokarev wrote:
>>>
>>>> Prakash Punnoor wrote:
>>>>
> .....
>
>>>> What's your goal? What's the problem you're trying to solve?
>>>>
>>> Having duplicate code is not good, of course. But unused code is also not
>>> good. As I said, I only use RAID5, so I don't need RAID6 support. The RAID6
>>> support enlarges kernel (the built-in.o in drivers/md grows from 325kb to
>>> 414kb in my case), making boot time and compile time longer
>>>
>> By a few ms perhaps - nothing that you'd ever notice in real life... A
>> small price to pay for the shared code. If you were to split them all
>> again, the combined total size would be greater still.
>>
>
>
> I did quick "sum of symbol sizes" lookup of the raid.ko, and got
> it like this:
>
> nm -t d -n -S /lib/modules/2.6.27.21-170.2.56.fc10.x86_64/kernel/drivers/md/raid456.ko | grep raid4|awk '{print $2}'|sed -e 's/^0*//g'|awk '{sum+=$1}END{print sum}'
> ...
>
> raid4: 152
> raid5: 7165
> raid6: 75558
>
> Entire 64kB of that raid6 is single pre-initialized r/o datablock: raid6_gfmul
>
>
It would seem that that space could be allocated and populated when
raid6 was first used, as part of the initialization. I haven't looked at
that code since it was new, so I might be optimistic about doing it that
way.
> So yes, having RAID6 personality as separate module would be appropriate for
> systems that are only interested in RAID4 or RAID5. Separating the RAID4
> personality wastes space, separating RAID5 ... barely 2 of 4k memory pages.
>
> There are perhaps a few kB more of codes for RAID5 and RAID6 classes - not all
> local functions at each are named with relevant prefix, but overall I would
> consider extracting RAID6 as a reasonable goal with common codes on RAID4/5.
>
>
>>> - admittedly not
>>> by a big margin. But then again I could argue: Why not put RAID0,1,10,4,5,6
>>> into one big module? Makes no sense, huh?
>>>
>> Makes perfect sense to me. Just modprobe raid.o and you have all
>> raid levels available. That would make a lot of sense.
>>
>
> Also, systems with so many disks that they run RAID4/5/6 to begin with are
> likely to have enough memory so that "wasted" 75-80 kB does not matter.
>
Everything matters. "Take care of the pennies and the dollars will take
care of themselves" is not just an old German proverb.
--
bill davidsen <davidsen@tmr.com>
CTO TMR Associates, Inc
"You are disgraced professional losers. And by the way, give us our money back."
- Representative Earl Pomeroy, Democrat of North Dakota
on the A.I.G. executives who were paid bonuses after a federal bailout.
next prev parent reply other threads:[~2009-04-21 13:58 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-04-18 7:46 Proposal: make RAID6 code optional Prakash Punnoor
2009-04-18 8:09 ` Michael Tokarev
2009-04-18 9:16 ` Prakash Punnoor
2009-04-18 13:56 ` Jesper Juhl
2009-04-18 14:58 ` Matti Aarnio
2009-04-19 2:07 ` H. Peter Anvin
2009-04-19 2:27 ` NeilBrown
2009-04-19 6:28 ` Neil Brown
2009-04-21 13:58 ` Bill Davidsen [this message]
2009-04-21 17:23 ` H. Peter Anvin
2009-04-22 9:01 ` Goswin von Brederlow
2009-04-22 12:34 ` Bill Davidsen
2009-04-22 15:11 ` H. Peter Anvin
2009-04-22 18:00 ` Andre Noll
2009-04-22 18:31 ` Goswin von Brederlow
2009-04-22 18:50 ` Andre Noll
2009-04-22 18:39 ` H. Peter Anvin
2009-04-22 18:57 ` Andre Noll
2009-04-23 1:35 ` H. Peter Anvin
2009-04-23 8:07 ` Andre Noll
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=49EDD11E.2030309@tmr.com \
--to=davidsen@tmr.com \
--cc=jj@chaosbits.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-raid@vger.kernel.org \
--cc=matti.aarnio@zmailer.org \
--cc=mjt@tls.msk.ru \
--cc=neilb@suse.de \
--cc=prakash@punnoor.de \
/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;
as well as URLs for NNTP newsgroup(s).