# nvidia-kernel won't install,it thinks I have rivafb [solved]

## geckosenator

Hi, I am trying to install nvidia-kernel.  It worked before on this machine.  Now every time I emerge nvidia-kernel I get:

```
Your kernel was configured to include rivafb support!

The rivafb driver conflicts with the NVIDIA driver, please

reconfigure your kernel and *disable* rivafb support, then

try installing the NVIDIA kernel module again.

*** Failed rivafb sanity check. Bailing out! ***

make[1]: *** [rivafb-sanity-check] Error 1

make[1]: *** Waiting for unfinished jobs....

Your kernel was configured to include rivafb support as

a loadable kernel module.

The rivafb driver conflicts with the NVIDIA driver; the

NVIDIA kernel module will still be built and installed,

but be aware that the NVIDIA driver will not be able to

function properly if the rivafb module is loaded!

*** Failed rivafb module sanity check, but continuing! ***

make: *** [module] Error 2

!!! ERROR: media-video/nvidia-kernel-1.0.6629-r4 failed.

!!! Function linux-mod_src_compile, Line 505, Exitcode 2

!!! Unable to make                                  IGNORE_CC_MISMATCH=yes V=1 SYSSRC=/usr/src/linux SYSOUT=/usr/src/linux clean module.

!!! If you need support, post the topmost build error, NOT this status message.

```

My kernel does not have rivafb support, I want to know why it thinks I do.  Is there a way to override this or force it?  I have tried updating the portage tree from scratch.  Why is it so stupid that it refuses to even install it because it thinks it will confict.  What if someone plans to update the kernel later.

I know the nvidia module will work with the kernel running because I have run x with nvidia and 3d support with this kernel.

thanks for any insightLast edited by geckosenator on Tue Nov 29, 2005 3:00 am; edited 1 time in total

----------

## dgaffuri

It refuses to continue because it sees rivafb built in the kernel (first message). It would continue if it were a module (second message). Anyway I don't see how it can see it configure as built-in and as a module at same time. Which kernel are you using?

----------

## geckosenator

I do not have rivafb as a kernel or module!!  It is incorrectly detecting this.

I compiled my own kernel version 2.6.10

----------

## dgaffuri

This is the check from nvidia install script

```
        #

        # Check if the kernel was compiled with rivafb support. If so, then

        # exit, since our driver no longer works with rivafb.

        #

        RET=1

        VERBOSE=$5

        FILE="linux/autoconf.h"

        if [ -f $HEADERS/$FILE -o -f $OUTPUT/include/$FILE ]; then

            #

            # We are looking at a configured source tree; verify

            # that its configuration doesn't include rivafb using

            # a compile check.

            #

            echo "#include \"linux/autoconf.h\"

            #ifdef CONFIG_FB_RIVA

            #error CONFIG_FB_RIVA defined!!

            #endif

            " > conftest$$.c

            $CC $CFLAGS -c conftest$$.c > /dev/null 2>&1

            rm -f conftest$$.c

            if [ -f conftest$$.o ]; then

                rm -f conftest$$.o

                RET=0

            fi

        else

            CONFIG=$HEADERS/../.config

            if [ -f $CONFIG ]; then

                if [ -z "$(grep "^CONFIG_FB_RIVA=y" $CONFIG)" ]; then

                    RET=0

                fi

            fi

        fi

        if [ "$RET" != "0" ]; then

            echo "Your kernel was configured to include rivafb support!";

            echo "";

            echo "The rivafb driver conflicts with the NVIDIA driver, please";

            echo "reconfigure your kernel and *disable* rivafb support, then";

            echo "try installing the NVIDIA kernel module again.";

            echo "";

            if [ "$VERBOSE" = "full_output" ]; then

                echo -e  "*** Failed rivafb sanity check. Bailing out! ***";

                echo "";

            fi

            exit 1

        else

            exit 0

        fi
```

And a similar one is run for the module. So you should have something wrong in your kernel configuration. Just run

```
grep FB_RIVA /usr/src/linux/include/linux/autoconf.h

grep PB_RIVA /usr/src/linux/.config
```

If your kernel is compiled the first one should apply, if not it should be the second one.

----------

## geckosenator

Thanks I figured out the problem.  It was in autoconf.h even though it wasn't in the .config file.

----------

## dgaffuri

You're welcome. May you please edit the top post and add [solved] to the subject?

----------

## 2lt.chronic

what if its still not in either file?

----------

