diff options
author | Aaron Plattner <aplattner@nvidia.com> | 2013-07-01 08:54:34 -0700 |
---|---|---|
committer | Aaron Plattner <aplattner@nvidia.com> | 2013-07-01 08:54:34 -0700 |
commit | 45f2c99ed857988e274557857edbf494702e037e (patch) | |
tree | bd3ad35e3731ba1a687931420d733c8349dd775b | |
parent | 80e2b650b3280067c4435e401bfbeede5ff305fc (diff) |
319.32319.32
-rw-r--r-- | kernel.c | 9 | ||||
-rw-r--r-- | misc.c | 29 | ||||
-rw-r--r-- | version.mk | 2 |
3 files changed, 25 insertions, 15 deletions
@@ -177,11 +177,10 @@ static int run_conftest(Options *op, Package *p, const char *args, char **result CC = getenv("CC"); if (!CC) CC = "cc"; - cmd = nvstrcat("sh ", p->kernel_module_build_directory, - "/conftest.sh ", CC, " ", CC, " ", arch, " ", - op->kernel_source_path, " ", - op->kernel_output_path, " ", - args, NULL); + cmd = nvstrcat("sh \"", p->kernel_module_build_directory, + "/conftest.sh\" \"", CC, "\" \"", CC, "\" \"", arch, "\" \"", + op->kernel_source_path, "\" \"", op->kernel_output_path, + "\" ", args, NULL); ret = run_command(op, cmd, result, FALSE, 0, TRUE); nvfree(cmd); @@ -2640,7 +2640,8 @@ static char *nouveau_blacklist_file_is_present(Options *op) * * Returns FALSE if the nouveau kernel driver is in use (cause * installation to abort); returns TRUE if the nouveau driver is not - * in use. + * in use and the user has not explicitly requested that the blacklist + * file be written. */ int check_for_nouveau(Options *op) @@ -2655,12 +2656,16 @@ int check_for_nouveau(Options *op) if (op->no_nouveau_check) return TRUE; - if (!nouveau_is_present()) return TRUE; - - ui_error(op, "The Nouveau kernel driver is currently in use " - "by your system. This driver is incompatible with the NVIDIA " - "driver, and must be disabled before proceeding. " - NOUVEAU_POINTER_MESSAGE); + if (nouveau_is_present()) { + ui_error(op, "The Nouveau kernel driver is currently in use " + "by your system. This driver is incompatible with the NVIDIA " + "driver, and must be disabled before proceeding. " + NOUVEAU_POINTER_MESSAGE); + } else if (!op->disable_nouveau) { + /* If novueau isn't loaded, we can return early, unless the user + * explicitly requested for the blacklist file to be written. */ + return TRUE; + } blacklist_files = nouveau_blacklist_file_is_present(op); @@ -2673,7 +2678,13 @@ int check_for_nouveau(Options *op) "initial ramdisk or in your X configuration file. " NOUVEAU_POINTER_MESSAGE, blacklist_files); nvfree(blacklist_files); - return FALSE; + if (!op->disable_nouveau) { + /* If the user explicitly requested that the blacklist files be + * written, don't return early, so that the files can be written + * again, e.g. in case a file is present, but not in the right + * place for this particular system. */ + return FALSE; + } } ret = ui_yes_no(op, op->disable_nouveau, "For some distributions, Nouveau " @@ -2686,7 +2697,7 @@ int check_for_nouveau(Options *op) if (blacklist_files) { ui_message(op, "One or more modprobe configuration files to " - "disable Nouveau, have been written. " + "disable Nouveau have been written. " "For some distributions, this may be sufficient to " "disable Nouveau; other distributions may require " "modification of the initial ramdisk. Please reboot " @@ -1 +1 @@ -NVIDIA_VERSION = 319.23 +NVIDIA_VERSION = 319.32 |