This might not be the best way to go about it, but I couldn't find a simpler way to detect if 'device cd' is present in the kernel.
Details
Diff Detail
- Repository
- rS FreeBSD src repository - subversion
- Lint
Lint Skipped - Unit
Tests Skipped - Build Status
Buildable 8262 Build 8507: CI src build Jenkins
Event Timeline
Taking a step back... why is device cd required here ? It seems that the real item that's missing potentially from your kernel is iso9660 support. Can you please note how this is broken when device cd is missing?
Good point.. This is what I am seeing when this test runs:
Fail: incorrect exit status: 1, expected: 0 stdout: stderr: mount_cd9660: /dev/md4: Operation not supported by device
I'll update the patch.
I think the "missing cd(4)" -> "failing test" part is a red herring, but I'll have to verify that.
If the issue is happening in cd9660, it's because the vnode provided is either a block or character device. I'm not sure what the intent behind that check is, but it seems like there's an issue between makefs(8) <-> cd9660(4).
Hold on a minute... let me verify some things.
You don't have cd9660 support in your kernel, but you have mount_cd9660 on your system. That's why this is happening.
Yeah.. Not sure how to handle that situation. I don't see a way to optionally remove the mount_cd9660 according to ObsoleteFiles.inc. I would appreciate any ideas you have.
You're on the right track. Please rename check_cd_support to check_iso9660_support and check for cd9660 instead of cd.
I'd also state Requires cd9660 filesystem support to be present in the kernel.
(UGH... WHY ISN'T THERE A cd9660 manpage?! I guess I'll have to add it!)
...
You're on the right track. Please rename check_cd_support to check_iso9660_support and check for cd9660 instead of cd.
I'd also state Requires cd9660 filesystem support to be present in the kernel.
(UGH... WHY ISN'T THERE A cd9660 manpage?! I guess I'll have to add it!)
Ok, cd9660(5) exists now :)... *phew*