From: Mauro Carvalho Chehab <mchehab@redhat.com>
To: unlisted-recipients:; (no To-header on input)
Cc: Linux Media Mailing List <linux-media@vger.kernel.org>,
LKML <linux-kernel@vger.kernel.org>
Subject: [PATCH 01/14] [media] v4l2 core: return -ENOIOCTLCMD if an ioctl doesn't exist
Date: Sun, 26 Jun 2011 13:06:07 -0300 [thread overview]
Message-ID: <20110626130607.5931a2f8@pedra> (raw)
In-Reply-To: <cover.1309103285.git.mchehab@redhat.com>
Currently, -EINVAL is used to return either when an IOCTL is not
implemented, or if the ioctl was not implemented.
Note: Drivers that don't use video_ioctl2, will need extra patches.
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
diff --git a/Documentation/DocBook/media/Makefile b/Documentation/DocBook/media/Makefile
index 8cb27f3..93722da 100644
--- a/Documentation/DocBook/media/Makefile
+++ b/Documentation/DocBook/media/Makefile
@@ -117,6 +117,7 @@ ERRORS = \
EPERM \
ERANGE \
EPIPE \
+ ENOIOCTLCMD \
ESCAPE = \
-e "s/&/\\&/g" \
diff --git a/Documentation/DocBook/media/v4l/func-ioctl.xml b/Documentation/DocBook/media/v4l/func-ioctl.xml
index b60fd37..0c97ba9 100644
--- a/Documentation/DocBook/media/v4l/func-ioctl.xml
+++ b/Documentation/DocBook/media/v4l/func-ioctl.xml
@@ -132,14 +132,15 @@ complete the request.</para>
&VIDIOC-S-CTRL; ioctl to a value which is out of bounds.</para>
</listitem>
</varlistentry>
+ <varlistentry>
+ <term><errorcode>ENOIOCTLCMD</errorcode></term>
+ <listitem>
+ <para>The application attempted to use a non-existent ioctl. This is returned by the V4L2 core only.
+ Applications should be able to handle this error code, in order to detect if a new ioctl is
+ not implemented at the current Kernel version. Kernel versions lower than 3.0 returns EINVAL to
+ non-existing ioctl's.</para>
+ </listitem>
+ </varlistentry>
</variablelist>
</refsect1>
</refentry>
-
-<!--
-Local Variables:
-mode: sgml
-sgml-parent-document: "v4l2.sgml"
-indent-tabs-mode: nil
-End:
--->
diff --git a/Documentation/DocBook/media/v4l/v4l2.xml b/Documentation/DocBook/media/v4l/v4l2.xml
index a7fd76d..7bac5f9 100644
--- a/Documentation/DocBook/media/v4l/v4l2.xml
+++ b/Documentation/DocBook/media/v4l/v4l2.xml
@@ -128,6 +128,13 @@ structs, ioctls) must be noted in more detail in the history chapter
applications. -->
<revision>
+ <revnumber>3.0.0</revnumber>
+ <date>2011-06-24</date>
+ <authorinitials>mcc</authorinitials>
+ <revremark>Standardize an error code for invalid ioctl.</revremark>
+ </revision>
+
+ <revision>
<revnumber>2.6.39</revnumber>
<date>2011-03-01</date>
<authorinitials>mcc, po</authorinitials>
diff --git a/drivers/media/video/v4l2-ioctl.c b/drivers/media/video/v4l2-ioctl.c
index 213ba7d..ebdf762 100644
--- a/drivers/media/video/v4l2-ioctl.c
+++ b/drivers/media/video/v4l2-ioctl.c
@@ -542,12 +542,12 @@ static long __video_do_ioctl(struct file *file,
struct v4l2_fh *vfh = NULL;
struct v4l2_format f_copy;
int use_fh_prio = 0;
- long ret = -EINVAL;
+ long ret = -ENOIOCTLCMD;
if (ops == NULL) {
printk(KERN_WARNING "videodev: \"%s\" has no ioctl_ops.\n",
vfd->name);
- return -EINVAL;
+ return ret;
}
if ((vfd->debug & V4L2_DEBUG_IOCTL) &&
--
1.7.1
WARNING: multiple messages have this Message-ID (diff)
From: Mauro Carvalho Chehab <mchehab@redhat.com>
To: unlisted-recipients:; (no To-header on input)@casper.infradead.org
Cc: Linux Media Mailing List <linux-media@vger.kernel.org>,
LKML <linux-kernel@vger.kernel.org>
Subject: [PATCH 01/14] [media] v4l2 core: return -ENOIOCTLCMD if an ioctl doesn't exist
Date: Sun, 26 Jun 2011 13:06:07 -0300 [thread overview]
Message-ID: <20110626130607.5931a2f8@pedra> (raw)
In-Reply-To: <cover.1309103285.git.mchehab@redhat.com>
Currently, -EINVAL is used to return either when an IOCTL is not
implemented, or if the ioctl was not implemented.
Note: Drivers that don't use video_ioctl2, will need extra patches.
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
diff --git a/Documentation/DocBook/media/Makefile b/Documentation/DocBook/media/Makefile
index 8cb27f3..93722da 100644
--- a/Documentation/DocBook/media/Makefile
+++ b/Documentation/DocBook/media/Makefile
@@ -117,6 +117,7 @@ ERRORS = \
EPERM \
ERANGE \
EPIPE \
+ ENOIOCTLCMD \
ESCAPE = \
-e "s/&/\\&/g" \
diff --git a/Documentation/DocBook/media/v4l/func-ioctl.xml b/Documentation/DocBook/media/v4l/func-ioctl.xml
index b60fd37..0c97ba9 100644
--- a/Documentation/DocBook/media/v4l/func-ioctl.xml
+++ b/Documentation/DocBook/media/v4l/func-ioctl.xml
@@ -132,14 +132,15 @@ complete the request.</para>
&VIDIOC-S-CTRL; ioctl to a value which is out of bounds.</para>
</listitem>
</varlistentry>
+ <varlistentry>
+ <term><errorcode>ENOIOCTLCMD</errorcode></term>
+ <listitem>
+ <para>The application attempted to use a non-existent ioctl. This is returned by the V4L2 core only.
+ Applications should be able to handle this error code, in order to detect if a new ioctl is
+ not implemented at the current Kernel version. Kernel versions lower than 3.0 returns EINVAL to
+ non-existing ioctl's.</para>
+ </listitem>
+ </varlistentry>
</variablelist>
</refsect1>
</refentry>
-
-<!--
-Local Variables:
-mode: sgml
-sgml-parent-document: "v4l2.sgml"
-indent-tabs-mode: nil
-End:
--->
diff --git a/Documentation/DocBook/media/v4l/v4l2.xml b/Documentation/DocBook/media/v4l/v4l2.xml
index a7fd76d..7bac5f9 100644
--- a/Documentation/DocBook/media/v4l/v4l2.xml
+++ b/Documentation/DocBook/media/v4l/v4l2.xml
@@ -128,6 +128,13 @@ structs, ioctls) must be noted in more detail in the history chapter
applications. -->
<revision>
+ <revnumber>3.0.0</revnumber>
+ <date>2011-06-24</date>
+ <authorinitials>mcc</authorinitials>
+ <revremark>Standardize an error code for invalid ioctl.</revremark>
+ </revision>
+
+ <revision>
<revnumber>2.6.39</revnumber>
<date>2011-03-01</date>
<authorinitials>mcc, po</authorinitials>
diff --git a/drivers/media/video/v4l2-ioctl.c b/drivers/media/video/v4l2-ioctl.c
index 213ba7d..ebdf762 100644
--- a/drivers/media/video/v4l2-ioctl.c
+++ b/drivers/media/video/v4l2-ioctl.c
@@ -542,12 +542,12 @@ static long __video_do_ioctl(struct file *file,
struct v4l2_fh *vfh = NULL;
struct v4l2_format f_copy;
int use_fh_prio = 0;
- long ret = -EINVAL;
+ long ret = -ENOIOCTLCMD;
if (ops == NULL) {
printk(KERN_WARNING "videodev: \"%s\" has no ioctl_ops.\n",
vfd->name);
- return -EINVAL;
+ return ret;
}
if ((vfd->debug & V4L2_DEBUG_IOCTL) &&
--
1.7.1
next prev parent reply other threads:[~2011-06-26 16:10 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <cover.1309103285.git.mchehab@redhat.com>
2011-06-26 16:06 ` [PATCH 03/14] [media] v4l2-ioctl: Add a default value for kernel version Mauro Carvalho Chehab
2011-06-26 16:06 ` Mauro Carvalho Chehab
2011-06-26 16:06 ` [PATCH 05/14] [media] Stop using linux/version.h on most video drivers Mauro Carvalho Chehab
2011-06-26 16:06 ` Mauro Carvalho Chehab
2011-06-26 16:06 ` Mauro Carvalho Chehab [this message]
2011-06-26 16:06 ` [PATCH 01/14] [media] v4l2 core: return -ENOIOCTLCMD if an ioctl doesn't exist Mauro Carvalho Chehab
2011-06-27 2:49 ` Linus Torvalds
2011-06-26 16:06 ` [PATCH 06/14] [media] pwc: Use the default version for VIDIOC_QUERYCAP Mauro Carvalho Chehab
2011-06-26 16:06 ` Mauro Carvalho Chehab
2011-06-26 16:06 ` [PATCH 13/14] [media] radio: Use the subsystem version control " Mauro Carvalho Chehab
2011-06-26 16:06 ` Mauro Carvalho Chehab
2011-06-26 16:06 ` [PATCH 04/14] [media] drxd, siano: Remove unused include linux/version.h Mauro Carvalho Chehab
2011-06-26 16:06 ` Mauro Carvalho Chehab
2011-06-26 16:06 ` [PATCH 07/14] [media] ivtv,cx18: Use default version control for VIDIOC_QUERYCAP Mauro Carvalho Chehab
2011-06-26 16:06 ` Mauro Carvalho Chehab
2011-06-26 16:06 ` [PATCH 12/14] [media] Stop using linux/version.h the remaining video drivers Mauro Carvalho Chehab
2011-06-26 16:06 ` Mauro Carvalho Chehab
2011-06-26 16:06 ` [PATCH 08/14] [media] et61x251: Use LINUX_VERSION_CODE for VIDIOC_QUERYCAP Mauro Carvalho Chehab
2011-06-26 16:06 ` Mauro Carvalho Chehab
2011-06-26 16:06 ` [PATCH 09/14] [media] pvrusb2: " Mauro Carvalho Chehab
2011-06-26 16:06 ` Mauro Carvalho Chehab
2011-06-26 16:06 ` [PATCH 10/14] [media] sn9c102: " Mauro Carvalho Chehab
2011-06-26 16:06 ` Mauro Carvalho Chehab
2011-06-26 16:06 ` [PATCH 11/14] [media] uvcvideo: " Mauro Carvalho Chehab
2011-06-26 16:06 ` Mauro Carvalho Chehab
2011-06-27 1:14 ` Laurent Pinchart
2011-06-26 16:06 ` [PATCH 14/14] [media] DocBook/v4l: Document the new system-wide version behavior Mauro Carvalho Chehab
2011-06-26 16:06 ` Mauro Carvalho Chehab
2011-06-26 16:06 ` [PATCH 02/14] [media] return -ENOIOCTLCMD for unsupported ioctl's at legacy drivers Mauro Carvalho Chehab
2011-06-26 16:06 ` Mauro Carvalho Chehab
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110626130607.5931a2f8@pedra \
--to=mchehab@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.