Inappropriate ioctl for device

Gary Jennejohn gljennjohn at googlemail.com
Fri Dec 24 16:01:49 UTC 2010


On Fri, 24 Dec 2010 18:17:18 +0330
Mohammad Hedayati <hedayati.mo at gmail.com> wrote:

> I'm writing a simple char device. So far everything went so good
> (read/write), but here I'm going to add support for ioctl.
> 
> int
> ioctl(struct cdev *dev, u_long cmd, caddr_t data, int flags, struct thread *td)
> {
>      int error = 0;
>      uprintf("Here...\n");
>      return(error);
> }
> and I'm calling it here:
> 
> len = ioctl(cd, 0);
> perror("ioctl");
> 
> but when runnig it says:
> 
> ioctl: Inappropriate ioctl for device

Carefully read ioctl(2) and consider that you're passing in 0 as the cmd.
If you still don't understand your error, post again.

Hint: look at /sys/kern/sys_generic.c:^ioctl

-- 
Gary Jennejohn


More information about the freebsd-hackers mailing list