As an afterthought, it might be sensible to suppress these
messages. Please try the attached patch.

Nick


On Thu, 10 Feb 2000, Nick Hibma wrote:

> 
> At every load of a PCI driver, all the non-attached drivers are
> reprobed. As a giggle, load the usb module and you see them all appear
> twice.
> 
> Not at all a problem as the message is generated by DEVICE_NOMATCH.
> 
> Nick
> 
> On Thu, 10 Feb 2000, Nikolai Saoukh wrote:
> 
> > Every attempt to kldload any pci driver produce strange message
> > marked by ^^^^ in examples from two different computers.
> > I would call it for a while "undocumented feature".
> > 
> > Copyright (c) 1992-2000 The FreeBSD Project.
> > Copyright (c) 1982, 1986, 1989, 1991, 1993
> >     The Regents of the University of California. All rights reserved.
> > FreeBSD 4.0-CURRENT #1: Wed Jan 19 21:48:46 MSK 2000
> >     nms@Draculina:/xtra/src/sys/compile/DRACULINA
> > Timecounter "i8254"  frequency 1193182 Hz
> > CPU: Pentium/P55C (233.86-MHz 586-class CPU)
> >   Origin = "GenuineIntel"  Id = 0x543  Stepping = 3
> >   Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX>
> > real memory  = 33554432 (32768K bytes)
> > avail memory = 30162944 (29456K bytes)
> > Preloaded elf kernel "kernel" at 0xc027b000.
> > Preloaded userconfig_script "/boot/kernel.conf" at 0xc027b09c.
> > Intel Pentium detected, installing workaround for F00F bug
> > npx0: <math processor> on motherboard
> > npx0: INT 16 interface
> > pcib0: <Host to PCI bridge> on motherboard
> > pci0: <PCI bus> on pcib0
> > isab0: <Intel 82371SB PCI to ISA bridge> at device 7.0 on pci0
> > isa0: <ISA bus> on isab0
> > pci0: Intel PIIX3 ATA controller (vendor=0x8086, dev=0x7010) at 7.1
> > bt0: <Buslogic Multi-Master SCSI Host Adapter> port 0x6400-0x6403 irq 15 at device 
>8.0 on pci0
> > bt0: BT-946C FW Rev. 4.25J Narrow SCSI Host Adapter, SCSI ID 7, 100 CCBs
> > vga-pci0: <S3 ViRGE DX/GX graphics accelerator> mem 0xe0000000-0xe3ffffff irq 11 
>at device 9.0 on pci0
> > de0: <Digital 21140 Fast Ethernet> port 0x6800-0x687f mem 0xe4000000-0xe400007f 
>irq 10 at device 10.0 on pci0
> > de0: SMC 9332DST 21140 [10-100Mb/s] pass 1.2
> > de0: address 00:00:c0:e0:9e:d0
> > de0: enabling 10baseT port
> > xl0: <3Com 3c905B-TX Fast Etherlink XL> port 0x6c00-0x6c7f mem 
>0xe4001000-0xe400107f irq 12 at device 11.0 on pci0
> > xl0: Ethernet address: 00:50:04:4c:ae:5d
> > miibus0: <MII bus> on xl0
> > ukphy0: <Generic IEEE 802.3u media interface> on miibus0
> > ukphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
> > 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-0x6f on isa0
> > atkbd0: <AT Keyboard> irq 1 on atkbdc0
> > vga0: <Generic ISA VGA> at port 0x3b0-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
> > sio1 at port 0x2f8-0x2ff irq 3 on isa0
> > sio1: type 16550A
> > ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
> > ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
> > ppc0: FIFO with 16/16/16 bytes threshold
> > ppc1: <Parallel port> at port 0x278-0x27f irq 5 on isa0
> > ppc1: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
> > IP packet filtering initialized, divert enabled, rule-based forwarding disabled, 
>logging disabled
> > Waiting 3 seconds for SCSI devices to settle
> > Mounting root from ufs:/dev/da0s1a
> > da0 at bt0 bus 0 target 0 lun 0
> > da0: <FUJITSU M1606S-512 6226> Fixed Direct Access SCSI-2 device 
> > da0: 10.000MB/s transfers (10.000MHz, offset 15), Tagged Queueing Enabled
> > da0: 1041MB (2131992 512 byte sectors: 128H 32S/T 520C)
> > da1 at bt0 bus 0 target 1 lun 0
> > da1: <CONNER CFP2107E  2.14GB 1524> Fixed Direct Access SCSI-2 device 
> > da1: 10.000MB/s transfers (10.000MHz, offset 15)
> > da1: 2048MB (4194304 512 byte sectors: 255H 63S/T 261C)
> > da2 at bt0 bus 0 target 2 lun 0
> > da2: <CONNER CFP2107E  2.14GB 1524> Fixed Direct Access SCSI-2 device 
> > da2: 10.000MB/s transfers (10.000MHz, offset 15)
> > da2: 2048MB (4194304 512 byte sectors: 255H 63S/T 261C)
> > vinum: loaded
> > vinum: reading configuration from /dev/da1s1e
> > vinum: updating configuration from /dev/da2s1e
> > de0: enabling Full Duplex 10baseT port
> > pci0: Intel PIIX3 ATA controller (vendor=0x8086, dev=0x7010) at 7.1
> > ^^^^^^
> > pci0: Intel PIIX3 ATA controller (vendor=0x8086, dev=0x7010) at 7.1
> > ^^^^^^
> > 
> > 
> > 
> > Copyright (c) 1992-2000 The FreeBSD Project.
> > Copyright (c) 1982, 1986, 1989, 1991, 1993
> >     The Regents of the University of California. All rights reserved.
> > FreeBSD 4.0-CURRENT #1: Tue Feb  8 15:24:28 MSK 2000
> >     root@Manor:/usr/src/sys/compile/MANOR
> > Timecounter "i8254"  frequency 1193182 Hz
> > CPU: Pentium II/Pentium II Xeon/Celeron (334.09-MHz 686-class CPU)
> >   Origin = "GenuineIntel"  Id = 0x660  Stepping = 0
> >   
>Features=0x183f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR>
> > real memory  = 67096576 (65524K bytes)
> > avail memory = 62672896 (61204K bytes)
> > Preloaded elf kernel "kernel" at 0xc024d000.
> > Preloaded userconfig_script "/boot/kernel.conf" at 0xc024d09c.
> > Pentium Pro MTRR support enabled
> > npx0: <math processor> on motherboard
> > npx0: INT 16 interface
> > apm0: <APM BIOS> on motherboard
> > apm: found APM BIOS v1.2, connected at v1.2
> > pcib0: <Intel 82443BX (440 BX) host to PCI bridge> on motherboard
> > pci0: <PCI bus> on pcib0
> > pcib1: <Intel 82443BX (440 BX) PCI-PCI (AGP) bridge> at device 1.0 on pci0
> > pci1: <PCI bus> on pcib1
> > isab0: <Intel 82371AB PCI to ISA bridge> at device 4.0 on pci0
> > isa0: <ISA bus> on isab0
> > ata-pci0: <Intel PIIX4 ATA-33 controller> port 0xd800-0xd80f at device 4.1 on pci0
> > ata0 at 0x01f0 irq 14 on ata-pci0
> > ata1 at 0x0170 irq 15 on ata-pci0
> > pci0: Intel 82371AB/EB (PIIX4) USB controller (vendor=0x8086, dev=0x7112) at 4.2 
>irq 5
> > chip1: <Intel 82371AB Power management controller> port 0xe800-0xe80f at device 
>4.3 on pci0
> > vga-pci0: <S3 ViRGE graphics accelerator> mem 0xc8000000-0xcbffffff irq 12 at 
>device 10.0 on pci0
> > pci0: unknown card (vendor=0x108d, dev=0x0008) at 11.0 irq 10
> > pci0: unknown card (vendor=0x10b7, dev=0x9050) at 12.0 irq 11
> > 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-0x6f on isa0
> > atkbd0: <AT Keyboard> irq 1 on atkbdc0
> > 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
> > sio1 at port 0x2f8-0x2ff irq 3 on isa0
> > sio1: type 16550A
> > IP packet filtering initialized, divert enabled, rule-based forwarding disabled, 
>logging disabled
> > ad0: 4125MB <FUJITSU MPD3043AT> [8940/15/63] at ata0-master using UDMA33
> > ad1: 19470MB <IBM-DJNA-352030> [39560/16/63] at ata1-master using UDMA33
> > acd0: CDROM <40X CD-ROM> at ata0-slave using PIO4
> > Mounting root from ufs:/dev/ad0a
> > pci0: Intel 82371AB/EB (PIIX4) USB controller (vendor=0x8086, dev=0x7112) at 4.2 
>irq 5
> > ^^^^^^
> > pci0: unknown card (vendor=0x108d, dev=0x0008) at 11.0 irq 10
> > xl0: <3Com 3c905-TX Fast Etherlink XL> port 0xb800-0xb83f irq 11 at device 12.0 on 
>pci0
> > xl0: Ethernet address: 00:00:62:a1:61:20
> > miibus0: <MII bus> on xl0
> > nsphy0: <DP83840 10/100 media interface> on miibus0
> > nsphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
> > pci0: Intel 82371AB/EB (PIIX4) USB controller (vendor=0x8086, dev=0x7112) at 4.2 
>irq 5
> > ^^^^^^
> > ol0: <Olicom RapidFire 3540 100/16/4 Adapter (OC-3540)> port 0xd000-0xd03f mem 
>0xc7800000-0xc7803fff irq 10 at device 11.0 on pci0
> > ol0: MAC address 00:00:83:16:d1:bd
> > ol0: adapter self-test complete (status=0)
> > pci0: Intel 82371AB/EB (PIIX4) USB controller (vendor=0x8086, dev=0x7112) at 4.2 
>irq 5
> > ^^^^^^
> > pci0: Intel 82371AB/EB (PIIX4) USB controller (vendor=0x8086, dev=0x7112) at 4.2 
>irq 5
> > ^^^^^^
> > pci0: Intel 82371AB/EB (PIIX4) USB controller (vendor=0x8086, dev=0x7112) at 4.2 
>irq 5
> > ^^^^^^
> > 
> > 
> > To Unsubscribe: send mail to [EMAIL PROTECTED]
> > with "unsubscribe freebsd-current" in the body of the message
> > 
> 
> --
> [EMAIL PROTECTED]
> [EMAIL PROTECTED]                                          USB project
> http://www.etla.net/~n_hibma/
> 
> 
> 
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-current" in the body of the message
> 

--
[EMAIL PROTECTED]
[EMAIL PROTECTED]                                          USB project
http://www.etla.net/~n_hibma/
Index: kern/subr_bus.c
===================================================================
RCS file: /home/ncvs/src/sys/kern/subr_bus.c,v
retrieving revision 1.51
diff -u -r1.51 subr_bus.c
--- kern/subr_bus.c     1999/12/24 16:21:15     1.51
+++ kern/subr_bus.c     2000/02/11 11:49:06
@@ -1143,12 +1143,13 @@
                device_set_driver(dev, NULL);
                dev->state = DS_NOTPRESENT;
            }
-       } else {
-               BUS_PROBE_NOMATCH(bus, dev);
+       } else if (!(dev->flags & DF_DONENOMATCH)) {
+           BUS_PROBE_NOMATCH(bus, dev);
+           dev->flags |= DF_DONENOMATCH;
        }
     } else {
-           device_print_prettyname(dev);
-           printf("not probed (disabled)\n");
+       device_print_prettyname(dev);
+       printf("not probed (disabled)\n");
     }
 
     return error;
Index: sys/bus_private.h
===================================================================
RCS file: /home/ncvs/src/sys/sys/bus_private.h,v
retrieving revision 1.11
diff -u -r1.11 bus_private.h
--- sys/bus_private.h   1999/09/07 08:42:49     1.11
+++ sys/bus_private.h   2000/02/11 11:37:11
@@ -53,7 +53,6 @@
     char               *name;
     device_t           *devices; /* array of devices indexed by unit */
     int                        maxunit; /* size of devices array */
-    int                        nextunit; /* next unused unit number */
 };
 
 /*
@@ -134,6 +133,7 @@
 #define DF_WILDCARD    4       /* unit was originally wildcard */
 #define DF_DESCMALLOCED        8       /* description was malloced */
 #define DF_QUIET       16      /* don't print verbose attach message */
+#define DF_DONENOMATCH 32      /* done nomatch message, no more */
     u_char             order;  /* order from device_add_child_ordered() */
     u_char             pad;
 #ifdef DEVICE_SYSCTLS

Reply via email to