lkml.org 
[lkml]   [2012]   [Jun]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Partitions: Amiga RDB partition on 2 TB disk way too big, while OK in AmigaOS 4.1
    On 2012/06/17 14:20, Martin Steigerwald wrote:
    > Am Sonntag, 17. Juni 2012 schrieb jdow:
    >> On 2012/06/17 09:36, Geert Uytterhoeven wrote:
    >>> On Sun, Jun 17, 2012 at 2:58 PM, Martin Steigerwald
    > <Martin@lichtvoll.de> wrote:
    >>>> Am Sonntag, 17. Juni 2012 schrieb jdow:
    >>>> | JXFS 64 bit file system
    >>>> |
    >>>> | With AmigaOS 4.x a new file system has been introduced called
    >>>> | JXFS. It is a totally new 64 bit file system that supports
    >>>> | partitions up to 16 TB in size. It is a modern journalling file
    >>>> | system, which means that it reduces data loss if data writes to
    >>>> | the disk are interrupted. It is the fastest and most reliable
    >>>> | file system ever created for AmigaOS.
    >>>>
    >>>> http://www.amigaos.net/content/1/features
    >>>>
    >>>> Well I asked AmigaOS 4 developers about this issue as well. Lets see
    >>>> what they say about 2 TB limits.
    >>>
    >>> 16 TB = 2 TB * 8. Perhaps they increased the block size from 512 to
    >>> 4096?
    >>>
    >>> block/partitions/amiga.c reads the block size from
    >>> RigidDiskBlock.rdb_BlockBytes,
    >>> but after conversion to 512-byte blocks, all further calculations are
    >>> done on "int", so it will overflow for disks larger than 2 TiB.
    >>>
    >>> Note that in your profile-binary.img, the field is 0x200, i.e. 512
    >>> bytes per block,
    >>> so I'll have to get a deeper look into your RDB first...
    > […]
    >> Note that the work I did on the Linux RDB code eons ago took full
    >> cognizance of the physical and virtual block sizes.
    > […]
    >> I've asked Martin for a digital copy of his RDBs and what he thinks the
    >> partition(s) should look like. I should also be told whether the disk
    >> is supposed to be solely Amiga OSs or not. I gather it's not.
    >
    > Its all in the bug report. profile-binary.img should be it.
    >
    > Its small so I attach it.
    >
    > Meanwhile I try to get the currently supported maximum disk size out from
    > the OS 4 developers. Maybe JXFS is playing tricks that other filesystems do
    > not play or simply has a different implementation.
    >
    > Thanks,

    I've sent Jens a proposed fix changing these lines in amiga.c.
    ===8<--- was
    struct PartitionBlock *pb;
    int start_sect, nr_sects, blk, part, res = 0;
    int blksize = 1; /* Multiplier for disk block size */
    ===8<--- becomes changing line 338 into lines 338-339
    struct PartitionBlock *pb;
    sector_t start_sect, nr_sects;
    int blk, part, res = 0;
    int blksize = 1; /* Multiplier for disk block size */
    ===8<---

    (I'm working without proper tools at the moment or I'd make a real diff.
    Sorry.)

    This fix may not be complete. The RDBs contain provisions for describing
    the physical disk block size and how many physical blocks are used in a
    file system's logical blocks. This MAY not work quite right large physical
    block sizes.

    {^_^} Joanne Dow
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2012-06-18 04:01    [W:0.070 / U:0.200 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site