linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] md: Remove the hash tables from raid0.
@ 2009-05-14 10:43 Andre Noll
  2009-05-14 10:43 ` [PATCH] md: raid0: Replace hash table lookup by looping over all strip_zones Andre Noll
                   ` (5 more replies)
  0 siblings, 6 replies; 39+ messages in thread
From: Andre Noll @ 2009-05-14 10:43 UTC (permalink / raw)
  To: neilb; +Cc: raziebe, linux-raid, Andre Noll

As mentioned by Neil, the raid0 hash table code does probably not
add any value. Moreover, it contains some rather strange sector_t
manipulations which are needed to setup and maintain the table.

This patch series against Neil's for-next tree as of yesterday removes
the hash table from the raid0 code.

Patch #1 replaces the hash table lookup by a simple function that
loops over all strip zones to find the zone that holds a given sector.
This change allows to get rid of the hash table itself (patch #2)
and of related fields of struct raid0_private_data (patch #3).

Patch #4 makes raid0 return a proper error code rather than -ENOMEM
in case the array could not be started for reasons other than memory
shortage.

The remaining two patches are simple cleanups that further simplify
the raid0 code a bit.

The patched kernel has been tested with a smallish raid0 array
consisting of five devices of varying sizes (created and filled with
contents by an unpatched kernel) and seems to work just fine. It
passes the raid0 tests of the mdadm test suite.

Please consider for inclusion.

 drivers/md/raid0.c |  150 ++++++++++++++--------------------------------------
 drivers/md/raid0.h |    4 --
 2 files changed, 39 insertions(+), 115 deletions(-)

Thanks
Andre

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

end of thread, other threads:[~2009-05-18 22:58 UTC | newest]

Thread overview: 39+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-05-14 10:43 [PATCH 0/6] md: Remove the hash tables from raid0 Andre Noll
2009-05-14 10:43 ` [PATCH] md: raid0: Replace hash table lookup by looping over all strip_zones Andre Noll
2009-05-14 11:15   ` NeilBrown
2009-05-14 12:10     ` Andre Noll
2009-05-14 12:25       ` NeilBrown
2009-05-14 12:54         ` Sujit Karataparambil
2009-05-14 15:00           ` SandeepKsinha
2009-05-14 15:58         ` PATCH md [001:002]: raid0: fix chunk size to 4K*n granularity raz ben yehuda
2009-05-14 14:07           ` Andre Noll
2009-05-14 22:35           ` Neil Brown
2009-05-18 22:58             ` raz ben yehuda
2009-05-14 16:00         ` Subject: PATCH[002:002] md: raid0: dump raid configuration raz ben yehuda
2009-05-14 17:12         ` Subject: [PATCH] mdadm: raid0: support chunks of 4K*n for raid0 raz ben yehuda
2009-05-15  3:59           ` Sujit Karataparambil
2009-05-15  6:01             ` Raz
2009-05-15  6:45               ` Sujit Karataparambil
2009-05-15  8:39                 ` NeilBrown
2009-05-15 15:45                   ` Raz
2009-05-14 12:22     ` [PATCH] md: raid0: Replace hash table lookup by looping over all strip_zones Neil Brown
2009-05-14 15:51       ` raz ben yehuda
2009-05-14 20:38         ` NeilBrown
2009-05-15 13:18           ` Andre Noll
2009-05-15 17:30         ` Andre Noll
2009-05-15 21:19           ` Raz
2009-05-18  8:21             ` Andre Noll
2009-05-14 11:15   ` SandeepKsinha
2009-05-14 12:01   ` SandeepKsinha
2009-05-14 12:15     ` SandeepKsinha
2009-05-14 14:13   ` raz ben yehuda
2009-05-14 10:43 ` [PATCH] md: raid0: Remove hash table Andre Noll
2009-05-14 10:43 ` [PATCH] md: raid0: Remove hash spacing and sector shift Andre Noll
2009-05-14 10:43 ` [PATCH] md: raid0: Make raid0_run() return a proper error code Andre Noll
2009-05-14 11:21   ` NeilBrown
2009-05-14 11:42     ` Andre Noll
2009-05-14 10:43 ` [PATCH] md: raid0: Kfree() strip_zone and devlist in create_strip_zones() Andre Noll
2009-05-14 10:43 ` [PATCH] md: raid0: Simplify raid0_run() Andre Noll
2009-05-14 11:43   ` SandeepKsinha
2009-05-14 12:06     ` NeilBrown
2009-05-14 14:03   ` raz ben yehuda

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).