From: Romain Lievin <lkml@lievin.net>
To: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Cc: Greg KH <greg@kroah.com>
Subject: [PATCH] tipar char driver (divide by zero)
Date: Fri, 16 Apr 2004 08:26:35 +0200 [thread overview]
Message-ID: <20040416062635.GA32021@lievin.net> (raw)
Hi,
a set of 2 patches (2.4 & 2.6) about the tipar.c char driver. It fixes a divide-by-zero error when we try to read/write data after setting timeout to 0.
Please apply...
Romain.
============================[cut here]==========================
diff -Naur linux-2.4.23/drivers/char/tipar.c linux/drivers/char/tipar.c
--- linux-2.4.23/drivers/char/tipar.c 2003-06-01 05:06:24.000000000 +0200
+++ linux/drivers/char/tipar.c 2004-03-21 22:19:54.000000000 +0100
@@ -66,7 +66,7 @@
/*
* Version Information
*/
-#define DRIVER_VERSION "1.18"
+#define DRIVER_VERSION "1.19"
#define DRIVER_AUTHOR "Romain Lievin <roms@lpg.ticalc.org>"
#define DRIVER_DESC "Device driver for TI/PC parallel link cables"
#define DRIVER_LICENSE "GPL"
@@ -364,11 +364,14 @@
switch (cmd) {
case IOCTL_TIPAR_DELAY:
- delay = (int)arg; //get_user(delay, &arg);
- break;
+ delay = (int)arg; //get_user(delay, &arg);
+ break;
case IOCTL_TIPAR_TIMEOUT:
- timeout = (int)arg; //get_user(timeout, &arg);
- break;
+ if (arg != 0)
+ timeout = (int)arg;
+ else
+ retval = -EINVAL;
+ break;
default:
retval = -ENOTTY;
break;
@@ -402,7 +405,10 @@
str = get_options(str, ARRAY_SIZE(ints), ints);
if (ints[0] > 0) {
- timeout = ints[1];
+ if (ints[1] != 0)
+ timeout = ints[1];
+ else
+ printk("tipar: wrong timeout value (0), using default value instead.");
if (ints[0] > 1) {
delay = ints[2];
}
============================[cut here]==========================
diff -Naur linux-2.6.3/drivers/char/tipar.c linux/drivers/char/tipar.c
--- linux-2.6.3/drivers/char/tipar.c 2004-02-18 04:58:48.000000000 +0100
+++ linux/drivers/char/tipar.c 2004-03-21 22:11:11.000000000 +0100
@@ -67,7 +67,7 @@
/*
* Version Information
*/
-#define DRIVER_VERSION "1.17"
+#define DRIVER_VERSION "1.19"
#define DRIVER_AUTHOR "Romain Lievin <roms@lpg.ticalc.org>"
#define DRIVER_DESC "Device driver for TI/PC parallel link cables"
#define DRIVER_LICENSE "GPL"
@@ -361,10 +361,13 @@
switch (cmd) {
case IOCTL_TIPAR_DELAY:
- delay = (int)arg; //get_user(delay, &arg);
- break;
+ delay = (int)arg; //get_user(delay, &arg);
+ break;
case IOCTL_TIPAR_TIMEOUT:
- timeout = (int)arg; //get_user(timeout, &arg);
+ if (arg != 0)
+ timeout = (int)arg;
+ else
+ retval = -EINVAL;
break;
default:
retval = -ENOTTY;
@@ -399,7 +402,10 @@
str = get_options(str, ARRAY_SIZE(ints), ints);
if (ints[0] > 0) {
- timeout = ints[1];
+ if (ints[1] != 0)
+ timeout = ints[1];
+ else
+ printk("tipar: wrong timeout value (0), using default value instead.");
if (ints[0] > 1) {
delay = ints[2];
}
--
Romain Liévin (roms): <romain@lievin.net>
Web site: http://www.lievin.net
"Linux, y'a moins bien mais c'est plus cher !"
next reply other threads:[~2004-04-16 6:26 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-04-16 6:26 Romain Lievin [this message]
2004-04-22 21:35 ` [PATCH] tipar char driver (divide by zero) Greg KH
-- strict thread matches above, loose matches on Subject: below --
2004-03-21 21:28 Romain Lievin
2004-03-26 22:26 ` Greg KH
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=20040416062635.GA32021@lievin.net \
--to=lkml@lievin.net \
--cc=greg@kroah.com \
--cc=linux-kernel@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox