#11455: ISO9660 KDLs when it is not the first session on a CD. -------------------------------------+---------------------------- Reporter: pulkomandy | Owner: nobody Type: bug | Status: new Priority: normal | Milestone: R1 Component: File Systems/ISO 9660 | Version: R1/Development Resolution: | Keywords: Blocked By: | Blocking: Has a Patch: 0 | Platform: All -------------------------------------+---------------------------- Comment (by pulkomandy): Yes, but if we give the whole disc to ISO9660, it will not be able to find the table of contents (which is at a fixed offset from the start of the data track, not the start of the disc). I understand this is how it works usually, when there is a single session, the ISO9660 filesystem works directly with the disc (the session partitionning system is not even used in that case), and everything is fine. When there are multiple sessions/tracks, and the ISO9660 track is the first one (as seen on video games with audio tracks, or the BeOS CDs for example), everything is also fine. The session partitionning system is used, but the first session has an offset of 0 and everything still works. In the case of these Blue Book CDs, the ISO9660 filesystem starts in the last track on the disc, and in a separate session. So, the ISO9660 filesystem should look for his header at the start of that session, but then use disc-relative numbers as soon as it tries to access something else. So I see two possible solutions: * Have the session partitionning make all sessions overlapped and starting from the first sector of the disc, to make ISO9660 happy, and then somehow inform it of where is the ISO9660 header. * Have the partitionning system as it is now (so sessions match the physical layout of the disc), have ISO9660 convert the on-disc asolute numbers to session-start-relative (possibly negative), then the session partitionning system convert back to absolute numbers. This menas more involved changes to the ISO9660 and makes it more complex, but somehow it feels more "natural" to me than overlapping the partitions. In the first case, I think we would also break any other filesystem used, for example the BFS track on the BeOS CDs. In the second case these would continue to work, using only positive offsets from the session start (as they do now). -- Ticket URL: <https://dev.haiku-os.org/ticket/11455#comment:9> Haiku <https://dev.haiku-os.org> Haiku - the operating system.