In message <[EMAIL PROTECTED]>, Andrew Kenneth Milton
 writes:
>+-------[ Poul-Henning Kamp ]----------------------
>| In message <[EMAIL PROTECTED]>, Andrew Kenneth Milton
>|  writes:
>| 
>| >The problem turns up most violently within the XFree86 DRI Module, since
>| >it now uses make_dev, and not mknod as it used to.
>| >
>| >The DRI Module first attempts to mkdir /dev/dri/, and then for each card
>| >it supports attempts to use make_dev(9) on dri/card%d (0-whatever), I've
>| >only got one card, so for me dri/card0.
>| 
>| It should simply make_dev() "dri/card%d", the directory is created
>| by devfs on demand.  You should not mkdir("/dev/dri");
>
>Sure, how do you tell at run time whether a system is running DEVFS or not,

if the sysctl variable vfs.devfs.generation exists you're running DEVFS.

In the kernel you check the value of the variable "devfs_present".

>There are going to be other things that assume that /dev/ is just another
>directory and are going to try to mkdir /dev/foo. 

Just how did you do the mkdir ?  From userland ?  From the kernel ?

>I'll remove the mkdirs and leave the make_devs in and see how we go.
>Are there caveats with make_dev and DEVFS e.g. it only wants relative paths
>not full paths?

relative paths, no '.' entries.

-- 
Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
[EMAIL PROTECTED]         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to