On Wed, Jun 20, 2007 at 08:38:44AM +0900, Kazushi Marukawa wrote: > > This would mean something disabled interrupts between copyout() and > > pmap_load() and failed to reenable them, but I didn't find anything > obvious. > > copyout() itself doesn't call pmap_load() so there's probably a trap in > > between that isn't shown by ddb. > > Thanks. I think this is very minor bug since only few of us > are having this problem. That puzzles me too. I wonder if it's something specific to a particular driver we use that others don't? Shall we compare kernel configs? Mine's attached. The only things I'm using that might be unusual for hardware + drivers are: - cgd - bce (the special limited dma mapping) While it's a great idea to do the binary date search looking for a culprit change, I suspect you'll hit the big merge as the culprit, and then it would help to have something else to direct the search.
# $NetBSD: XEN3_DOM0,v 1.6 2006/10/17 19:57:24 bouyer Exp $ # # XEN3_0: Xen 3.0 domain0 kernel include "arch/xen/conf/std.xen" options XEN options XEN3 #Xen 3.x support options DOM0OPS hypervisor* at mainbus? # Xen hypervisor npx0 at hypervisor? # x86 math coprocessor xencons* at hypervisor? # Xen virtual console pci* at hypervisor? bus ? isa0 at hypervisor? vcpu* at hypervisor? # Xen virtual CPUs xenbus* at hypervisor? # Xen virtual bus acpi0 at hypervisor? options MPBIOS options MPDEBUG options MPVERBOSE #options PCI_ADDR_FIXUP # fixup PCI I/O addresses #options PCI_BUS_FIXUP # fixup PCI bus numbering #options PCI_INTR_FIXUP # fixup PCI interrupt routing options DEBUG ioapic* at mainbus? apid ? # xen pseudo-devices pseudo-device xvif pseudo-device xbdback pseudo-device xenevt # HACK HACK old _oenone_ config - factor out. # $NetBSD: GENERIC_LAPTOP,v 1.207 2006/09/19 13:58:56 jmmv Exp $ #include "arch/i386/conf/std.i386" options INCLUDE_CONFIG_FILE # embed config file in kernel binary options MSGBUFSIZE=24576 options RND_VERBOSE options RND_POOLWORDS=512 options BUFQ_READPRIO options BUFQ_PRIOCSCAN #ident "GENERIC-$Revision: 1.207 $" maxusers 32 # estimated number of users # CPU support. At least one is REQUIRED. options I686_CPU # CPU-related options. #options MULTIPROCESSOR #options VM86 # virtual 8086 emulation #options USER_LDT # user-settable LDT; used by WINE # Enhanced SpeedStep Technology in the Pentium M options ENHANCED_SPEEDSTEP #options MTRR # memory-type range register syscall support #options PERFCTRS # performance-monitoring counters support options MULTIBOOT # Multiboot support (see multiboot(8)) #options MULTIBOOT_SYMTAB_SPACE=1048576 # Standard system options options INSECURE # disable kernel security levels - X needs this options RTC_OFFSET=0 # hardware clock is this many mins. west of GMT options NTP # NTP phase/frequency locked loop options KTRACE # system call tracing via ktrace(1) #options SYSTRACE # system call vetting via systrace(1) options SYSVMSG # System V-like message queues options SYSVSEM # System V-like semaphores #options SEMMNI=10 # number of semaphore identifiers #options SEMMNS=60 # number of semaphores in system #options SEMUME=10 # max number of undo entries per process #options SEMMNU=30 # number of undo structures in system options SYSVSHM # System V-like memory sharing options SHMMAXPGS=16384 # 2048 pages is the default options P1003_1B_SEMAPHORE # p1003.1b semaphore support options USERCONF # userconf(4) support # Diagnostic/debugging support options options DIAGNOSTIC # expensive kernel consistency checks options DDB # in-kernel debugger #options DDB_ONPANIC=1 # see also sysctl(8): `ddb.onpanic' options DDB_HISTORY_SIZE=512 # enable history editing in DDB # Compatibility options options COMPAT_LINUX # binary compatibility with Linux # File systems file-system FFS # UFS file-system EXT2FS # second extended file system (linux) file-system LFS # log-structured file system file-system MFS # memory file system file-system NFS # Network File System client file-system NTFS # Windows/NT file system (experimental) file-system CD9660 # ISO 9660 + Rock Ridge file system file-system MSDOSFS # MS-DOS file system file-system KERNFS # /kern file-system PROCFS # /proc file-system SMBFS # experimental - CIFS; also needs nsmb (below) file-system PTYFS # /dev/ptm support file-system TMPFS # experimental - Efficient memory file-system #file-system UDF # experimental - OSTA UDF CD/DVD file-system file-system PUFFS # File system options options SOFTDEP # FFS soft updates support. #options NFSSERVER # Network File System server #options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and # immutable) behave as system flags. # Networking options options GATEWAY # packet forwarding options INET # IP + ICMP + TCP + UDP options INET6 # IPV6 options IPSEC # IP security options IPSEC_ESP # IP security (encryption part; define w/IPSEC) options IPSEC_NAT_T # IPsec NAT traversal (NAT-T) options IPSEC_DEBUG # debug for IP security options PPP_BSDCOMP # BSD-Compress compression support for PPP options PPP_DEFLATE # Deflate compression support for PPP options PPP_FILTER # Active filter support for PPP (requires bpf) options PFIL_HOOKS # pfil(9) packet filter hooks options IPFILTER_LOG # ipmon(8) log support options IPFILTER_LOOKUP # ippool(8) support #options IPFILTER_DEFAULT_BLOCK # block all packets by default #options TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG # These options enable verbose messages for several subsystems. # Warning, these may compile large string tables into the kernel! options ACPIVERBOSE options MIIVERBOSE # verbose PHY autoconfig messages options PCIVERBOSE # verbose PCI device autoconfig messages options SCSIVERBOSE # human readable SCSI error messages options USBVERBOSE # verbose USB device autoconfig messages # # wscons options # # builtin terminal emulations options WSEMUL_VT100 # VT100 / VT220 emulation options WSDISPLAY_CUSTOM_OUTPUT # color customization from wsconsctl(8) options WS_KERNEL_FG=WSCOL_GREEN options WSDISPLAY_CUSTOM_BORDER # custom border colors via wsconsctl(8) # compatibility to other console drivers options WSDISPLAY_COMPAT_PCVT # emulate some ioctls options WSDISPLAY_COMPAT_SYSCONS # emulate some ioctls options WSDISPLAY_COMPAT_USL # VT handling options WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes options WSDISPLAY_SCROLLSUPPORT # Kernel root file system and dump configuration. config netbsd root on ? type ? # # Device configuration # mainbus0 at root cpu0 at mainbus0 ioapic* at mainbus? # Basic Bus Support # Advanced Configuration and Power Interface #acpi0 at mainbus0 #options ACPI_ACTIVATE_DEV # If set, activate inactive devices #options ACPICA_PEDANTIC # force strict conformance to the Spec. # ACPI devices apm* at acpi? # ACPI apm emulation acpiacad* at acpi? # ACPI AC Adapter acpibat* at acpi? # ACPI Battery acpibut* at acpi? # ACPI Button acpiec* at acpi? # ACPI Embedded Controller acpilid* at acpi? # ACPI Lid Switch acpitz* at acpi? # ACPI Thermal Zone # Mainboard devices attimer* at acpi? # AT Timer com* at acpi? # Serial communications interface #fdc* at acpi? # Floppy disk controller joy* at acpi? # Joystick/Game port lpt* at acpi? # Parallel port mpu* at acpi? # Roland MPU-401 MIDI UART #npx* at acpi? # Math coprocessor pckbc* at acpi? # PC keyboard controller pcppi* at acpi? # AT-style speaker sound #wss* at acpi? # NeoMagic 256AV in wss mode #ym* at acpi? # Yamaha OPL3-SA[23] audio # PCI bus support #pci* at mainbus? bus ? #pci* at pchb? bus ? #pci* at ppb? bus ? # PCI fixups, for both PCIBIOS and ACPI options PCI_ADDR_FIXUP # fixup PCI I/O addresses options PCI_BUS_FIXUP # fixup PCI bus numbering options PCI_INTR_FIXUP # fixup PCI interrupt routing # PCI bridges #ichlpcib* at pci? dev ? function ? # Intel ICH PCI-ISA w/ watchdog and # SpeedStep support pchb* at pci? dev ? function ? # PCI-Host bridges pcib* at pci? dev ? function ? # PCI-ISA bridges ppb* at pci? dev ? function ? # PCI-PCI bridges # ISA bus support #isa0 at ichlpcib? #isa0 at mainbus? isa0 at pcib? # Coprocessor Support # Math Coprocessor support #npx0 at isa? port 0xf0 irq 13 # x86 math coprocessor # Console Devices # wscons pckbc0 at isa? # pc keyboard controller pckbd* at pckbc? # PC keyboard pms* at pckbc? # PS/2 mouse for wsmouse #options PMS_DISABLE_POWERHOOK # Disable PS/2 reset on resume options PMS_SYNAPTICS_TOUCHPAD # Enable support for Synaptics Touchpads vga* at pci? dev ? function ? wsdisplay* at vga? console ? wskbd* at pckbd? console ? wsmouse* at pms? mux 0 attimer0 at isa? pcppi0 at isa? #sysbeep0 at pcppi? # Hardware monitors # LM7[89] and compatible hardware monitors #lm0 at isa? port 0x290 # other common: 0x280, 0x310 # iTE IT87xxF and compatible hardware monitors #it0 at isa? port 0x290 # other ports: 0xc00, 0xd00. # SCSI Controllers and Devices # SCSI bus support scsibus* at scsi? # SCSI devices sd* at scsibus? target ? lun ? # SCSI disk drives st* at scsibus? target ? lun ? # SCSI tape drives cd* at scsibus? target ? lun ? # SCSI CD-ROM drives uk* at scsibus? target ? lun ? # SCSI unknown # IDE and related devices piixide* at pci? dev ? function ? # Intel IDE controllers # ATA (IDE) bus support atabus* at ata? # IDE drives wd* at atabus? drive ? flags 0x0000 # ATAPI bus support atapibus* at atapi? # ATAPI devices # flags have the same meaning as for IDE drives. cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives st* at atapibus? drive ? flags 0x0000 # ATAPI tape drives uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown # Network Interfaces # PCI network interfaces bce* at pci? dev ? function ? # Broadcom 4401 10/100 Ethernet wpi* at pci? dev ? function ? # Intel PRO/Wireless 3945ABG # MII/PHY support ukphy* at mii? phy ? # generic unknown PHYs # USB Controller and Devices # PCI USB controllers ehci* at pci? dev ? function ? # Enhanced Host Controller uhci* at pci? dev ? function ? # Universal Host Controller (Intel) # USB bus support usb* at ehci? usb* at uhci? # USB Hubs uhub* at usb? uhub* at uhub? port ? configuration ? interface ? # USB HID device uhidev* at uhub? port ? configuration ? interface ? # USB Mice ums* at uhidev? reportid ? wsmouse* at ums? mux 0 # USB Keyboards ukbd* at uhidev? reportid ? wskbd* at ukbd? console ? mux 1 # USB serial adapter ucycom* at uhidev? reportid ? # USB Generic HID devices uhid* at uhidev? reportid ? # USB Printer ulpt* at uhub? port ? configuration ? interface ? # USB Modem umodem* at uhub? port ? configuration ? ucom* at umodem? # USB Mass Storage umass* at uhub? port ? configuration ? interface ? wd* at umass? # USB audio uaudio* at uhub? port ? configuration ? # USB MIDI umidi* at uhub? port ? configuration ? # USB IrDA # USB-IrDA bridge spec uirda* at uhub? port ? configuration ? interface ? irframe* at uirda? # SigmaTel STIr4200 USB/IrDA Bridge ustir* at uhub? port ? irframe* at ustir? # USB Ethernet adapters aue* at uhub? port ? # ADMtek AN986 Pegasus based adapters axe* at uhub? port ? # ASIX AX88172 based adapters cue* at uhub? port ? # CATC USB-EL1201A based adapters kue* at uhub? port ? # Kawasaki LSI KL5KUSB101B based adapters url* at uhub? port ? # Realtek RTL8150L based adapters # USB 802.11 adapters atu* at uhub? port ? # Atmel AT76C50XX based adapters ral* at uhub? port ? # Ralink Technology RT25x0 802.11a/b/g # Prolific PL2301/PL2302 host-to-host adapter upl* at uhub? port ? # Serial adapters uftdi* at uhub? port ? # FTDI FT8U100AX serial adapter ucom* at uftdi? portno ? uplcom* at uhub? port ? # I/O DATA USB-RSAQ2 serial adapter ucom* at uplcom? portno ? umct* at uhub? port ? # MCT USB-RS232 serial adapter ucom* at umct? portno ? # USB Generic driver ugen* at uhub? port ? # On ugen bulk endpoints, perform read-ahead and write-behind. options UGEN_BULK_RA_WB # USB generic serial port (e.g., data over cellular) ugensa* at uhub? port ? ucom* at ugensa? # PCI IEEE1394 controllers fwohci* at pci? dev ? function ? # IEEE1394 Open Host Controller ieee1394if* at fwohci? fwip* at ieee1394if? # IP over IEEE1394 sbp* at ieee1394if? euihi ? euilo ? # SCSI over IEEE1394 # Audio Devices # PCI audio devices auich* at pci? dev ? function ? # Intel ICH integrated AC'97 Audio #azalia* at pci? dev ? function ? # High Definition Audio #options AZALIA_DEBUG # Audio support audio* at audiobus? # Bluetooth Controller and Device support # Bluetooth USB Controllers ubt* at uhub? port ? configuration ? interface ? # Bluetooth Device Hub bthub* at ubt? # Bluetooth HID support bthidev* at bthub? # Bluetooth Mouse btms* at bthidev? reportid ? wsmouse* at btms? mux 0 # Bluetooth Keyboard btkbd* at bthidev? reportid ? wskbd* at btkbd? console ? mux 1 # Bluetooth Audio support btsco* at bthub? # Miscellaneous Devices # Pseudo-Devices # disk/mass storage pseudo-devices pseudo-device cgd 4 # cryptographic disk devices pseudo-device fss 4 # file system snapshot device pseudo-device md 1 # memory disk device (ramdisk) pseudo-device vnd # disk-like interface to files #options VND_COMPRESSION # compressed vnd(4) # network pseudo-devices pseudo-device bpfilter # Berkeley packet filter pseudo-device ipfilter # IP filter (firewall) and NAT pseudo-device loop # network loopback pseudo-device ppp # Point-to-Point Protocol pseudo-device pppoe # PPP over Ethernet (RFC 2516) pseudo-device irframetty # IrDA frame line discipline pseudo-device tap # virtual Ethernet pseudo-device tun # network tunneling over tty pseudo-device gre # generic L3 over IP tunnel pseudo-device gif # IPv[46] over IPv[46] tunnel (RFC1933) pseudo-device stf # 6to4 IPv6 over IPv4 encapsulation pseudo-device vlan # IEEE 802.1q encapsulation pseudo-device bridge # simple inter-network bridging options BRIDGE_IPF # bridge uses IP/IPv6 pfil hooks too # miscellaneous pseudo-devices pseudo-device pty # pseudo-terminals pseudo-device rnd # /dev/random and in-kernel generator pseudo-device clockctl # user control of clock subsystem # a pseudo device needed for SMBFS pseudo-device nsmb # experimental - SMB requester # wscons pseudo-devices pseudo-device wsmux # mouse & keyboard multiplexor pseudo-device wsfont
Attachment:
pgpV_ZKB6nUI_.pgp
Description: PGP signature