summaryrefslogtreecommitdiff
path: root/source/l/hal/patches/fix_ioperm_arguments.patch
diff options
context:
space:
mode:
Diffstat (limited to 'source/l/hal/patches/fix_ioperm_arguments.patch')
-rw-r--r--source/l/hal/patches/fix_ioperm_arguments.patch40
1 files changed, 40 insertions, 0 deletions
diff --git a/source/l/hal/patches/fix_ioperm_arguments.patch b/source/l/hal/patches/fix_ioperm_arguments.patch
new file mode 100644
index 00000000..833e0756
--- /dev/null
+++ b/source/l/hal/patches/fix_ioperm_arguments.patch
@@ -0,0 +1,40 @@
+commit 597c1ffffd61a15a334ce42f2a569c59f0270bcb
+Author: Dmitry Torokhov <dmitry.torokhov@gmail.com>
+Date: Thu Feb 25 02:25:18 2010 -0800
+
+ Fix incorrect arguments to ioperm() call
+
+ The second argument of ioperm() is not the last port to be accessed
+ but rather length of the port range [port, port + len).
+
+ Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
+ Signed-off-by: Martin Pitt <martin.pitt@ubuntu.com>
+
+diff --git a/hald/linux/addons/addon-imac-backlight.c b/hald/linux/addons/addon-imac-backlight.c
+index e869192..54e4ea3 100644
+--- a/hald/linux/addons/addon-imac-backlight.c
++++ b/hald/linux/addons/addon-imac-backlight.c
+@@ -158,7 +158,8 @@ main (int argc, char **argv)
+ goto out;
+ }
+
+- if (ioperm(0xB2, 0xB3, 1) < 0)
++ /* Allow access to ports 0xB2 and 0xB3 */
++ if (ioperm(0xB2, 2, 1) < 0)
+ {
+ HAL_ERROR (("ioperm failed (you should be root)."));
+ exit(1);
+diff --git a/hald/linux/addons/addon-macbookpro-backlight.c b/hald/linux/addons/addon-macbookpro-backlight.c
+index 2a6fef6..c1bbbac 100644
+--- a/hald/linux/addons/addon-macbookpro-backlight.c
++++ b/hald/linux/addons/addon-macbookpro-backlight.c
+@@ -507,7 +507,8 @@ main (int argc, char *argv[])
+ state = INREG(0x7ae4);
+ OUTREG(0x7ae4, state);
+
+- if (ioperm (0x300, 0x304, 1) < 0) {
++ /* Allow access to porta 0x300 through 0x304 */
++ if (ioperm (0x300, 5, 1) < 0) {
+ HAL_ERROR (("ioperm failed (you should be root)."));
+ exit(1);
+ }