diff options
Diffstat (limited to 'source/l/hal/patches/fix_ioperm_arguments.patch')
-rw-r--r-- | source/l/hal/patches/fix_ioperm_arguments.patch | 40 |
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); + } |