# Help me stop this: nvidiafb autoloads at startup [SOLVED]

## Ast0r

After installing Gentoo on a new media computer (soon to be a MythTv box I hope) I made the mistake of running the command "modules-update", which appears to have caused nvidiafb (which I compiled as a module) to load very early in the startup process. This would be ok, except for the fact that I want to use the nvidia driver so that I can run Xorg.

I can't seem to figure out where it is that the nvidiafb driver is getting loaded, however. I have kernel module autoloading enabled and I imagine that it's udev that is doing it, but I can't tell. I was hoping that someone could point me down the right path to figure out why nvidiafb is being loaded and how to prevent it from loading at startup, since it conflicts with the nvidia driver (obviously). I know that I could just get rid of the nvidiafb module by compiling the kernel again and I will if I don't have another choice, but I really want to understand this.

There are also other modules that I have compiled which are being loaded at startup too, which I would like to prevent from loading.

Relevant info

```
mediabox ~ # lsmod

Module                  Size  Used by

ohci1394               31280  0

8139too                24576  0

nvidiafb               42524  1

cfbcopyarea             3840  1 nvidiafb

cfbimgblt               3200  1 nvidiafb

8139cp                 21376  0

ieee1394               86484  1 ohci1394

cfbfillrect             3840  1 nvidiafb

snd_intel8x0           30748  0

snd_ac97_codec         83360  1 snd_intel8x0

snd_ac97_bus            2688  1 snd_ac97_codec

i2c_i801                7692  0

snd_pcm                68612  2 snd_intel8x0,snd_ac97_codec

snd_page_alloc          9864  2 snd_intel8x0,snd_pcm

intel_agp              21404  1

agpgart                30284  1 intel_agp
```

/etc/modules.autoload.d/kernel-2.6

```
8139too

agpgart

intel_agp

nvidia

```

/etc/modules.conf

```
alias char-major-10-175 agpgart

alias char-major-10-200 tun

alias char-major-81     bttv

alias char-major-108    ppp_generic

alias /dev/ppp          ppp_generic

alias tty-ldisc-3       ppp_async

alias tty-ldisc-14      ppp_synctty

alias ppp-compress-21   bsd_comp

alias ppp-compress-24   ppp_deflate

alias ppp-compress-26   ppp_deflate

# Crypto modules (see http://www.kerneli.org/)

alias loop-xfer-gen-0   loop_gen

alias loop-xfer-3       loop_fish2

alias loop-xfer-gen-10  loop_gen

alias cipher-2          des

alias cipher-3          fish2

alias cipher-4          blowfish

alias cipher-6          idea

alias cipher-7          serp6f

alias cipher-8          mars6

alias cipher-11         rc62

alias cipher-15         dfc2

alias cipher-16         rijndael

alias cipher-17         rc5

# Support for i2c and lm_sensors

alias char-major-89    i2c-dev

# Old nvidia support ...

alias char-major-195 NVdriver

alias /dev/nvidiactl char-major-195
```

/etc/modules.d/nvidia

```
alias char-major-195 nvidia

alias /dev/nvidiactl char-major-195
```

```
mediabox ~ # dmesg

Linux version 2.6.18-gentoo-r6 (root@livecd) (gcc version 4.1.1 (Gentoo 4.1.1)) #1 SMP PREEMPT Tue Jan 2 17:43:00 CST 2007

BIOS-provided physical RAM map:

 BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)

 BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)

 BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)

 BIOS-e820: 0000000000100000 - 000000003ffd0000 (usable)

 BIOS-e820: 000000003ffd0000 - 000000003ffdf000 (ACPI data)

 BIOS-e820: 000000003ffdf000 - 0000000040000000 (ACPI NVS)

 BIOS-e820: 00000000ffb80000 - 0000000100000000 (reserved)

127MB HIGHMEM available.

896MB LOWMEM available.

found SMP MP-table at 000ff780

On node 0 totalpages: 262096

  DMA zone: 4096 pages, LIFO batch:0

  Normal zone: 225280 pages, LIFO batch:31

  HighMem zone: 32720 pages, LIFO batch:7

DMI 2.3 present.

ACPI: RSDP (v000 ACPIAM                                ) @ 0x000f5460

ACPI: RSDT (v001 A M I  OEMRSDT  0x09000304 MSFT 0x00000097) @ 0x3ffd0000

ACPI: FADT (v002 A M I  OEMFACP  0x09000304 MSFT 0x00000097) @ 0x3ffd0200

ACPI: MADT (v001 A M I  OEMAPIC  0x09000304 MSFT 0x00000097) @ 0x3ffd0390

ACPI: OEMB (v001 A M I  OEMBIOS  0x09000304 MSFT 0x00000097) @ 0x3ffdf040

ACPI: DSDT (v001  PSLA1 PSLA1069 0x00000069 INTL 0x02002026) @ 0x00000000

ACPI: PM-Timer IO Port: 0x808

ACPI: Local APIC address 0xfee00000

ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)

Processor #0 15:2 APIC version 20

ACPI: LAPIC (acpi_id[0x02] lapic_id[0x01] enabled)

Processor #1 15:2 APIC version 20

ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])

IOAPIC[0]: apic_id 2, version 32, address 0xfec00000, GSI 0-23

ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)

ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)

ACPI: IRQ0 used by override.

ACPI: IRQ2 used by override.

ACPI: IRQ9 used by override.

Enabling APIC mode:  Flat.  Using 1 I/O APICs

Using ACPI (MADT) for SMP configuration information

Allocating PCI resources starting at 50000000 (gap: 40000000:bfb80000)

Detected 2600.240 MHz processor.

Built 1 zonelists.  Total pages: 262096

Kernel command line: root=/dev/hda2

mapped APIC to ffffd000 (fee00000)

mapped IOAPIC to ffffc000 (fec00000)

Enabling fast FPU save and restore... done.

Enabling unmasked SIMD FPU exception support... done.

Initializing CPU#0

PID hash table entries: 4096 (order: 12, 16384 bytes)

Console: colour VGA+ 80x25

Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)

Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)

Memory: 1034748k/1048384k available (2471k kernel code, 13084k reserved, 1024k data, 176k init, 130880k highmem)

Checking if this processor honours the WP bit even in supervisor mode... Ok.

Calibrating delay using timer specific routine.. 5202.27 BogoMIPS (lpj=2601138)

Mount-cache hash table entries: 512

CPU: After generic identify, caps: bfebfbff 00000000 00000000 00000000 00004400 00000000 00000000

CPU: After vendor identify, caps: bfebfbff 00000000 00000000 00000000 00004400 00000000 00000000

CPU: Trace cache: 12K uops, L1 D cache: 8K

CPU: L2 cache: 512K

CPU: Physical Processor ID: 0

CPU: After all inits, caps: bfebfbff 00000000 00000000 00000080 00004400 00000000 00000000

Intel machine check architecture supported.

Intel machine check reporting enabled on CPU#0.

CPU0: Intel P4/Xeon Extended MCE MSRs (12) available

CPU0: Thermal monitoring enabled

Compat vDSO mapped to ffffe000.

Checking 'hlt' instruction... OK.

Freeing SMP alternatives: 16k freed

ACPI: Core revision 20060707

 tbxface-0107 [01] load_tables           : ACPI Tables successfully acquired

Parsing all Control Methods:

Table [DSDT](id 0005) - 514 Objects with 47 Devices 146 Methods 12 Regions

ACPI Namespace successfully loaded at root c04d0ad0

evxfevnt-0089 [02] enable                : Transition to ACPI mode successful

CPU0: Intel(R) Pentium(R) 4 CPU 2.60GHz stepping 09

Booting processor 1/1 eip 2000

Initializing CPU#1

Calibrating delay using timer specific routine.. 5199.46 BogoMIPS (lpj=2599734)

CPU: After generic identify, caps: bfebfbff 00000000 00000000 00000000 00004400 00000000 00000000

CPU: After vendor identify, caps: bfebfbff 00000000 00000000 00000000 00004400 00000000 00000000

CPU: Trace cache: 12K uops, L1 D cache: 8K

CPU: L2 cache: 512K

CPU: Physical Processor ID: 0

CPU: After all inits, caps: bfebfbff 00000000 00000000 00000080 00004400 00000000 00000000

Intel machine check architecture supported.

Intel machine check reporting enabled on CPU#1.

CPU1: Intel P4/Xeon Extended MCE MSRs (12) available

CPU1: Thermal monitoring enabled

CPU1: Intel(R) Pentium(R) 4 CPU 2.60GHz stepping 09

Total of 2 processors activated (10401.74 BogoMIPS).

ENABLING IO-APIC IRQs

..TIMER: vector=0x31 apic1=0 pin1=2 apic2=-1 pin2=-1

checking TSC synchronization across 2 CPUs: passed.

Brought up 2 CPUs

migration_cost=4

NET: Registered protocol family 16

ACPI: bus type pci registered

PCI: PCI BIOS revision 2.10 entry at 0xf0031, last bus=2

PCI: Using configuration type 1

Setting up standard PCI resources

evgpeblk-0951 [04] ev_create_gpe_block   : GPE 00 to 1F [_GPE] 4 regs on int 0x9

evgpeblk-1048 [03] ev_initialize_gpe_bloc: Found 8 Wake, Enabled 0 Runtime GPEs in this block

Completing Region/Field/Buffer/Package initialization:...........................................................................................................

Initialized 11/12 Regions 42/42 Fields 40/40 Buffers 14/14 Packages (523 nodes)

Initializing Device/Processor/Thermal objects by executing _INI methods:.

Executed 1 _INI methods requiring 0 _STA executions (examined 51 objects)

ACPI: Interpreter enabled

ACPI: Using IOAPIC for interrupt routing

ACPI: PCI Root Bridge [PCI0] (0000:00)

PCI: Probing PCI hardware (bus 00)

PCI quirk: region 0800-087f claimed by ICH4 ACPI/GPIO/TCO

PCI quirk: region 0480-04bf claimed by ICH4 GPIO

PCI: Ignoring BAR0-3 of IDE controller 0000:00:1f.1

Boot video device is 0000:01:00.0

PCI: Transparent bridge - 0000:00:1e.0

ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]

ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0P4._PRT]

ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 *10 11 12 14 15)

ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 10 *11 12 14 15)

ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 *5 6 7 10 11 12 14 15)

ACPI: PCI Interrupt Link [LNKD] (IRQs *3 4 5 6 7 10 11 12 14 15)

ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 6 7 10 11 12 14 15) *0, disabled.

ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 *5 6 7 10 11 12 14 15)

ACPI: PCI Interrupt Link [LNKG] (IRQs 3 4 5 6 7 10 11 12 14 15) *0, disabled.

ACPI: PCI Interrupt Link [LNKH] (IRQs 3 4 5 6 7 10 *11 12 14 15)

Linux Plug and Play Support v0.97 (c) Adam Belay

pnp: PnP ACPI init

pnp: PnP ACPI: found 13 devices

SCSI subsystem initialized

usbcore: registered new driver usbfs

usbcore: registered new driver hub

PCI: Using ACPI for IRQ routing

PCI: If a device doesn't work, try "pci=routeirq".  If it helps, post a report

pnp: 00:09: ioport range 0x680-0x6ff has been reserved

PCI: Bridge: 0000:00:01.0

  IO window: disabled.

  MEM window: fc900000-fe9fffff

  PREFETCH window: d7f00000-f7efffff

PCI: Bridge: 0000:00:1e.0

  IO window: b000-bfff

  MEM window: fea00000-feafffff

  PREFETCH window: disabled.

PCI: Setting latency timer of device 0000:00:1e.0 to 64

NET: Registered protocol family 2

IP route cache hash table entries: 32768 (order: 5, 131072 bytes)

TCP established hash table entries: 131072 (order: 8, 1572864 bytes)

TCP bind hash table entries: 65536 (order: 7, 786432 bytes)

TCP: Hash tables configured (established 131072 bind 65536)

TCP reno registered

Machine check exception polling timer started.

audit: initializing netlink socket (disabled)

audit(1167847385.611:1): initialized

audit: cannot initialize inotify handle

highmem bounce pool size: 64 pages

VFS: Disk quotas dquot_6.5.1

Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)

Installing knfsd (copyright (C) 1996 okir@monad.swb.de).

fuse init (API version 7.7)

Initializing Cryptographic API

io scheduler noop registered

io scheduler cfq registered (default)

lp: driver loaded but no devices found

Real Time Clock Driver v1.12ac

Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled

serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A

00:06: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A

parport: PnPBIOS parport detected.

parport0: PC-style at 0x378 (0x778), irq 7, dma 3 [PCSPP,TRISTATE,COMPAT,ECP,DMA]

lp0: using parport0 (interrupt-driven).

PNP: PS/2 Controller [PNP0303:PS2K] at 0x60,0x64 irq 1

PNP: PS/2 controller doesn't have AUX irq; using default 12

serio: i8042 AUX port at 0x60,0x64 irq 12

serio: i8042 KBD port at 0x60,0x64 irq 1

mice: PS/2 mouse device common for all mice

Floppy drive(s): fd0 is 1.44M

FDC 0 is a post-1991 82077

loop: loaded (max 8 devices)

Linux video capture interface: v2.00

saa7130/34: v4l2 driver version 0.2.14 loaded

Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2

ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx

ICH5: IDE controller at PCI slot 0000:00:1f.1

PCI: Enabling device 0000:00:1f.1 (0005 -> 0007)

ACPI: PCI Interrupt 0000:00:1f.1[A] -> GSI 18 (level, low) -> IRQ 16

ICH5: chipset revision 2

ICH5: not 100% native mode: will probe irqs later

    ide0: BM-DMA at 0xfc00-0xfc07, BIOS settings: hda:DMA, hdb:pio

    ide1: BM-DMA at 0xfc08-0xfc0f, BIOS settings: hdc:DMA, hdd:DMA

Probing IDE interface ide0...

input: AT Translated Set 2 keyboard as /class/input/input0

hda: WDC WD205AA, ATA DISK drive

ide0 at 0x1f0-0x1f7,0x3f6 on irq 14

Probing IDE interface ide1...

hdc: IDE-DVD ROM 16x, ATAPI CD/DVD-ROM drive

hdd: SONY CD-RW CRX215E5, ATAPI CD/DVD-ROM drive

ide1 at 0x170-0x177,0x376 on irq 15

hda: max request size: 128KiB

hda: 40079088 sectors (20520 MB) w/2048KiB Cache, CHS=39761/16/63, UDMA(33)

hda: cache flushes not supported

 hda: hda1 hda2

hdc: ATAPI 40X DVD-ROM drive, 256kB Cache, UDMA(33)

Uniform CD-ROM driver Revision: 3.20

hdd: ATAPI 48X CD-ROM CD-R/RW drive, 2048kB Cache, UDMA(33)

ACPI: PCI Interrupt 0000:00:1d.7[D] -> GSI 23 (level, low) -> IRQ 17

PCI: Setting latency timer of device 0000:00:1d.7 to 64

ehci_hcd 0000:00:1d.7: EHCI Host Controller

ehci_hcd 0000:00:1d.7: new USB bus registered, assigned bus number 1

ehci_hcd 0000:00:1d.7: debug port 1

PCI: cache line size of 128 is not supported by device 0000:00:1d.7

ehci_hcd 0000:00:1d.7: irq 17, io mem 0xfebffc00

ehci_hcd 0000:00:1d.7: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004

usb usb1: configuration #1 chosen from 1 choice

hub 1-0:1.0: USB hub found

hub 1-0:1.0: 8 ports detected

USB Universal Host Controller Interface driver v3.0

ACPI: PCI Interrupt 0000:00:1d.0[A] -> GSI 16 (level, low) -> IRQ 18

PCI: Setting latency timer of device 0000:00:1d.0 to 64

uhci_hcd 0000:00:1d.0: UHCI Host Controller

uhci_hcd 0000:00:1d.0: new USB bus registered, assigned bus number 2

uhci_hcd 0000:00:1d.0: irq 18, io base 0x0000e000

usb usb2: configuration #1 chosen from 1 choice

hub 2-0:1.0: USB hub found

hub 2-0:1.0: 2 ports detected

ACPI: PCI Interrupt 0000:00:1d.1[B] -> GSI 19 (level, low) -> IRQ 19

PCI: Setting latency timer of device 0000:00:1d.1 to 64

uhci_hcd 0000:00:1d.1: UHCI Host Controller

uhci_hcd 0000:00:1d.1: new USB bus registered, assigned bus number 3

uhci_hcd 0000:00:1d.1: irq 19, io base 0x0000e400

usb usb3: configuration #1 chosen from 1 choice

hub 3-0:1.0: USB hub found

hub 3-0:1.0: 2 ports detected

ACPI: PCI Interrupt 0000:00:1d.2[C] -> GSI 18 (level, low) -> IRQ 16

PCI: Setting latency timer of device 0000:00:1d.2 to 64

uhci_hcd 0000:00:1d.2: UHCI Host Controller

uhci_hcd 0000:00:1d.2: new USB bus registered, assigned bus number 4

uhci_hcd 0000:00:1d.2: irq 16, io base 0x0000e800

usb usb4: configuration #1 chosen from 1 choice

hub 4-0:1.0: USB hub found

hub 4-0:1.0: 2 ports detected

ACPI: PCI Interrupt 0000:00:1d.3[A] -> GSI 16 (level, low) -> IRQ 18

PCI: Setting latency timer of device 0000:00:1d.3 to 64

uhci_hcd 0000:00:1d.3: UHCI Host Controller

uhci_hcd 0000:00:1d.3: new USB bus registered, assigned bus number 5

uhci_hcd 0000:00:1d.3: irq 18, io base 0x0000ec00

usb usb5: configuration #1 chosen from 1 choice

hub 5-0:1.0: USB hub found

hub 5-0:1.0: 2 ports detected

Initializing USB Mass Storage driver...

usbcore: registered new driver usb-storage

USB Mass Storage support registered.

i2c /dev entries driver

Advanced Linux Sound Architecture Driver Version 1.0.12rc1 (Thu Jun 22 13:55:50 2006 UTC).

ALSA device list:

  No soundcards found.

ip_conntrack version 2.4 (8190 buckets, 65520 max) - 172 bytes per conntrack

ip_tables: (C) 2000-2006 Netfilter Core Team

TCP bic registered

NET: Registered protocol family 1

NET: Registered protocol family 17

Starting balanced_irq

Using IPI Shortcut mode

Time: tsc clocksource has been installed.

ReiserFS: hda2: found reiserfs format "3.6" with standard journal

ReiserFS: hda2: using ordered data mode

ReiserFS: hda2: journal params: device hda2, size 8192, journal first block 18, max trans len 1024, max batch 900, max commit age 30, max trans age 30

ReiserFS: hda2: checking transaction log (hda2)

ReiserFS: hda2: replayed 8 transactions in 1 seconds

ReiserFS: hda2: Using r5 hash to sort names

VFS: Mounted root (reiserfs filesystem) readonly.

Freeing unused kernel memory: 176k freed

Linux agpgart interface v0.101 (c) Dave Jones

agpgart: Detected an Intel 865 Chipset.

agpgart: AGP aperture is 64M @ 0xf8000000

ACPI: PCI Interrupt 0000:00:1f.3[B] -> GSI 17 (level, low) -> IRQ 20

ACPI: PCI Interrupt 0000:00:1f.5[B] -> GSI 17 (level, low) -> IRQ 20

PCI: Setting latency timer of device 0000:00:1f.5 to 64

intel8x0_measure_ac97_clock: measured 52049 usecs

intel8x0: clocking to 48000

8139cp: 10/100 PCI Ethernet driver v1.2 (Mar 22, 2004)

8139cp 0000:02:0f.0: This (id 10ec:8139 rev 10) is not an 8139C+ compatible chip

8139cp 0000:02:0f.0: Try the "8139too" driver instead.

ACPI: PCI Interrupt 0000:01:00.0[A] -> GSI 16 (level, low) -> IRQ 18

nvidiafb: Device ID: 10de0326

8139too Fast Ethernet driver 0.9.27

nvidiafb: CRTC0 analog found

nvidiafb: CRTC1 analog not found

nvidiafb: EDID found from BUS1

nvidiafb: CRTC 0 appears to have a CRT attached

nvidiafb: Using CRT on CRTC 0

nvidiafb: MTRR set to ON

Console: switching to colour frame buffer device 128x48

nvidiafb: PCI nVidia NV32 framebuffer (64MB @ 0xE0000000)

ACPI: PCI Interrupt 0000:02:0f.0[A] -> GSI 19 (level, low) -> IRQ 19

eth0: RealTek RTL8139 at 0xb400, 00:0c:6e:e1:56:b0, IRQ 19

eth0:  Identified 8139 chip type 'RTL-8101'

ACPI: PCI Interrupt 0000:02:0e.0[A] -> GSI 21 (level, low) -> IRQ 21

ohci1394: fw-host0: OHCI-1394 1.1 (PCI): IRQ=[21]  MMIO=[feaff000-feaff7ff]  Max Packet=[2048]  IR/IT contexts=[4/8]

nvidia: module license 'NVIDIA' taints kernel.

NVRM: The NVIDIA probe routine was not called for 1 device(s).

NVRM: This can occur when a driver such as rivafb, nvidiafb or

NVRM: rivatv was loaded and obtained ownership of the NVIDIA

NVRM: device(s).

NVRM: Try unloading the rivafb, nvidiafb or rivatv kernel module

NVRM: (and/or reconfigure your kernel without rivafb/nvidiafb

NVRM: support), then try loading the NVIDIA kernel module again.

NVRM: No NVIDIA graphics adapter probed!

ieee1394: Host added: ID:BUS[0-00:1023]  GUID[00e01800003d1c4e]

NVRM: The NVIDIA probe routine was not called for 1 device(s).

NVRM: This can occur when a driver such as rivafb, nvidiafb or

NVRM: rivatv was loaded and obtained ownership of the NVIDIA

NVRM: device(s).

NVRM: Try unloading the rivafb, nvidiafb or rivatv kernel module

NVRM: (and/or reconfigure your kernel without rivafb/nvidiafb

NVRM: support), then try loading the NVIDIA kernel module again.

NVRM: No NVIDIA graphics adapter probed!

Adding 755012k swap on /dev/hda1.  Priority:-1 extents:1 across:755012k

eth0: link up, 100Mbps, half-duplex, lpa 0x40A1
```

Help!Last edited by Ast0r on Sat Jan 06, 2007 2:39 am; edited 1 time in total

----------

## Kenji Miyamoto

Disabling automatic module loading should fix the problem.  If you would prefer to keep that feature, get rid of the nvidiafb driver altogether.

----------

## Ast0r

 *Kenji Miyamoto wrote:*   

> Disabling automatic module loading should fix the problem.  If you would prefer to keep that feature, get rid of the nvidiafb driver altogether.

 

I realize both of those things already. I know that the kernel, however, does not arbitrarily load modules. The module autoload should only happen when something needs something from that module. I was hoping for a more elegant solution.

----------

## Element Dave

 *Kenji Miyamoto wrote:*   

> Disabling automatic module loading should fix the problem.  If you would prefer to keep that feature, get rid of the nvidiafb driver altogether.

 

Disabling automatic module loading will not have any effect on his problem.  Nor will it prevent the other unwanted modules loading at boot time.

----------

## Ast0r

Well, since I wasn't able to find any information, I went ahead and just recompiled the kernel without the nvidiafb module and then deleted it from /lib/modules/ just to make sure that it wouldn't load. I can load X now, but I am still curious as to how to resolve the issue in another way.

----------

## rmh3093

if you want to use the nvidia X driver then use vesafb or vesafb-tng

----------

## bubbl07

If you don't have nvidiafb in /etc/modules.autoload.d/kernel-2.6 and you're not having the kernel load all modules by default, then it may be coldplug.

In /etc/conf.d/rc, try changing RC_COLDPLUG="yes" to RC_COLDPLUG="no".

----------

## Ast0r

 *bubbl07 wrote:*   

> If you don't have nvidiafb in /etc/modules.autoload.d/kernel-2.6 and you're not having the kernel load all modules by default, then it may be coldplug.
> 
> In /etc/conf.d/rc, try changing RC_COLDPLUG="yes" to RC_COLDPLUG="no".

 

The documentation in /etc/conf.d/rc indicates that RC_COLDPLUG only relates to services. Can you elaborate a little on how it would cause modules to load? The module for my 1394 controller and sound card are being loaded automatically as well and I'm very curious as to how I would stop that from happening, should be I so inclined. I will do what you suggested, but I don't see why that would work.

----------

## PantsMan

[quote="Ast0r"] I know that I could just get rid of the nvidiafb module by compiling the kernel again and I will if I don't have another choice, but I really want to understand this.

/quote]

I also have had problems with this pesky little nvidiafb module.

Basically, it loads and takes over the console display using bootup. I don't think it is loaded by coldplug or udev or anything like that, I think the kernel probes your display adapter itself, and loads the best video display module it can. For an nvidia card, that will be nvidiafb.

Watch your console during boot, early in the boot process you should see the screen flicker and any text that is displayed will change slightly. That will be the nvidiafb module loading and taking over the display.

When i had this problem, i tried a few things and then came to the conclusion that the easiest way to stop the bugger of a thing loading was to do what you have done - just recompile the kernel and specifically not compile nvidiafb. I'm certainly never going to want to use the stupd thing - if it conflicts with the main nvidia driver.. so, who needs it. I agree with you though, it would be nice to know how exactly to stop the stupid thing loading. 

Like rmh3093 mentioned, we need to tell the kernel to use vesafb or vesafb-tng. It should be possible to do this by passing some parameter to the kernel, but I'm not sure what it would be exactly. Probably by appending something like the following to your kernel boot string:

video=vesa

video=vesafb

video=vesafb-tng

but I'm not sure...

In the kernel source there is some documentation about these franebuffer devices in "Documentation/fb/" but I dont have time to wade through it now.

If you use Lilo bootloader, copy one of your boot entries, rename it, and try adding options like those above to the append= line of the copied entry. If anything goes wrong and it wont boot, then you will still be able to boot up into the original entry without the append="video=vesa" line etc

----------

## bubbl07

 *Ast0r wrote:*   

> The documentation in /etc/conf.d/rc indicates that RC_COLDPLUG only relates to services. Can you elaborate a little on how it would cause modules to load? The module for my 1394 controller and sound card are being loaded automatically as well and I'm very curious as to how I would stop that from happening, should be I so inclined. I will do what you suggested, but I don't see why that would work.

 

From /etc/conf.d/rc:

```
# Dynamic /dev managers can trigger coldplug events which cause services to

# start before we are ready for them. If this happens, we can defer these

# services to start in the boot runlevel. Set RC_COLDPLUG="no" if you don't

# want this.

# NOTE: This also affects module coldplugging in udev-096 and higher

# If you want module coldplugging but not coldplugging of services then you

# can set RC_COLDPLUG="yes" and RC_PLUG_SERVICES="!*"

RC_COLDPLUG="yes"
```

So, assuming you're using udev-103, some modules will be loaded automatically on coldplug.  This may have been what was causing your module to autoload at startup.

----------

## Ast0r

 *bubbl07 wrote:*   

>  *Ast0r wrote:*   The documentation in /etc/conf.d/rc indicates that RC_COLDPLUG only relates to services. Can you elaborate a little on how it would cause modules to load? The module for my 1394 controller and sound card are being loaded automatically as well and I'm very curious as to how I would stop that from happening, should be I so inclined. I will do what you suggested, but I don't see why that would work. 
> 
> From /etc/conf.d/rc:
> 
> ```
> ...

 

Ah; now it makes sense. I forgot that udev now basically has coldplug "built-in" but I was definitely suspicious of udev in all of this. Thanks, I now understand. SOLVED.

----------

