Crumble14 wrote:
In the inode's structure itself?
Yes.
Crumble14 wrote:
Am I supposed to put the major first, then the minor, or the opposite?
I can't find it specified in my copy of the spec...
Crumble14 wrote:
What happens if a symlink is too big to fit in the structure? I guess it would then be written into blocks directly, but how is the fs driver supposed to know if it should interpret the bytes into the inode's structure as block addresses or as the link's data itself?
The size available within the inode is fixed at 60 bytes and the length of the symlink contents is the size of the file, so the filesystem implementation would be able know whether the i_block data is pointers or characters based on that size.
Random aside: I kinda despise the whole system of device special files. A pair of bytes is terribly insufficient for identifying interfaces to the myriad devices represented on a modern system. I opted not to implement them at all, instead implementing all device files as virtual files in the same way as a /proc or /sys.