Inappropriate ioctl for device
Mohammad Hedayati
hedayati.mo at gmail.com
Fri Dec 24 16:08:19 UTC 2010
On Fri, Dec 24, 2010 at 7:31 PM, Gary Jennejohn
<gljennjohn at googlemail.com>wrote:
> 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
>
It was a misspelling, I'm doing as bellow, if you mean the u_long.
unsinged long cmd = 0;
len = ioctl(cd, cmd);
More information about the freebsd-hackers
mailing list