udf: Commit b085fbe2ef7fa (udf: Fix crash during mount) broke CD-RW support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello!

Commit b085fbe2ef7fa (udf: Fix crash during mount) introduced check that
UDF disk with PD_ACCESS_TYPE_REWRITABLE access type would not be able to
mount in R/W mode. This commit was added in Linux 4.20.

But most tools which generate UDF filesystem for CD-RW set access type
to rewritable, so above change basically disallow usage of CD-RW discs
formatted to UDF in R/W mode.

Linux's cdrwtool and mkudffs (in all released versions), Windows Nero 6,
NetBSD's newfs_udf -- all these tools uses rewritable access type for
CD-RW media.

In UDF 1.50, 2.00 and 2.01 specification there is no information which
UDF access type should be used for CD-RW medias.

In UDF 2.60, section 2.2.14.2 is written:

    A partition with Access Type 3 (rewritable) shall define a Freed
    Space Bitmap or a Freed Space Table, see 2.3.3. All other partitions
    shall not define a Freed Space Bitmap or a Freed Space Table.

    Rewritable partitions are used on media that require some form of
    preprocessing before re-writing data (for example legacy MO). Such
    partitions shall use Access Type 3.

    Overwritable partitions are used on media that do not require
    preprocessing before overwriting data (for example: CD-RW, DVD-RW,
    DVD+RW, DVD-RAM, BD-RE, HD DVD-Rewritable). Such partitions shall
    use Access Type 4.

And in 6.14.1 (Properties of CD-MRW and DVD+MRW media and drives) is:

    The Media Type is Overwritable (partition Access Type 4,
    overwritable)

Similar info is in UDF 2.50.

So I think that UDF 2.60 is clear that for CD-RW medias (formatted in
normal or MRW mode) should be used Overwritable access type. But all
mentioned tools were probably written prior to existence of UDF 2.60
specifications, probably targeting only UDF 1.50 versions at that time.

I checked that they use Unallocated Space Bitmap (and not Freed Space
Bitmap), so writing to these filesystems should not be a problem.

How to handle this situation? UDF 2.01 nor 1.50 does not say anything
for access type on CD-RW and there are already tools which generates UDF
1.50 images which does not matches UDF 2.60 requirements.

I think that the best would be to relax restrictions added in commit
b085fbe2ef7fa to allow mounting mounting udf fs with rewritable access
type in R/W mode if Freed Space Bitmap/Table is not used.

I'm really not sure if existing udf implementations take CD-RW media
with overwritable media type. E.g. prehistoric wrudf tool refuse to work
with optical discs which have overwritable access type. I supports only
UDF 1.50.

-- 
Pali Rohár
pali.rohar@xxxxxxxxx

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux