lkml.org 
[lkml]   [1997]   [Mar]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: 2.0.29 SMP freeze on PPro200
    Hello Everyone,

    Took me a while, but today I had time to play with the machine. Good
    news, I think I got the information required.

    Attached is the info about the kernel+machine. A small C program
    t.c which produced a lockup is also provided.

    Gazing at the machine as it approaches lockup, it seems very probable
    that we are looking at an SMP problem at a low memory situation.

    Running 'vmstat 1' shows that the system has the usual 512K free memory,
    but the buffers are down to 200-300K and only 2-3MB are
    cached. The lockup happens just when the program does a 16MB
    fwrite under the described situation.

    The amount of memory that the program should use to produce the
    lockup depends on your setup. On my 64MB machine, using a 16MB
    buffer locks up regularly while a 32MB buffer locks up every
    single time.

    I then built a non-SMP kernel with exactly the same .config and
    I could not get the machine to lock up.

    I hope some of the developers can now reproduce the problem.

    --
    Eyal Lebedinsky (eyal@eyal.emu.id.au)
    #
    # Automatically generated make config: don't edit
    #

    #
    # Code maturity level options
    #
    CONFIG_EXPERIMENTAL=y

    #
    # Loadable module support
    #
    CONFIG_MODULES=y
    CONFIG_MODVERSIONS=y
    CONFIG_KERNELD=y

    #
    # General setup
    #
    # CONFIG_MATH_EMULATION is not set
    CONFIG_NET=y
    # CONFIG_MAX_16M is not set
    CONFIG_PCI=y
    CONFIG_PCI_OPTIMIZE=y
    CONFIG_SYSVIPC=y
    CONFIG_BINFMT_AOUT=y
    CONFIG_BINFMT_ELF=y
    CONFIG_BINFMT_JAVA=m
    CONFIG_KERNEL_ELF=y
    # CONFIG_M386 is not set
    # CONFIG_M486 is not set
    # CONFIG_M586 is not set
    CONFIG_M686=y

    #
    # Floppy, IDE, and other block devices
    #
    CONFIG_BLK_DEV_FD=m
    CONFIG_BLK_DEV_IDE=y

    #
    # Please see Documentation/ide.txt for help/info on IDE drives
    #
    # CONFIG_BLK_DEV_HD_IDE is not set
    # CONFIG_BLK_DEV_IDECD is not set
    # CONFIG_BLK_DEV_IDETAPE is not set
    # CONFIG_BLK_DEV_IDE_PCMCIA is not set
    # CONFIG_BLK_DEV_CMD640 is not set
    # CONFIG_BLK_DEV_RZ1000 is not set
    CONFIG_BLK_DEV_TRITON=y
    CONFIG_IDE_CHIPSETS=y

    #
    # Note: most of these also require special kernel boot parameters
    #
    # CONFIG_BLK_DEV_ALI14XX is not set
    # CONFIG_BLK_DEV_DTC2278 is not set
    # CONFIG_BLK_DEV_HT6560B is not set
    # CONFIG_BLK_DEV_PROMISE is not set
    # CONFIG_BLK_DEV_QD6580 is not set
    # CONFIG_BLK_DEV_UMC8672 is not set

    #
    # Additional Block Devices
    #
    CONFIG_BLK_DEV_LOOP=m
    CONFIG_BLK_DEV_MD=y
    CONFIG_MD_LINEAR=m
    CONFIG_MD_STRIPED=m
    CONFIG_BLK_DEV_RAM=m
    CONFIG_BLK_DEV_XD=m
    # CONFIG_BLK_DEV_HD is not set

    #
    # Networking options
    #
    # CONFIG_FIREWALL is not set
    # CONFIG_NET_ALIAS is not set
    CONFIG_INET=y
    # CONFIG_IP_FORWARD is not set
    # CONFIG_IP_MULTICAST is not set
    # CONFIG_IP_ACCT is not set

    #
    # (it is safe to leave these untouched)
    #
    # CONFIG_INET_PCTCP is not set
    CONFIG_INET_RARP=m
    # CONFIG_NO_PATH_MTU_DISCOVERY is not set
    CONFIG_IP_NOSR=y
    CONFIG_SKB_LARGE=y

    #
    #
    #
    CONFIG_IPX=m
    # CONFIG_IPX_INTERN is not set
    CONFIG_ATALK=m
    # CONFIG_AX25 is not set
    # CONFIG_BRIDGE is not set
    # CONFIG_NETLINK is not set

    #
    # SCSI support
    #
    CONFIG_SCSI=y

    #
    # SCSI support type (disk, tape, CD-ROM)
    #
    CONFIG_BLK_DEV_SD=y
    CONFIG_CHR_DEV_ST=m
    CONFIG_BLK_DEV_SR=m
    CONFIG_CHR_DEV_SG=m

    #
    # Some SCSI devices (e.g. CD jukebox) support multiple LUNs
    #
    # CONFIG_SCSI_MULTI_LUN is not set
    CONFIG_SCSI_CONSTANTS=y

    #
    # SCSI low-level drivers
    #
    CONFIG_SCSI_7000FASST=m
    CONFIG_SCSI_AHA152X=m
    CONFIG_SCSI_AHA1542=m
    CONFIG_SCSI_AHA1740=m
    CONFIG_SCSI_AIC7XXX=m
    CONFIG_SCSI_ADVANSYS=m
    CONFIG_SCSI_IN2000=m
    CONFIG_SCSI_AM53C974=m
    CONFIG_SCSI_BUSLOGIC=m
    CONFIG_SCSI_DTC3280=m
    CONFIG_SCSI_EATA_DMA=m
    CONFIG_SCSI_EATA_PIO=m
    CONFIG_SCSI_EATA=m
    CONFIG_SCSI_EATA_TAGGED_QUEUE=y
    CONFIG_SCSI_EATA_LINKED_COMMANDS=y
    CONFIG_SCSI_EATA_MAX_TAGS=16
    CONFIG_SCSI_FUTURE_DOMAIN=m
    CONFIG_SCSI_GENERIC_NCR5380=m
    CONFIG_SCSI_GENERIC_NCR53C400=y
    CONFIG_SCSI_G_NCR5380_PORT=y
    # CONFIG_SCSI_G_NCR5380_MEM is not set
    CONFIG_SCSI_NCR53C406A=m
    # CONFIG_SCSI_NCR53C7xx is not set
    CONFIG_SCSI_NCR53C8XX=y
    CONFIG_SCSI_NCR53C8XX_TAGGED_QUEUE=y
    # CONFIG_SCSI_NCR53C8XX_IOMAPPED is not set
    # CONFIG_SCSI_NCR53C8XX_NO_DISCONNECT is not set
    # CONFIG_SCSI_NCR53C8XX_FORCE_ASYNCHRONOUS is not set
    CONFIG_SCSI_NCR53C8XX_FORCE_SYNC_NEGO=y
    # CONFIG_SCSI_NCR53C8XX_DISABLE_MPARITY_CHECK is not set
    # CONFIG_SCSI_NCR53C8XX_DISABLE_PARITY_CHECK is not set
    CONFIG_SCSI_PPA=m
    CONFIG_SCSI_PAS16=m
    CONFIG_SCSI_QLOGIC_FAS=m
    CONFIG_SCSI_QLOGIC_ISP=m
    CONFIG_SCSI_SEAGATE=m
    CONFIG_SCSI_T128=m
    CONFIG_SCSI_U14_34F=m
    CONFIG_SCSI_U14_34F_LINKED_COMMANDS=y
    CONFIG_SCSI_U14_34F_MAX_TAGS=8
    CONFIG_SCSI_ULTRASTOR=m

    #
    # Network device support
    #
    CONFIG_NETDEVICES=y
    CONFIG_DUMMY=m
    CONFIG_EQUALIZER=m
    CONFIG_DLCI=m
    CONFIG_DLCI_COUNT=24
    CONFIG_DLCI_MAX=8
    CONFIG_SDLA=m
    CONFIG_PLIP=m
    CONFIG_PPP=m

    #
    # CCP compressors for PPP are only built as modules.
    #
    CONFIG_SLIP=m
    CONFIG_SLIP_COMPRESSED=y
    CONFIG_SLIP_SMART=y
    CONFIG_SLIP_MODE_SLIP6=y
    CONFIG_NET_RADIO=y
    CONFIG_BAYCOM=m
    CONFIG_STRIP=m
    CONFIG_WAVELAN=m
    CONFIG_WIC=m
    CONFIG_SCC=m
    CONFIG_NET_ETHERNET=y
    CONFIG_NET_VENDOR_3COM=y
    CONFIG_EL1=m
    CONFIG_EL2=m
    CONFIG_ELPLUS=m
    CONFIG_EL16=m
    CONFIG_EL3=m
    CONFIG_VORTEX=m
    # CONFIG_LANCE is not set
    CONFIG_NET_VENDOR_SMC=y
    CONFIG_WD80x3=m
    CONFIG_ULTRA=m
    CONFIG_SMC9194=m
    CONFIG_NET_ISA=y
    CONFIG_AT1700=m
    CONFIG_E2100=m
    CONFIG_DEPCA=m
    CONFIG_EWRK3=m
    CONFIG_EEXPRESS=m
    CONFIG_EEXPRESS_PRO=m
    CONFIG_FMV18X=m
    CONFIG_HPLAN_PLUS=m
    CONFIG_HPLAN=m
    CONFIG_HP100=m
    CONFIG_ETH16I=m
    CONFIG_NE2000=m
    CONFIG_NI52=m
    CONFIG_NI65=m
    # CONFIG_SEEQ8005 is not set
    # CONFIG_SK_G16 is not set
    CONFIG_NET_EISA=y
    CONFIG_AC3200=m
    CONFIG_APRICOT=m
    CONFIG_DE4X5=m
    CONFIG_DEC_ELCP=m
    CONFIG_DGRS=m
    # CONFIG_ZNET is not set
    CONFIG_NET_POCKET=y
    # CONFIG_ATP is not set
    CONFIG_DE600=m
    CONFIG_DE620=m
    # CONFIG_TR is not set
    # CONFIG_FDDI is not set
    CONFIG_ARCNET=m
    CONFIG_ARCNET_ETH=y
    CONFIG_ARCNET_1051=y

    #
    # ISDN subsystem
    #
    CONFIG_ISDN=m
    CONFIG_ISDN_PPP=y
    CONFIG_ISDN_PPP_VJ=y
    CONFIG_ISDN_MPP=y
    CONFIG_ISDN_AUDIO=y
    CONFIG_ISDN_DRV_ICN=m
    CONFIG_ISDN_DRV_PCBIT=m
    # CONFIG_ISDN_DRV_TELES is not set

    #
    # CD-ROM drivers (not for SCSI or IDE/ATAPI drives)
    #
    CONFIG_CD_NO_IDESCSI=y
    CONFIG_AZTCD=m
    CONFIG_GSCD=m
    CONFIG_SBPCD=m
    CONFIG_MCD=m
    CONFIG_MCDX=m
    CONFIG_OPTCD=m
    CONFIG_CM206=m
    CONFIG_SJCD=m
    # CONFIG_CDI_INIT is not set
    CONFIG_CDU31A=m
    CONFIG_CDU535=m

    #
    # Filesystems
    #
    # CONFIG_QUOTA is not set
    CONFIG_LOCK_MANDATORY=y
    CONFIG_MINIX_FS=m
    CONFIG_EXT_FS=m
    CONFIG_EXT2_FS=y
    CONFIG_XIA_FS=m
    CONFIG_FAT_FS=m
    CONFIG_MSDOS_FS=m
    CONFIG_VFAT_FS=m
    CONFIG_UMSDOS_FS=m
    CONFIG_PROC_FS=y
    CONFIG_NFS_FS=m
    CONFIG_SMB_FS=m
    CONFIG_SMB_WIN95=y
    CONFIG_NCP_FS=m
    CONFIG_ISO9660_FS=m
    CONFIG_HPFS_FS=m
    CONFIG_SYSV_FS=m
    CONFIG_AFFS_FS=m
    CONFIG_AMIGA_PARTITION=y
    CONFIG_UFS_FS=m
    CONFIG_BSD_DISKLABEL=y
    CONFIG_SMD_DISKLABEL=y

    #
    # Character devices
    #
    CONFIG_SERIAL=m
    # CONFIG_DIGI is not set
    CONFIG_CYCLADES=m
    CONFIG_STALDRV=y
    CONFIG_STALLION=m
    CONFIG_ISTALLION=m
    CONFIG_RISCOM8=m
    CONFIG_PRINTER=m
    CONFIG_MOUSE=y
    CONFIG_ATIXL_BUSMOUSE=m
    CONFIG_BUSMOUSE=m
    CONFIG_MS_BUSMOUSE=m
    CONFIG_PSMOUSE=m
    # CONFIG_82C710_MOUSE is not set
    CONFIG_UMISC=y
    # CONFIG_QIC02_TAPE is not set
    CONFIG_FTAPE=m

    #
    # Set IObase/IRQ/DMA for ftape in ./drivers/char/ftape/Makefile
    #
    # CONFIG_APM is not set
    CONFIG_WATCHDOG=y
    # CONFIG_WATCHDOG_NOWAYOUT is not set
    # CONFIG_WDT is not set
    CONFIG_SOFT_WATCHDOG=m
    CONFIG_PCWATCHDOG=m
    CONFIG_RTC=y

    #
    # Sound
    #
    CONFIG_SOUND=m
    # CONFIG_LOWLEVEL_SOUND is not set

    #
    # Kernel hacking
    #
    # CONFIG_PROFILE is not set
    processor : 0
    cpu : 686
    model : Pentium Pro
    vendor_id : GenuineIntel
    stepping : 7
    fdiv_bug : no
    hlt_bug : no
    fpu : yes
    fpu_exception : yes
    cpuid : yes
    wp : yes
    flags : fpu vme de pse tsc msr pae mce cx8 apic 11 mtrr pge mca cmov
    bogomips : 199.07

    processor : 1
    cpu : 686
    model : Pentium Pro
    vendor_id : GenuineIntel
    stepping : 7
    fdiv_bug : no
    hlt_bug : no
    fpu : yes
    fpu_exception : yes
    cpuid : yes
    wp : yes
    flags : fpu vme de pse tsc msr pae mce cx8 apic 11 mtrr pge mca cmov
    bogomips : 199.07
    total: used: free: shared: buffers: cached:
    Mem: 64954368 63778816 1175552 13447168 48467968 4669440
    Swap: 76345344 0 76345344
    MemTotal: 63432 kB
    MemFree: 1148 kB
    MemShared: 13132 kB
    Buffers: 47332 kB
    Cached: 4560 kB
    SwapTotal: 74556 kB
    SwapFree: 74556 kB
    Mar 2 18:29:28 ssa08 syslogd 1.3-3: restart.
    Mar 2 18:29:28 ssa08 kernel: klogd 1.3-3, log source = /proc/kmsg started.
    Mar 2 18:29:28 ssa08 kernel: Loaded 2843 symbols from /System.map.
    Mar 2 18:29:28 ssa08 kernel: Symbols match kernel version 2.0.129.
    Mar 2 18:29:28 ssa08 kernel: Loaded 9 symbols from 4 modules.
    Mar 2 18:29:28 ssa08 kernel: Intel MultiProcessor Specification v1.1
    Mar 2 18:29:28 ssa08 kernel: Virtual Wire compatibility mode.
    Mar 2 18:29:28 ssa08 kernel: OEM ID: INTEL Product ID: 440FX APIC at: 0xFEE00000
    Mar 2 18:29:28 ssa08 kernel: Processor #1 Pentium(tm) Pro APIC version 17
    Mar 2 18:29:28 ssa08 kernel: Processor #0 Pentium(tm) Pro APIC version 17
    Mar 2 18:29:28 ssa08 kernel: I/O APIC #2 Version 17 at 0xFEC00000.
    Mar 2 18:29:28 ssa08 kernel: Processors: 2
    Mar 2 18:29:28 ssa08 kernel: Console: 8 point font, 400 scans
    Mar 2 18:29:28 ssa08 kernel: Console: colour VGA+ 80x50, 1 virtual console (max 63)
    Mar 2 18:29:28 ssa08 kernel: pcibios_init : BIOS32 Service Directory structure at 0x000fdb70
    Mar 2 18:29:28 ssa08 kernel: pcibios_init : BIOS32 Service Directory entry at 0xfdb80
    Mar 2 18:29:28 ssa08 kernel: pcibios_init : PCI BIOS revision 2.10 entry at 0xfdba1
    Mar 2 18:29:28 ssa08 kernel: Probing PCI hardware.
    Mar 2 18:29:28 ssa08 kernel: Calibrating delay loop.. ok - 199.07 BogoMIPS
    Mar 2 18:29:28 ssa08 kernel: Memory: 63432k/65536k available (572k kernel code, 384k reserved, 1148k data)
    Mar 2 18:29:28 ssa08 kernel: Swansea University Computer Society NET3.035 for Linux 2.0
    Mar 2 18:29:28 ssa08 kernel: NET3: Unix domain sockets 0.13 for Linux NET3.035.
    Mar 2 18:29:28 ssa08 kernel: Swansea University Computer Society TCP/IP for NET3.034
    Mar 2 18:29:28 ssa08 kernel: IP Protocols: ICMP, UDP, TCP
    Mar 2 18:29:28 ssa08 kernel: Checking 386/387 coupling... Ok, fpu using exception 16 error reporting.
    Mar 2 18:29:28 ssa08 kernel: Checking 'hlt' instruction... Ok.
    Mar 2 18:29:28 ssa08 kernel: Linux version 2.0.129 (root@ssa08) (gcc version 2.7.2.1) #1 Thu Feb 13 11:27:36 EST 1997
    Mar 2 18:29:28 ssa08 kernel: Booting processor 0 stack 00002000: Calibrating delay loop.. ok - 199.07 BogoMIPS
    Mar 2 18:29:28 ssa08 kernel: Total of 2 processors activated (398.13 BogoMIPS).
    Mar 2 18:29:28 ssa08 kernel: Real Time Clock Driver v1.07
    Mar 2 18:29:28 ssa08 kernel: ide: i82371 PIIX (Triton) on PCI bus 0 function 57
    Mar 2 18:29:28 ssa08 kernel: ide0: BM-DMA at 0xffa0-0xffa7
    Mar 2 18:29:28 ssa08 kernel: ide1: BM-DMA at 0xffa8-0xffaf
    Mar 2 18:29:28 ssa08 kernel: hda: WDC AC31600H, 1549MB w/128kB Cache, LBA, CHS=787/64/63, DMA
    Mar 2 18:29:28 ssa08 kernel: hdc: ST51080A, 1033MB w/128kB Cache, LBA, CHS=2100/16/63
    Mar 2 18:29:28 ssa08 kernel: ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
    Mar 2 18:29:28 ssa08 kernel: ide1 at 0x170-0x177,0x376 on irq 15
    Mar 2 18:29:28 ssa08 kernel: md driver 0.35 MAX_MD_DEV=4, MAX_REAL=8
    Mar 2 18:29:28 ssa08 kernel: ncr53c8xx : at PCI bus 0, device 18, function 0
    Mar 2 18:29:28 ssa08 kernel: ncr_attach: unit=0 chip=810 base=febfff00, io_port=ec00, irq=9
    Mar 2 18:29:28 ssa08 kernel: ncr53c810-0: using memory mapped IO at virtual address 0x4843f00
    Mar 2 18:29:28 ssa08 kernel: ncr53c810-0: assuming 40MHz clock
    Mar 2 18:29:28 ssa08 kernel: ncr53c810-0: initial value of SCNTL3 = 03, final = 13
    Mar 2 18:29:28 ssa08 kernel: ncr53c810-0: requesting shared irq 9 (dev_id=0x3ffc068)
    Mar 2 18:29:28 ssa08 kernel: ncr53c810-0: restart (scsi reset).
    Mar 2 18:29:28 ssa08 kernel: scsi0 : ncr53c8xx (rel 1.12d)
    Mar 2 18:29:28 ssa08 kernel: scsi : 1 host.
    Mar 2 18:29:28 ssa08 kernel: Started kswapd v 1.4.2.2
    Mar 2 18:29:28 ssa08 kernel: ncr53c810-0-<target 0, lun 0>: using tagged command queueing, up to 4 cmds/lun
    Mar 2 18:29:28 ssa08 kernel: Vendor: QUANTUM Model: XP34301 Rev: 1037
    Mar 2 18:29:28 ssa08 kernel: Type: Direct-Access ANSI SCSI revision: 02
    Mar 2 18:29:28 ssa08 kernel: Detected scsi disk sda at scsi0, channel 0, id 0, lun 0
    Mar 2 18:29:28 ssa08 kernel: ncr53c810-0-<target 1, lun 0>: using tagged command queueing, up to 4 cmds/lun
    Mar 2 18:29:28 ssa08 kernel: Vendor: QUANTUM Model: XP34301 Rev: 1037
    Mar 2 18:29:28 ssa08 kernel: Type: Direct-Access ANSI SCSI revision: 02
    Mar 2 18:29:28 ssa08 kernel: Detected scsi disk sdb at scsi0, channel 0, id 1, lun 0
    Mar 2 18:29:28 ssa08 kernel: scsi : detected 2 SCSI disks total.
    Mar 2 18:29:28 ssa08 kernel: ncr53c810-0-<target 0, lun 0>: FAST SCSI-2 100ns (10 Mb/sec) offset 8.
    Mar 2 18:29:28 ssa08 kernel: SCSI device sda: hdwr sector= 512 bytes. Sectors= 8410200 [4106 MB] [4.1 GB]
    Mar 2 18:29:28 ssa08 kernel: ncr53c810-0-<target 1, lun 0>: FAST SCSI-2 100ns (10 Mb/sec) offset 8.
    Mar 2 18:29:28 ssa08 kernel: SCSI device sdb: hdwr sector= 512 bytes. Sectors= 8410200 [4106 MB] [4.1 GB]
    Mar 2 18:29:28 ssa08 kernel: Partition check:
    Mar 2 18:29:28 ssa08 kernel: sda: sda1 sda2 sda3 sda4
    Mar 2 18:29:28 ssa08 kernel: sdb: sdb1
    Mar 2 18:29:28 ssa08 kernel: hda: hda1 hda2 hda3 < hda5 hda6 hda7 hda8 hda9 >
    Mar 2 18:29:28 ssa08 kernel: hdc: [PTBL] [525/64/63] hdc1 < hdc5 >
    Mar 2 18:29:28 ssa08 kernel: VFS: Mounted root (ext2 filesystem) readonly.
    Mar 2 18:29:28 ssa08 kernel: Adding Swap: 74556k swap-space
    Mar 2 18:29:28 ssa08 kernel: Swansea University Computer Society IPX 0.34 for NET3.035
    Mar 2 18:29:28 ssa08 kernel: IPX Portions Copyright (c) 1995 Caldera, Inc.
    Mar 2 18:29:28 ssa08 kernel: Appletalk 0.17 for Linux NET3.035
    Mar 2 18:29:28 ssa08 kernel: loading device 'eth0'...
    Mar 2 18:29:28 ssa08 kernel: ne.c:v1.10 9/23/94 Donald Becker (becker@cesdis.gsfc.nasa.gov)
    Mar 2 18:29:28 ssa08 kernel: NE*000 ethercard probe at 0x300: 00 40 c7 50 01 18
    Mar 2 18:29:28 ssa08 kernel: eth0: NE2000 found at 0x300, using IRQ 10.
    Mar 2 18:29:32 ssa08 named[167]: starting. named 4.9.5-REL Wed Dec 18 15:39:41 EST 1996 ^Iewt@porky.redhat.com:/usr/src/colgate/BUILD/bind-4.9.5/named
    Mar 2 18:29:32 ssa08 named[167]: cache zone "" loaded (serial 0)
    Mar 2 18:29:32 ssa08 named[168]: Ready to answer queries.
    Mar 2 18:29:32 ssa08 named[168]: sysquery: sendto([198.41.0.4].53): Network is unreachable
    Mar 2 18:29:36 ssa08 kernel: Serial driver version 4.13 with no serial options enabled
    Mar 2 18:29:36 ssa08 kernel: tty00 at 0x03f8 (irq = 4) is a 16550A
    Mar 2 18:29:36 ssa08 kernel: tty01 at 0x02f8 (irq = 3) is a 16550A
    PCI devices found:
    Bus 0, device 20, function 0:
    VGA compatible controller: S3 Inc. Trio32/Trio64 (rev 0).
    Medium devsel. IRQ 11.
    Non-prefetchable 32 bit memory at 0x80000000.
    Bus 0, device 18, function 0:
    SCSI storage controller: NCR 53c810 (rev 2).
    Medium devsel. IRQ 9. Master Capable. Latency=64.
    I/O at 0xec00.
    Non-prefetchable 32 bit memory at 0xfebfff00.
    Bus 0, device 7, function 1:
    IDE interface: Intel 82371SB Natoma/Triton II PIIX3 (rev 0).
    Medium devsel. Fast back-to-back capable. Master Capable. Latency=32.
    I/O at 0xffa0.
    Bus 0, device 7, function 0:
    ISA bridge: Intel 82371SB Natoma/Triton II PIIX3 (rev 1).
    Medium devsel. Fast back-to-back capable. Master Capable. No bursts.
    Bus 0, device 0, function 0:
    Host bridge: Intel 82441FX Natoma (rev 2).
    Medium devsel. Fast back-to-back capable. Master Capable. Latency=32.
    /* Generated by configure. Don't edit!!!! */
    /* Making changes to this file is not as simple as it may look. */

    /* If you change the CONFIG_ settings in local.h you */
    /* _have_ to edit .defines too. */

    #undef CONFIG_PAS
    #define CONFIG_SB
    #undef CONFIG_ADLIB
    #undef CONFIG_GUS
    #undef CONFIG_MPU401
    #undef CONFIG_UART6850
    #undef CONFIG_PSS
    #undef CONFIG_GUS16
    #undef CONFIG_GUSMAX
    #undef CONFIG_MSS
    #undef CONFIG_SSCAPE
    #undef CONFIG_TRIX
    #undef CONFIG_MAD16
    #undef CONFIG_CS4232
    #undef CONFIG_MAUI
    #undef CONFIG_PNP
    #define CONFIG_SBPRO
    #define CONFIG_SB16
    #undef CONFIG_AEDSP16
    #define CONFIG_AUDIO
    #define CONFIG_MIDI
    #define CONFIG_YM3812
    #define CONFIG_SEQUENCER

    #undef CONFIG_MPU_EMU
    #undef CONFIG_AD1848

    #define SBC_BASE 0x220
    #define SBC_IRQ 5
    #define SBC_DMA 1
    #define SB_DMA2 5
    #define SB_MPU_BASE 0x330
    #define DSP_BUFFSIZE 65536
    #define SELECTED_SOUND_OPTIONS 0x01ab0002
    [unhandled content-type:application/octet-stream]/* t.c
    *
    * Demonstrate the SMP lockup.
    *
    * On my 64MB machine:
    * BUF_SIZE of 1MB works
    * BUF_SIZE of 4MB works
    * BUF_SIZE of 8MB works
    * BUF_SIZE of 16MB locks up (often).
    * BUF_SIZE of 32MB locks up.
    *
    * 't.in' is a 256MB file (build with dd if=/dev/zero ...)
    * I tested with both files on same device and on different ones
    * with same results.
    *
    * build as: gcc -O3 -Wall -o t t.c
    */

    #include <stdio.h>
    #include <stdlib.h>


    #define NBLOCKS 8192
    #define BLKSIZE 2048
    char **blocks = NULL;

    #define REC_SIZE 256
    #define BUF_SIZE (32L*1024L*1024L)
    #define FILE_SIZE (256L*1024L*1024L)
    char *buf = NULL;

    FILE *fin = NULL;
    FILE *fout = NULL;

    static long i = 0;
    static long j = 0;


    static void
    die (int reason)
    {
    char **p;

    if (NULL != blocks) {
    for (p = blocks; p < blocks+NBLOCKS; ++p) {
    if (NULL != *p) {
    free (*p);
    *p = NULL;
    }
    }
    free (blocks);
    blocks = NULL;
    }

    if (NULL != buf) {
    free (buf);
    buf = NULL;
    }

    if (NULL != fin) {
    fclose (fin);
    fin = NULL;
    }

    if (NULL != fout) {
    fclose (fout);
    fout = NULL;
    }

    if (reason) {
    fprintf (stderr, "t: exit %d\n", reason);
    exit (reason);
    }
    }

    static void
    prompt (void)
    {
    fprintf (stderr, "\rt: read %8ld write %8ld/%ld",
    j, i, FILE_SIZE/BUF_SIZE);
    }

    int
    main (int argc, char *argv[], char *envp[])
    {
    char **p;
    char *b;

    blocks = calloc (NBLOCKS, BLKSIZE * sizeof (*blocks));
    if (NULL == blocks) {
    fprintf (stderr, "t: no mem for blocks\n");
    die (1);
    }
    for (p = blocks; p < blocks+NBLOCKS; ++p) {
    *p = malloc (BLKSIZE);
    if (NULL == *p)
    break;
    }
    fprintf (stderr, "t: got %d blocks\n", (int)(p-blocks));

    buf = malloc (BUF_SIZE);
    if (NULL == buf) {
    fprintf (stderr, "t: no mem for buf\n");
    die (2);
    }

    fin = fopen ("t.in", "r");
    if (NULL == fin) {
    fprintf (stderr, "t: open input file failed\n");
    die (3);
    }

    fout = fopen ("t.out", "w");
    if (NULL == fout) {
    fprintf (stderr, "t: open output file failed\n");
    die (3);
    }

    for (i = 0;; ++i) {
    for (b = buf, j = 0; j < BUF_SIZE/REC_SIZE;
    ++j, b += REC_SIZE) {
    fread (b, REC_SIZE, 1, fin);
    if (feof (fin))
    break;
    if (ferror (fin)) {
    fprintf (stderr, "t: read error\n");
    die (4);
    }
    if (!(j%1000))
    prompt ();
    }
    if (0 == j)
    break;
    prompt ();

    fwrite (buf, REC_SIZE, j, fout);
    if (ferror (fout)) {
    fprintf (stderr, "t: write error\n");
    die (4);
    }
    prompt ();
    }
    fprintf (stderr, "\nt: done.\n");

    die (0);
    return (0);
    }
    \
     
     \ /
      Last update: 2005-03-22 13:39    [W:0.084 / U:0.124 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site