Hello Dan,
thanks for the input.
This seems wrong... we should be checking with the metadata handler
before allowing a level change to occur. It's only luck that a
raid5-to-raid6 conversion is currently broken by an inability to set
stripe_cache_size. So I would do the call to update_super() before
the level is changed to give the handler a chance to abort
orom/metadata incompatible level changes.
Sure, but do you mean calling update_super() or rather validate_geometry() ?
Update_super() is called after kernel takeover...
So, maybe just before kernel level change we should check the metadata handler
(validate_geometry) to check current level capabilities...??
--
Maciek.