miibus, ed0, and the realpath security advisory

From: Darren Henderson (darren_at_nighttide.net)
Date: 08/05/03

  • Next message: Kenneth Culver: "Re: FreeBSD tool for network bandwidthmeasure ?"
    Date: Tue, 5 Aug 2003 09:52:13 -0400 (EDT)
    To: freebsd-questions@freebsd.org
    
    

    I cvsup'd on 7/3 after this week's realpath advisory, Rebuilt several
    4.8-STABLE systems - most went fine. One system, an old 133Mhz machine
    that acts as a firewall had several problems that weren't present with a
    cvsup from 6/23. dmesg and kernel config below.

    Problems:

    I assume this one is harmless but it is new:
    bios32: Bad BIOS32 Service Directory

    Same for this:
    pcibios: No call entry point

    This is the one causing problems:

    module_register: module miibus/ukphy already exists!
    linker_file_sysinit "miibus.ko" failed to register! 17
    module_register: module pci/ed already exists!
    linker_file_sysinit "if_ed.ko" failed to register! 17

    miibus and ed0 are statically linked yet these still show up. kldstat
    shows that if_ed and miibus have been dynamically loaded even though they
    are already in the kernel.

    I see numerous mentions of this in recent mails but no explanation or work
    around. Difficult to pin down but we begin to see network aberations
    (traffic stops flowing through dc1) in the system after its run for
    awhile (20 minutes) and the system has to be rebooted.

    Remove ed0 from the kernel everything works fine except ed0 is missing,
    (not dynamically loaded this time). miibus no longer shows up in kldstat
    so the statically linked version is running.

    ----------------------------------------------------------------------
    Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
            The Regents of the University of California. All rights reserved.
    FreeBSD 4.8-STABLE #0: Mon Aug 4 21:48:23 EDT 2003
        darren@olmec.nighttide.net:/usr/obj/usr/src/sys/JASPER
    Timecounter "i8254" frequency 1193182 Hz
    Timecounter "TSC" frequency 132632337 Hz
    CPU: Pentium/P54C (132.63-MHz 586-class CPU)
      Origin = "GenuineIntel" Id = 0x52b Stepping = 11
      Features=0x1bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8>
    real memory = 83886080 (81920K bytes)
    avail memory = 78401536 (76564K bytes)
    bios32: Bad BIOS32 Service Directory
    Preloaded elf kernel "kernel" at 0xc031b000.
    Intel Pentium detected, installing workaround for F00F bug
    md0: Malloc disk
    pcibios: No call entry point
    npx0: <math processor> on motherboard
    npx0: INT 16 interface
    pcib0: <Host to PCI bridge> on motherboard
    pci0: <PCI bus> on pcib0
    isab0: <Intel 82371FB PCI to ISA bridge> at device 7.0 on pci0
    isa0: <ISA bus> on isab0
    pci0: <Intel PIIX ATA controller> at 7.1
    bt0: <Buslogic Multi-Master SCSI Host Adapter> port 0xfcec-0xfcef irq 9 at device 17.0 on pci0
    bt0: BT-946C FW Rev. 4.25J Narrow SCSI Host Adapter, SCSI ID 7, 100 CCBs
    pci0: <S3 Trio graphics accelerator> at 18.0 irq 11
    dc0: <ADMtek AN985 10/100BaseTX> port 0xf800-0xf8ff mem 0xf0dffc00-0xf0dfffff irq 11 at device 19.0 on pci0
    dc0: Ethernet address: 00:20:78:11:ac:82
    miibus0: <MII bus> on dc0
    ukphy0: <Generic IEEE 802.3u media interface> on miibus0
    ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
    dc1: <ADMtek AN985 10/100BaseTX> port 0xf400-0xf4ff mem 0xf0dff800-0xf0dffbff irq 11 at device 20.0 on pci0
    dc1: Ethernet address: 00:20:78:11:ac:8f
    miibus1: <MII bus> on dc1
    ukphy1: <Generic IEEE 802.3u media interface> on miibus1
    ukphy1: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
    orm0: <Option ROMs> at iomem 0xc0000-0xc7fff,0xc8000-0xcbfff on isa0
    fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
    fdc0: FIFO enabled, 8 bytes threshold
    fd0: <1440-KB 3.5" drive> on fdc0 drive 0
    atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
    atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
    kbd0 at atkbd0
    psm0: <PS/2 Mouse> irq 12 on atkbdc0
    psm0: model IntelliMouse Explorer, device ID 4
    vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
    sc0: <System console> on isa0
    sc0: VGA <16 virtual consoles, flags=0x200>
    sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
    sio0: type 16550A
    ed0 at port 0x340-0x35f iomem 0xd8000 irq 10 on isa0
    ed0: address 00:40:05:1f:13:a0, type NE2000 (16 bit)
    sbc0: <SoundBlaster 16> at port 0x220-0x22f irq 5 drq 1 flags 0x15 on isa0
    pcm0: <SB16 DSP 4.13> on sbc0
    IP packet filtering initialized, divert enabled, rule-based forwarding enabled, default to deny, logging limited to 100 packets/entry by default
    Waiting 15 seconds for SCSI devices to settle
    sa0 at bt0 bus 0 target 3 lun 0
    sa0: <HP C1533A 9503> Removable Sequential Access SCSI-2 device
    sa0: 10.000MB/s transfers (10.000MHz, offset 8)
    da0 at bt0 bus 0 target 0 lun 0
    da0: <SEAGATE ST39216N 0010> Fixed Direct Access SCSI-3 device
    da0: 10.000MB/s transfers (10.000MHz, offset 15), Tagged Queueing Enabled
    da0: 8761MB (17942584 512 byte sectors: 255H 63S/T 1116C)
    cd0 at bt0 bus 0 target 6 lun 0
    cd0: <PLEXTOR CD-ROM PX-20TS 1.00> Removable CD-ROM SCSI-2 device
    cd0: 10.000MB/s transfers (10.000MHz, offset 15)
    cd0: cd present [326227 x 2048 byte records]
    Mounting root from ufs:/dev/da0s1a
    module_register: module miibus/ukphy already exists!
    linker_file_sysinit "miibus.ko" failed to register! 17
    module_register: module pci/ed already exists!
    linker_file_sysinit "if_ed.ko" failed to register! 17

    ----------------------------------------------------------------------
    machine i386
    cpu I586_CPU
    ident JASPER

    # should calc this its own now
    #maxusers 32
    maxusers 0

    #makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols

    options IPFIREWALL
    options IPFIREWALL_VERBOSE
    options IPFIREWALL_VERBOSE_LIMIT=100
    options IPDIVERT
    options ICMP_BANDLIM #Rate limit bad replies

    options MAXMEM="(80*1024)"
    options INET #InterNETworking
    options FFS #Berkeley Fast Filesystem
    options FFS_ROOT #FFS usable as root device [keep this!]
    options SOFTUPDATES #Enable FFS soft updates support
    options MFS #Memory Filesystem
    #options NFS_ROOT #NFS usable as root device, NFS required
    options MSDOSFS #MSDOS Filesystem
    options CD9660 #ISO 9660 Filesystem
    options PROCFS #Process filesystem
    options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!]
    options SCSI_DELAY=15000 #Delay (in ms) before probing SCSI
    options UCONSOLE #Allow users to grab the console
    options USERCONFIG #boot -c editor
    options VISUAL_USERCONFIG #visual boot -c editor
    options KTRACE #ktrace(1) support
    options SYSVSHM #SYSV-style shared memory
    options SYSVMSG #SYSV-style message queues
    options SYSVSEM #SYSV-style semaphores
    options P1003_1B #Posix P1003_1B real-time extensions
    options _KPOSIX_PRIORITY_SCHEDULING
    options KBD_INSTALL_CDEV # install a CDEV entry in /dev

    device isa
    device pci

    # Floppy drives
    device fdc0 at isa? port IO_FD1 irq 6 drq 2
    device fd0 at fdc0 drive 0

    device bt0 at isa? #device aha0 at isa? #device aic0 at isa?

    # SCSI peripherals
    device scbus # SCSI bus (required)
    device da # Direct Access (disks)
    device sa # Sequential Access (tape etc)
    device cd # CD
    device pass # Passthrough device (direct SCSI access)

    # atkbdc0 controls both the keyboard and the PS/2 mouse
    device atkbdc0 at isa? port IO_KBD
    device atkbd0 at atkbdc? irq 1 flags 0x1
    device psm0 at atkbdc? irq 12

    device vga0 at isa?

    # splash screen/screen saver
    pseudo-device splash

    # syscons is the default console driver, resembling an SCO console
    #device sc0 at isa? flags 0x100
    device sc0 at isa?

    # Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
    #device vt0 at isa?
    #options XSERVER # support for X server on a vt console
    #options FAT_CURSOR # start with block cursor
    # If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines
    #options PCVT_SCANSET=2 # IBM keyboards are non-std

    # Floating point support - do not disable.
    device npx0 at nexus? port IO_NPX irq 13

    # PCCARD (PCMCIA) support
    #device pcic0 at isa?
    #device card
    #device pcic0 at isa? irq 0 port 0x3e0 iomem 0xd0000
    #device ray

    # Serial (COM) ports
    device sio0 at isa? port IO_COM1 flags 0x10 irq 4
    #device sio1 at isa? port IO_COM2 irq 3
    #device sio2 at isa? disable port IO_COM3 irq 5
    #device sio3 at isa? disable port IO_COM4 irq 9

    # Parallel port
    #device ppc0 at isa? irq 7
    #device ppbus # Parallel port bus (required)
    #device lpt # Printer

    # PCI Ethernet NICs that use the common MII bus controller code.
    # NOTE: Be sure to keep the 'device miibus' line in order to use these NICs!
    device miibus # MII bus support
    device dc # DEC/Intel 21143 and various workalikes

    # ISA Ethernet NICs.
    device ed0 at isa? port 0x340 irq 10 iomem 0xd8000

    # Pseudo devices - the number indicates how many units to allocated.
    pseudo-device loop # Network loopback
    pseudo-device ether # Ethernet support
    #pseudo-device ppp 1 # Kernel PPP
    pseudo-device tun # Packet tunnel.
    pseudo-device pty # Pseudo-ttys (telnet etc)
    pseudo-device md # Memory "disks"

    # The `bpf' pseudo-device enables the Berkeley Packet Filter.
    # Be aware of the administrative consequences of enabling this!
    pseudo-device bpf #Berkeley packet filter

    #device pcm0 at isa? irq 5 drq 1 flags 0x0
    device pcm
    device sbc0 at isa? port 0x220 irq 5 drq 1 flags 0x15

    ______________________________________________________________________
    Darren Henderson darren@nighttide.net

                       Help fight junk e-mail, visit http://www.cauce.org/
    _______________________________________________
    freebsd-questions@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-questions
    To unsubscribe, send any mail to "freebsd-questions-unsubscribe@freebsd.org"


  • Next message: Kenneth Culver: "Re: FreeBSD tool for network bandwidthmeasure ?"

    Relevant Pages

    • Re: Testers needed: Joes MFC of USB code
      ... Seldom there will be no lockup, system will be alive and xscanimage ... we obtain good old kernel panic. ... pci0: <PCI bus> on pcib0 ... # The `bpf' pseudo-device enables the Berkeley Packet Filter. ...
      (freebsd-hackers)
    • Re: Testers needed: Joes MFC of USB code
      ... Seldom there will be no lockup, system will be alive and xscanimage ... we obtain good old kernel panic. ... pci0: <PCI bus> on pcib0 ... # The `bpf' pseudo-device enables the Berkeley Packet Filter. ...
      (freebsd-stable)
    • mlx driver related kernel panic in Freebsd 5.2.1-RELEASE
      ... the serial console when it crashes. ... of ram and a Mylex DAC1100 RAID controller. ... CPU: Pentium III/Pentium III Xeon/Celeron ... miibus0: <MII bus> on fxp0 ...
      (freebsd-current)
    • [parisc] 2.6.24-rc3 (64-bit, smp) fails to boot on 9000/785/J5600
      ... v2.6.24-rc3-19-g2ffbb83 fails very early in the boot procedure. ... kernel was compiled using gcc 4.1.2. ... you may need to switch your console. ... # IPVS transport protocol load balancing support ...
      (Linux-Kernel)
    • [parisc] 2.6.24-rc3 (64-bit, smp) fails to boot on 9000/785/J5600
      ... v2.6.24-rc3-19-g2ffbb83 fails very early in the boot procedure. ... kernel was compiled using gcc 4.1.2. ... you may need to switch your console. ... # IPVS transport protocol load balancing support ...
      (Linux-Kernel)