When module-init-tools parses it's config files, it checks to see if it is a directory with opendir and if it fails it reads it as a file. In reiser4 files are directories so opendir always passes but there are no contents so it never reads it as a file. Attached is a patch to first run stat(2) to check if it really is a directory. Reproducible: Always Steps to Reproduce: 1. Use reiser4 for your / partition. 2. run modprobe -c Actual Results: modprobe -c will return nothing even though /etc/modprobe.conf contains configuration data.
Created attachment 45252 [details, diff] Check if it is a directory with stat(2) prior to opendir(3).
e-mailed patch upstream
That is horrible... it if has data and no children Reiser4 should return ENOTDIR. The correct behaviour on such a filesystem is to read *and* recurse, which is what I have implemented in 3.2-pre6, which I'm testing now and will soon upload. Please get back to me if it's not working. Cheers, Rusty.
3.2_pre7 is in portage now which should have this resolved properly