
Wishlist: 32k blocksize support
-
- Posts: 15
- Joined: Wed 23 Jan 2008, 17:38
Wishlist: 32k blocksize support
Any chance of including Christoph Lameter's patchset to support 32k blocksize in the next release of Puppy? I have an urgent need -- upgrading my PVR disk without losing all my recordings!!


info
http://lwn.net/Articles/232757/
https://kerneltrap.org/mailarchive/linu ... 019/thread
Can you explain your current problem, there may be other ways?
Aitch
http://lwn.net/Articles/232757/
https://kerneltrap.org/mailarchive/linu ... 019/thread
Can you explain your current problem, there may be other ways?
Aitch

-
- Posts: 15
- Joined: Wed 23 Jan 2008, 17:38
The Problem
Hi Aitch,
Thanks for the links - the new kernel patchset you linked to looks very promising!! Do you know exactly what it will support? And when would they become part of the Puppy kernel?
The real life problem is that I'm trying to upsize the hard disk in my PVR, while retaining the existing recordings.
(We're out of space and there's no way I can delete eg Finding Nemo, it's our little one's staple diet when all new recordings have been watched...)
The drive is formatted by the PVR into two partitions: a small, regular ext2 partition, which contains some info about the recordings, and a very much larger data partition with 32k block size. Partition 0 can be mounted and read by Linux as it's a normal partition, but Partition 1 cannot due to it's unfeasibly large block size.
The problem is, how to get the recordings from the old disk ("disk a") to the new one ("disk b"), and to have the PVR recognise the extra space on the new drive.
So far, I've managed to get the contents of the old drive over to the new one by
a) Formatting disk b in the PVR to get the correct partitions set up
b) Saving the partition table of disk b using dd
c) Copying the entire disk a to disk b using dd
d) Restoring the partition table to disk b using dd
This results in a disk that looks like a larger disk, partition wise, but actually the fs isn't bigger and it doesn't have any free space -- though all the recordings are there.
This is because, of course, that although the partition dimensions are correct for the new, larger partition, the superblock values for total blocks and free blocks are wrong, as are the sector allocation bitmaps (and possibly some other things eg file groups).
I've tried resizing the partition with GParted (instead of manually changing the partition table) but GParted fails, saying that the partition has an invalid superblock, so that's a non-starter. I think I've tried other tools too with similar results.
I'm very experienced with software in general, but not very much with Linux or C. Compiling a Kernel is somewhere just above my level (I tried Christophe Lameters patches for a while and gave up). I've never (I think) compiled a package, though I may have followed some step-by-step instructions once or twice. I am not phased by details and could with some effort understand the ext2 file system and write my own hack, but probably most easily in VB rather than C.
So it would seem that there are three possible solutions:
a) See if someone will modify GParted to cope with large blocks (I've emailed them to ask if they will look at this for me), or
b) Wait until large block support comes into Linux (pref the Puppy that I know and love!) and then copy the files over from drive to drive, the easy way, or
c) Write my own utility - or have someone else write one - to hack the fs to fix the superblock, file alloc bitmaps, and file groups, so that the partition can be magically expanded. This is the brute-force-ugly way and I thought I'd call for some help before I attempted this!

Hope this is enough (and not too much) detail.
Thanks for your help and interest.
David
Thanks for the links - the new kernel patchset you linked to looks very promising!! Do you know exactly what it will support? And when would they become part of the Puppy kernel?
The real life problem is that I'm trying to upsize the hard disk in my PVR, while retaining the existing recordings.
(We're out of space and there's no way I can delete eg Finding Nemo, it's our little one's staple diet when all new recordings have been watched...)
The drive is formatted by the PVR into two partitions: a small, regular ext2 partition, which contains some info about the recordings, and a very much larger data partition with 32k block size. Partition 0 can be mounted and read by Linux as it's a normal partition, but Partition 1 cannot due to it's unfeasibly large block size.
The problem is, how to get the recordings from the old disk ("disk a") to the new one ("disk b"), and to have the PVR recognise the extra space on the new drive.
So far, I've managed to get the contents of the old drive over to the new one by
a) Formatting disk b in the PVR to get the correct partitions set up
b) Saving the partition table of disk b using dd
c) Copying the entire disk a to disk b using dd
d) Restoring the partition table to disk b using dd
This results in a disk that looks like a larger disk, partition wise, but actually the fs isn't bigger and it doesn't have any free space -- though all the recordings are there.
This is because, of course, that although the partition dimensions are correct for the new, larger partition, the superblock values for total blocks and free blocks are wrong, as are the sector allocation bitmaps (and possibly some other things eg file groups).
I've tried resizing the partition with GParted (instead of manually changing the partition table) but GParted fails, saying that the partition has an invalid superblock, so that's a non-starter. I think I've tried other tools too with similar results.
I'm very experienced with software in general, but not very much with Linux or C. Compiling a Kernel is somewhere just above my level (I tried Christophe Lameters patches for a while and gave up). I've never (I think) compiled a package, though I may have followed some step-by-step instructions once or twice. I am not phased by details and could with some effort understand the ext2 file system and write my own hack, but probably most easily in VB rather than C.
So it would seem that there are three possible solutions:
a) See if someone will modify GParted to cope with large blocks (I've emailed them to ask if they will look at this for me), or
b) Wait until large block support comes into Linux (pref the Puppy that I know and love!) and then copy the files over from drive to drive, the easy way, or
c) Write my own utility - or have someone else write one - to hack the fs to fix the superblock, file alloc bitmaps, and file groups, so that the partition can be magically expanded. This is the brute-force-ugly way and I thought I'd call for some help before I attempted this!

Hope this is enough (and not too much) detail.
Thanks for your help and interest.
David
Hi David
I was thinking of a different approach
Does the PVR have a usb port, or video output port, so that the videos could be copied to a capture device or PC harddrive, with a hardwired connection?
[possibly a scart to video/stereosound 3 lead phono arrangement?]
If you could copy to another medium before removing the existing drive, then replace with a new drive, couldn't the new drive be formatted in situ as the larger physical [Gb] size & blocksize, then copy the dvds etc back?
Just a thought......never had one myself
there is a skybox howto here, though you may have a different make?
http://www.pcw.co.uk/personal-computer- ... -hard-disk
more info=more help
Aitch
I was thinking of a different approach
Does the PVR have a usb port, or video output port, so that the videos could be copied to a capture device or PC harddrive, with a hardwired connection?
[possibly a scart to video/stereosound 3 lead phono arrangement?]
If you could copy to another medium before removing the existing drive, then replace with a new drive, couldn't the new drive be formatted in situ as the larger physical [Gb] size & blocksize, then copy the dvds etc back?
Just a thought......never had one myself
there is a skybox howto here, though you may have a different make?
http://www.pcw.co.uk/personal-computer- ... -hard-disk
more info=more help
Aitch

-
- Posts: 15
- Joined: Wed 23 Jan 2008, 17:38
Hi Aitch,
The Digihome (Vestel) T810 has an RS232 port but unfortunately that's only for uploading firmware updates to the box; frustratingly, no downloading of programmes is possible through that port.
Recording to an external device is possible using the method you suggest, but of course only at 1x speed, which would take 40 odd hours to get all the programmes off.
Re-recording to the box would of course take just as long, and is in any case not possible as unfortunately this device will only record from live TV, and not from an external input.
[Aside: I think there was (is) some paranoia about digital recordings that generally makes PVR manufacturers make it very hard to get the recordings off in any meaningful format!!]
So, unfortunately, it has to be a digital-digital copy.
On a brighter note, I've been recommended (on anther forum) to use resize2fs to expand the filesystem after expanding the partition, and I've emailed the author to see if it will work on 32k blocksize partitions - let's hope and see!
Thanks for the additional info and for thinking "outside the box"!
David
The Digihome (Vestel) T810 has an RS232 port but unfortunately that's only for uploading firmware updates to the box; frustratingly, no downloading of programmes is possible through that port.
Recording to an external device is possible using the method you suggest, but of course only at 1x speed, which would take 40 odd hours to get all the programmes off.
Re-recording to the box would of course take just as long, and is in any case not possible as unfortunately this device will only record from live TV, and not from an external input.

[Aside: I think there was (is) some paranoia about digital recordings that generally makes PVR manufacturers make it very hard to get the recordings off in any meaningful format!!]
So, unfortunately, it has to be a digital-digital copy.
On a brighter note, I've been recommended (on anther forum) to use resize2fs to expand the filesystem after expanding the partition, and I've emailed the author to see if it will work on 32k blocksize partitions - let's hope and see!
Thanks for the additional info and for thinking "outside the box"!
David