The 2006 Linux Filesystems Workshop (Part III)
Posted Jul 23, 2006 19:40 UTC (Sun) by rapsys
In reply to: The 2006 Linux Filesystems Workshop (Part III)
Parent article: The 2006 Linux Filesystems Workshop (Part III)
Hum, I forget something.
The interest of the previous idea is if your data has been physicaly
corrupted (write overpowered, etc) in the other chunk, of the (group
of )block checksum will be wrong.
If the chunk of control sum is avaible and valid (see below), the kernel
issue a EAGAIN/ERESTORING to the application and regenerate the data from
the control sums' chunk.
It will allow to not loose a movie/music file because a stupid block in
the middle have been corrupted :'(
The more interesting things is that the hard disk will remap the
problematic magnic part to somewhere else because you re-write on the same
place and it's marked as trashed by hd.
(it's an assumption that need to be true every time and hd manufacturer
NEED to respect, after few write/read cycle test scheduled by firmware on
that place maybe)
The only problem I see if an overpowered writes cross the chunk
The control sum will be corrupted and will lead kernel in trouble in case
of birthday paradox.
So we will need to have (group of )block checksum for the control sums'
(Will it fit in space with equation : x(data)+1(control sums) ?)
I made two assumption :
- read/write to that chunk is not too costly (independant head, etc)
- control sum are not cpu killer (maybe have a special feature in hd to do
- control sums of chunk are not cpu killer too (but we only increase the
consumed cpu time for each write on disk)
to post comments)