From owner-freebsd-sparc64@FreeBSD.ORG Sun Oct 12 04:09:11 2014 Return-Path: Delivered-To: freebsd-sparc64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A56A882C for ; Sun, 12 Oct 2014 04:09:11 +0000 (UTC) Received: from mail-vc0-x235.google.com (mail-vc0-x235.google.com [IPv6:2607:f8b0:400c:c03::235]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 667D4F37 for ; Sun, 12 Oct 2014 04:09:11 +0000 (UTC) Received: by mail-vc0-f181.google.com with SMTP id le20so4404238vcb.26 for ; Sat, 11 Oct 2014 21:09:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=dsN403lzHTwk5J3jvmJPYFcG6EabEf8oWlkZMZtjrSU=; b=O9J4yYnUb9vMj24rtFJ2q7LCYgGkCjbDIsa7QdsEVs3MN5+UmHM8TcdqtVY6gV/fQB MFTI4HiQnN1tmfIaMvH54v4fXt9+bcLKVTE4EqexoWXdHh4l2Kb3UmEHwSLax4P1P+mK n5q/mrtepB6yECxFm7I6LU6gvnmp9g7fUjF4T9BSYre+I1m3TP19gvXeJM14gMiEDLkb gXZqWLUwl2ZYYKtRGmy/kNs7ugyN+PXpIlg/fK/H+nLby4d6MF+jEMuiR62wPsofxNRj rx8NB2O1ERX3+TsjVdt0UYfIBzn9qR0eaG3x3UPj1QnAq6b1HI2XG5IOroDQDx/Tg5Rh Daqg== MIME-Version: 1.0 X-Received: by 10.52.137.176 with SMTP id qj16mr10379707vdb.26.1413086950331; Sat, 11 Oct 2014 21:09:10 -0700 (PDT) Received: by 10.31.156.140 with HTTP; Sat, 11 Oct 2014 21:09:10 -0700 (PDT) Date: Sun, 12 Oct 2014 00:09:10 -0400 Message-ID: Subject: silicon image 3124 data corruption with siis driver (10.0 RELEASE, GENERIC) From: David Cross To: freebsd-sparc64@freebsd.org Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.18-1 X-BeenThere: freebsd-sparc64@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Porting FreeBSD to the Sparc List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Oct 2014 04:09:11 -0000 Recently got a silicon image 3124 card to upgrade my Sun Ultra 10 to let it support SATA drives effectively. Put the card in and gave a couple of tests. fscked a 1T filesystem with ~30 million files. No problems, mounted the filesystem and did a checksum of a subdirectory to hundreds of FS errors (looking for blocks well outside of the partition). Unmounted, redid fsck. fine. Redid fsck while doing a 'dd if=/dev/ada1 of=/dev/null' and the fsck instantly died with unexpected errors. Next I did a 'dd if=/dev/ada1 bs=126b count=8192 | sha256' got an answer, re-ran it and got the same answer. reran again while running another dd if=/dev/ada1 bs=126b of=/dev/null in a different terminal and received a different sha256 sum. Kept repeating it and getting different answers. Killed the background dd and received the first answer again. Tried with and without MSI; also tried to fall back and use the ata-siliconimage driver, that one fails to attach (I believe its failing on the LINEAR map, but very hard to tell given there isn't a specific error message in that part of the driver). I repeated this with 2 different cards in an U10 and a U5; these are stock machines, nothing else in them other than this card; I can get a boot verbose later, but this is really a vanilla config. From owner-freebsd-sparc64@FreeBSD.ORG Sun Oct 12 19:15:19 2014 Return-Path: Delivered-To: freebsd-sparc64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E749025D for ; Sun, 12 Oct 2014 19:15:19 +0000 (UTC) Received: from mx.bsdtec.net (mx.bsdtec.net [174.34.171.65]) by mx1.freebsd.org (Postfix) with ESMTP id B8869C9D for ; Sun, 12 Oct 2014 19:15:19 +0000 (UTC) Received: from localhost (mx.bsdtec.net [172.16.32.2]) by mx.bsdtec.net (Postfix) with ESMTP id 6153948989C for ; Sun, 12 Oct 2014 19:15:13 +0000 (UTC) Received: from mx.bsdtec.net ([172.16.32.2]) by localhost (mx.bsdtec.net [172.16.32.2]) (amavisd-new, port 10032) with ESMTP id Je8fcHCgc7XK for ; Sun, 12 Oct 2014 19:15:12 +0000 (UTC) Received: from localhost (mx.bsdtec.net [172.16.32.2]) by mx.bsdtec.net (Postfix) with ESMTP id 8F8D64898C0 for ; Sun, 12 Oct 2014 19:15:12 +0000 (UTC) X-Virus-Scanned: amavisd-new at bsdtec.net Received: from mx.bsdtec.net ([172.16.32.2]) by localhost (mx.bsdtec.net [172.16.32.2]) (amavisd-new, port 10026) with ESMTP id 9LELdqCGCtMU for ; Sun, 12 Oct 2014 19:15:12 +0000 (UTC) Received: from [192.168.1.111] (bsdtec.plus.com [84.92.41.141]) by mx.bsdtec.net (Postfix) with ESMTPSA id 05A1348989C for ; Sun, 12 Oct 2014 19:15:11 +0000 (UTC) Message-ID: <1413141310.4177.6.camel@atlas.lerwick.hopto.org> Subject: something broke... after HEAD installworld From: Craig Butler To: freebsd-sparc64@freebsd.org Date: Sun, 12 Oct 2014 20:15:10 +0100 Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.10.4-0ubuntu2 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-sparc64@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Porting FreeBSD to the Sparc List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Oct 2014 19:15:20 -0000 Howdy Folks Something borked for sparc64 after make installworld upgrading to HEAD(r272668) from 10.0-RELEASE Consoles: Open Firmware console / FreeBSD/sparc64 ZFS enabled bootstrap loader, Revision 1.0 (root@snap.freebsd.org, Fri Jan 17 11:27:29 UTC 2014) bootpath="zfs:zroot/ROOT:" Loading /boot/defaults/loader.conf Memory Address not Aligned kernel (and bootstrap loader) was working in a 10.0 RELEASE world Bummer :( Regards Craig Butler From owner-freebsd-sparc64@FreeBSD.ORG Mon Oct 13 17:11:01 2014 Return-Path: Delivered-To: freebsd-sparc64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 68A5746E for ; Mon, 13 Oct 2014 17:11:01 +0000 (UTC) Received: from mail-vc0-x233.google.com (mail-vc0-x233.google.com [IPv6:2607:f8b0:400c:c03::233]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 18B372A1 for ; Mon, 13 Oct 2014 17:11:01 +0000 (UTC) Received: by mail-vc0-f179.google.com with SMTP id im17so6146150vcb.38 for ; Mon, 13 Oct 2014 10:11:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=OeLK4Orb1VEhr9TeLLoq6D6y0ByJZsMSqn8MW95um1E=; b=Dz4iCspUbYicxF+jc3WYvEPmYoZ6lBroXFO28YE26y1lokZlg8phh1Dt1CVJlWO+e6 A+uDSG9U703KG4eJqe8iweLoNPWTQ18vqZyrRDIfImdVFDZus1B9vIiI/cyEvErPH9k/ CVAfaFK5USW/rfZ9s6Y+g2qjxEryA4+3rWiuaunPPjzjYo0pLqWPS7nLP4so9RY5mZuM mat336GAWgfdHB9MgKvi+KTfirbbdHOrZKJzg2YE4UV0W/FOti+ioct8AcOfBKLyzWRa OjWP0eEbRBZCzeULs160WL/BK2MGEceyE3bxPQMYbkR8mkAFOzF225lLwg1rZyw2o9Yw a34g== MIME-Version: 1.0 X-Received: by 10.52.188.131 with SMTP id ga3mr3234912vdc.45.1413220260103; Mon, 13 Oct 2014 10:11:00 -0700 (PDT) Received: by 10.31.156.140 with HTTP; Mon, 13 Oct 2014 10:11:00 -0700 (PDT) Date: Mon, 13 Oct 2014 13:11:00 -0400 Message-ID: Subject: silicon image 3124 data corruption with siis driver (10.0 RELEASE, GENERIC) (update) From: David Cross To: freebsd-sparc64@freebsd.org Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.18-1 X-BeenThere: freebsd-sparc64@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Porting FreeBSD to the Sparc List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Oct 2014 17:11:01 -0000 Ok, I had a chance to do a bit more research. 1) confirmed 10.1-RC2/sparc64 still has the problem (it does) 2) confirmed 10.0/amd64 doesn't have the problem (it doesn't) 3) attempting to verify with linux or openbsd.. (in progress, this is actually pretty tough to do, I had a spare machine that I installed freebsd onto for testing, and tried and failed to install linux about 5 times now.. ubuntu 10.04 (last LTS to 'support' this hardware chokes instantly on install (reported problem since 8.04, and debian 7.6 has locked 3 times on install now... freebsd runs 100% on it; trying openbsd 5.5 next) In researching similar problems I found that sometimes these cards need help from their BIOS to init correctly, so I grabbed the PCI config space from the amd64 and sparc64 installs: Ultra10 PCI Config Space: 95 10 24 31 87 00 b0 02 01 00 04 01 10 40 00 00 04 20 00 00 00 00 00 00 04 80 00 00 00 00 00 00 01 04 00 00 00 00 00 00 00 00 00 00 95 10 24 71 00 00 08 00 64 00 00 00 00 00 00 00 10 01 00 00 07 54 52 00 f8 ff c3 12 00 00 00 00 00 00 00 00 00 00 00 00 05 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 01 40 22 06 00 20 00 19 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 amd64 config space: 95 10 24 31 87 04 b0 02 01 00 04 01 10 00 00 00 04 f0 8f fd 00 00 00 00 04 00 8f fd 00 00 00 00 01 ef 00 00 00 00 00 00 00 00 00 00 95 10 24 71 00 00 00 00 64 00 00 00 00 00 00 00 12 01 00 00 07 54 52 00 f8 ff c3 12 00 00 00 00 00 00 00 00 00 00 00 00 05 00 81 00 00 10 e0 fe 00 00 00 00 36 00 00 00 01 40 22 06 00 20 00 19 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 The only real difference I noticed here is the latency timer on amd64 is set correctly (per the silicon image 3124 programming referece) to 0; on sparc64 its set to 0x40 (the PCI-X value). I updated that with pciconf -w -b siis0 13 0x00 and still had the problem, I looked at other chips on the PCI bus (hme0) and they had it set to 0x50.. which I tried. Neither value resolved the issue (can I update it on the fly like that, or does it need to be in the driver as part of the init routine? Additionally I grabbed an example of the differences between solo and shared output of the card; the pattern is really bizarre and not what I would expect: Given the test methodology of: dd bs=126b if=/dev/ada1 count=4096 of=somefile and then running: dd bs=126b if=/dev/ada1 of=/dev/null in the background I 'hd' the resulting 'somefiles' and diff them; the results are included below: --- ada1.solo.hd 2014-10-02 18:26:18.000000000 +0000 +++ ada1.new.hd 2014-10-02 18:15:04.000000000 +0000 0086e010 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx 0086e020 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx 0086e030 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx 0086e040 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx -0086e050 xx xx xx xx xx xx xx xx xx xx xx xx 3b 5f 79 67 +0086e050 xx xx xx xx xx xx xx xx xx xx xx xx 00 00 15 00 0086e060 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx [for the sake of brevity I will only show the differences] -0108d050 xx xx xx xx xx xx xx xx xx xx xx xx f6 68 c2 9a +0108d050 xx xx xx xx xx xx xx xx xx xx xx xx 0b 71 f6 71 -0149c880 xx xx xx xx 3c 9a 34 0f xx xx xx xx xx xx xx xx +0149c880 xx xx xx xx 1f d8 dd 9f xx xx xx xx xx xx xx xx -02bde500 xx xx xx xx 52 71 27 93 xx xx xx xx xx xx xx xx +02bde500 xx xx xx xx 61 50 85 d7 xx xx xx xx xx xx xx xx -02fcdd40 xx xx xx xx xx xx xx xx xx xx xx xx a6 96 34 59 +02fcdd40 xx xx xx xx xx xx xx xx xx xx xx xx 2c e4 ec d0 Contrary to those examples, I have seen the 'corruption' be not 32bit aligned, I have seen it span the 0x08 boundary as well as the 0x10 boundary (though that was under a different testing methodology, that was when I noticed the issue on a live FS that led me down this path). The blocksize of 126b (picked because its close to 64k, and is an even multiple of standard ATA sector sizes) is a hex 0xfc00, so these aren't even all in the same location within a block; which would be a single DMA transfer? The first corruption of '00 00 15 00' seems especially odd since its not obviously 'random'; it looks like a command (like an ATA command?) that somehow got mixed into the datastream. Anyway; does anyone have pointers for where to look next on tracking this down? Frustrating having this so close to working! (oh, as promised a dmesg with verbose boot): Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 10.1-RC2 #0 r272876: Fri Oct 10 05:25:28 UTC 2014 root@releng1.nyi.freebsd.org:/usr/obj/sparc64.sparc64/usr/src/sys/GENERIC sparc64 gcc version 4.2.1 20070831 patched [FreeBSD] Preloaded elf kernel "/boot/kernel/kernel" at 0xc0e76000. real memory = 402653184 (384 MB) avail memory = 370155520 (353 MB) machine: SUNW,Ultra-5_10 cpu0: Sun Microsystems UltraSparc-IIi Processor (270.00 MHz CPU) mask=0x12 maxtl=5 maxwin=7 ULE: setup cpu 0 wlan: <802.11 Link Layer> snd_unit_init() u=0x00ff8000 [512] d=0x00007c00 [32] c=0x000003ff [1024] feeder_register: snd_unit=-1 snd_maxautovchans=16 latency=5 feeder_rate_min=1 feeder_rate_max=2016000 feeder_rate_round=25 firmware: 'isp_1000' version 1: 20142 bytes loaded at 0xc090acc8 ispfw: registered firmware firmware: 'isp_1040' version 1: 22944 bytes loaded at 0xc090fb76 ispfw: registered firmware firmware: 'isp_1040_it' version 1: 32942 bytes loaded at 0xc0915516 ispfw: registered firmware firmware: 'isp_1080' version 1: 31350 bytes loaded at 0xc091d5c4 ispfw: registered firmware firmware: 'isp_1080_it' version 1: 40644 bytes loaded at 0xc092503a ispfw: registered firmware firmware: 'isp_12160' version 1: 28050 bytes loaded at 0xc092eefe ispfw: registered firmware firmware: 'isp_12160_it' version 1: 40604 bytes loaded at 0xc0935c90 ispfw: registered firmware firmware: 'isp_2100' version 1: 76770 bytes loaded at 0xc093fb2c ispfw: registered firmware firmware: 'isp_2200' version 1: 77214 bytes loaded at 0xc095270e ispfw: registered firmware firmware: 'isp_2300' version 1: 113630 bytes loaded at 0xc09654ac ispfw: registered firmware firmware: 'isp_2322' version 1: 120466 bytes loaded at 0xc098108a ispfw: registered firmware firmware: 'isp_2400' version 1: 179908 bytes loaded at 0xc09a2284 ispfw: registered firmware firmware: 'isp_2400_multi' version 1: 198628 bytes loaded at 0xc09db0dc ispfw: registered firmware firmware: 'isp_2500' version 1: 142704 bytes loaded at 0xc0a193a8 ispfw: registered firmware firmware: 'isp_2500_multi' version 1: 169352 bytes loaded at 0xc0a4b290 ispfw: registered firmware mem: null: nfslock: pseudo-device Falling back to random adaptor random: initialized kbd0 at kbdmux0 openfirm: nexus0: pcib0: mem 0x1fe00000000-0x1fe0000ffff,0x1fe01000000-0x1fe010000ff irq 2032,2030,2031,2021 on nexus0 pcib0: Sabre, impl 0, version 0, IGN 0x1f, bus A, 66MHz pcib0: DVMA map: 0xc0000000 to 0xc3ffffff 8192 entries pcib0: PROM IOTSB size: 7 (131072 entries) pcib0: bus range 0 to 2; PCI bus 0 initalizing intr_countp pcib0: [GIANT-LOCKED] pci0: on pcib0 pci0: domain=0, physical bus=0 found-> vendor=0x108e, dev=0xa000, revid=0x00 domain=0, bus=0, slot=0, func=0 class=06-00-00, hdrtype=0x00, mfdev=0 cmdreg=0x0146, statreg=0x02a0, cachelnsz=0 (dwords) lattimer=0x40 (1920 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) found-> vendor=0x108e, dev=0x5000, revid=0x11 domain=0, bus=0, slot=1, func=1 class=06-04-00, hdrtype=0x01, mfdev=1 cmdreg=0x0147, statreg=0x02a0, cachelnsz=16 (dwords) lattimer=0x40 (1920 ns), mingnt=0x23 (8750 ns), maxlat=0x00 (0 ns) found-> vendor=0x108e, dev=0x5000, revid=0x11 domain=0, bus=0, slot=1, func=0 class=06-04-00, hdrtype=0x01, mfdev=1 cmdreg=0x0147, statreg=0x02a0, cachelnsz=16 (dwords) lattimer=0x40 (1920 ns), mingnt=0x23 (8750 ns), maxlat=0x00 (0 ns) pcib1: at device 1.1 on pci0 pcib1: domain 0 pcib1: secondary bus 1 pcib1: subordinate bus 1 pcib1: I/O decode 0xc00000-0xdfffff, 0xe00000-0xffffff pcib1: memory decode 0xe0000000-0xffffffff pci1: on pcib1 pci1: domain=0, physical bus=1 found-> vendor=0x108e, dev=0x1000, revid=0x01 domain=0, bus=1, slot=1, func=0 class=06-80-00, hdrtype=0x00, mfdev=1 cmdreg=0x0146, statreg=0x0280, cachelnsz=16 (dwords) lattimer=0x50 (2400 ns), mingnt=0x0a (2500 ns), maxlat=0x19 (6250 ns) map[10]: type Memory, range 32, base 0xf0000000, size 24, enabled pcib1: device (null) requested decoded memory range 0xf0000000-0xf0ffffff map[14]: type Memory, range 32, base 0xf1000000, size 23, enabled pcib1: device (null) requested decoded memory range 0xf1000000-0xf17fffff found-> vendor=0x108e, dev=0x1001, revid=0x01 domain=0, bus=1, slot=1, func=1 class=02-00-00, hdrtype=0x00, mfdev=1 cmdreg=0x0000, statreg=0x0280, cachelnsz=16 (dwords) lattimer=0x50 (2400 ns), mingnt=0x0a (2500 ns), maxlat=0x05 (1250 ns) map[10]: type Memory, range 32, base 0xe0000000, size 15, memory disabled pcib1: device (null) requested decoded memory range 0xe0000000-0xe0007fff found-> vendor=0x1002, dev=0x4754, revid=0x9a domain=0, bus=1, slot=2, func=0 class=03-00-00, hdrtype=0x00, mfdev=0 cmdreg=0x0080, statreg=0x0280, cachelnsz=16 (dwords) lattimer=0x40 (1920 ns), mingnt=0x08 (2000 ns), maxlat=0x00 (0 ns) intpin=a, irq=255 map[10]: type Memory, range 32, base 0xe1000000, size 24, memory disabled pcib1: device (null) requested decoded memory range 0xe1000000-0xe1ffffff map[14]: type I/O Port, range 32, base 0, size 8, port disabled pcib1: device (null) requested unsupported I/O range 0x0-0xff pci1: pci0:1:2:0 bar 0x14 failed to allocate map[18]: type Memory, range 32, base 0, size 12, enabled pcib1: device (null) requested unsupported memory range 0x0-0xfff pci1: pci0:1:2:0 bar 0x18 failed to allocate found-> vendor=0x1095, dev=0x0646, revid=0x03 domain=0, bus=1, slot=3, func=0 class=01-01-8f, hdrtype=0x00, mfdev=0 cmdreg=0x0001, statreg=0x0280, cachelnsz=0 (dwords) lattimer=0x10 (480 ns), mingnt=0x02 (500 ns), maxlat=0x04 (1000 ns) intpin=a, irq=255 map[10]: type I/O Port, range 32, base 0xc00000, size 3, enabled pcib1: device (null) requested decoded I/O range 0xc00000-0xc00007 map[14]: type I/O Port, range 32, base 0xc00008, size 2, enabled pcib1: device (null) requested decoded I/O range 0xc00008-0xc0000b map[18]: type I/O Port, range 32, base 0xc00010, size 3, enabled pcib1: device (null) requested decoded I/O range 0xc00010-0xc00017 map[1c]: type I/O Port, range 32, base 0xc00018, size 2, enabled pcib1: device (null) requested decoded I/O range 0xc00018-0xc0001b map[20]: type I/O Port, range 32, base 0xc00020, size 4, enabled pcib1: device (null) requested decoded I/O range 0xc00020-0xc0002f ebus0: mem 0xf0000000-0xf0ffffff,0xf1000000-0xf17fffff at device 1.0 on pci1 pcib2: at device 1.0 on pci0 pcib2: domain 0 pcib2: secondary bus 2 pcib2: subordinate bus 255 pcib2: I/O decode 0x0-0x1fffff, 0x200000-0x3fffff, 0x400000-0x5fffff, 0x600000-0x7fffff, 0x800000-0x9fffff, 0xa00000-0xbfffff pcib2: memory decode 0x0-0x1fffffff, 0x20000000-0x3fffffff, 0x40000000-0x5fffffff, 0x60000000-0x7fffffff, 0x80000000-0x9fffffff, 0xa0000000-0xbfffffff pci2: on pcib2 pci2: domain=0, physical bus=2 found-> vendor=0x1095, dev=0x3124, revid=0x01 domain=0, bus=2, slot=1, func=0 class=01-04-00, hdrtype=0x00, mfdev=0 cmdreg=0x0080, statreg=0x02b0, cachelnsz=16 (dwords) lattimer=0x40 (1920 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) intpin=a, irq=255 powerspec 2 supports D0 D1 D2 D3 current D0 MSI supports 1 message, 64 bit map[10]: type Memory, range 64, base 0x2000, size 7, memory disabled pcib2: device (null) requested decoded memory range 0x2000-0x207f map[18]: type Memory, range 64, base 0x8000, size 15, enabled pcib2: device (null) requested decoded memory range 0x8000-0xffff map[20]: type I/O Port, range 32, base 0x400, size 4, port disabled pcib2: device (null) requested decoded I/O range 0x400-0x40f auxio0: addr 0x1400726000-0x1400726003,0x1400728000-0x1400728003,0x140072a000-0x140072a003,0x140072c000-0x140072c003,0x140072f000-0x140072f003 on ebus0 ebus0: addr 0x1400724000-0x1400724003 irq 37 (no driver attached) ebus0: addr 0x1400504000-0x1400504002 (no driver attached) scc0: addr 0x1400400000-0x140040007f irq 43 on ebus0 scc0: not resetting hardware uart0: on scc0 uart0: CTS oflow uart0: console (9600,n,8,1) uart0: fast interrupt uart1: on scc0 uart1: CTS oflow uart1: fast interrupt scc0: fast interrupt uart2: <16550 or compatible> addr 0x14003083f8-0x14003083ff irq 41 on ebus0 uart2: keyboard (1200,n,8,1) uart2: fast interrupt uart2: keyboard not present uart3: <16550 or compatible> addr 0x14003062f8-0x14003062ff irq 42 on ebus0 uart3: fast interrupt ebus0: addr 0x14003043bc-0x14003043cb,0x140030015c-0x140030015d,0x1400700000-0x140070000f irq 34 (no driver attached) ebus0: addr 0x14003023f0-0x14003023f7,0x1400706000-0x140070600f,0x1400720000-0x1400720003 irq 39 (no driver attached) eeprom0: addr 0x1400000000-0x1400001fff on ebus0 eeprom0: model mk48t59 eeprom0: mk48txx_attach: battery low eeprom0: cannot attach time of day clock device_attach: eeprom0 attach returned 6 ebus0: addr 0x1000000000-0x10000fffff (no driver attached) pcm0: addr 0x1400200000-0x14002000ff,0x1400702000-0x140070200f,0x1400704000-0x140070400f,0x1400722000-0x1400722003 irq 35,36 on ebus0 pcm0: pcm0: Mixer "pcm": pcm0: Mixer "speaker": pcm0: Mixer "line": pcm0: Mixer "mic": pcm0: Mixer "cd": hme0: mem 0xe0000000-0xe0007fff at device 1.1 on pci1 miibus0: on hme0 nsphy0: PHY 1 on miibus0 nsphy0: OUI 0x1000e8, model 0x0000, rev. 1 nsphy0: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto hme0: bpf attached hme0: Ethernet address: 08:00:20:79:87:9a machfb0: mem 0xe1000000-0xe1ffffff at device 2.0 on pci1 machfb0: 8 MB aperture at 0xd09f6000 swapped machfb0: 2048 KB SGRAM 62.999 MHz, maximum RAMDAC clock 170 MHz, DSP machfb0: resolution 1152x900 at 8 bpp atapci0: port 0xc00000-0xc00007,0xc00008-0xc0000b,0xc00010-0xc00017,0xc00018-0xc0001b,0xc00020-0xc0002f at device 3.0 on pci1 ata2: at channel 0 on atapci0 ata3: at channel 1 on atapci0 siis0: port 0x400-0x40f mem 0x2000-0x207f,0x8000-0xffff at device 1.0 on pci2 siisch0: at channel 0 on siis0 siisch1: at channel 1 on siis0 siisch2: at channel 2 on siis0 siisch3: at channel 3 on siis0 syscons0: on nexus0 syscons0: Unknown <16 virtual consoles, flags=0x100> syscons0: fb0, kbd0, terminal emulator: scteken (teken terminal) procfs registered Timecounter "tick" frequency 270000000 Hz quality 1000 Event timer "tick" frequency 270000000 Hz quality 1000 Timecounters tick every 1.000 msec siisch0: CONNECT requested siisch0: SIIS reset... siisch0: SATA connect time=100us status=00000123 siisch0: SIIS reset done: devices=00000001 (noperiph:siisch0:0:-1:ffffffff): rescan already queued vlan: initialized, using hash tables with chaining tcp_init: net.inet.tcp.tcbhashsize auto tuned to 2048 lo0: bpf attached ata2: reset tp1 mask=01 ostat0=50 ostat1=ff ata2: stat0=0xd0 err=0x00 lsb=0x6b msb=0x8a ata2: stat0=0xd0 err=0x00 lsb=0x6b msb=0x8a ata2: stat0=0x50 err=0x01 lsb=0x00 msb=0x00 ata2: reset tp2 stat0=50 stat1=00 devices=0x1 ata3: reset tp1 mask=01 ostat0=00 ostat1=ff ata3: stat0=0x00 err=0x01 lsb=0x14 msb=0xeb ata3: reset tp2 stat0=00 stat1=00 devices=0x10000 siisch1: SIIS reset... siisch1: SATA connect timeout time=10000us status=00000000 siisch1: SIIS reset done: phy reset found no device siisch2: SIIS reset... siisch2: SATA connect timeout time=10000us status=00000000 siisch2: SIIS reset done: phy reset found no device siisch3: SIIS reset... siisch3: SATA connect timeout time=10000us status=00000000 siisch3: SIIS reset done: phy reset found no device GEOM: new disk cd0 pass0 at ata2 bus 0 scbus0 target 0 lun 0 pass0: cd0 at ata3 bus 0 scbus1 target 0 lun 0 cd0: Removable CD-ROM SCSI-0 device cd0: Serial Number 1997/12/08 cd0: 16.700MB/s transfers (WDMA2, ATAPI 12bytes, PIO 65534bytes) cd0: cd present [88382 x 2048 byte records] ATA-8 SATA 2.x device pass0: Serial Number WD-WXQ0A99K2533 pass0: 16.700MB/s transfers (WDMA2, PIO 8192bytes) pass1 at ata3 bus 0 scbus1 target 0 lun 0 pass1: Removable CD-ROM SCSI-0 device pass1: Serial Number 1997/12/08 pass1: 16.700MB/s transfers (WDMA2, ATAPI 12bytes, PIO 65534bytes) pass2 at siisch0 bus 0 scbus2 target 0 lun 0 pass2: ATA-8 SATA 2.x device pass2: Serial Number WD-WMAU00028845 pass2: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes) pass2: Command Queueing enabled ada0 at ata2 bus 0 scbus0 target 0 lun 0 ada0: ATA-8 SATA 2.x device ada0: Serial Number WD-WXQ0A99K2533 ada0: 16.700MB/s transfers (WDMA2, PIO 8192bytes) ada0: 238475MB (488397168 512 byte sectors: 16H 63S/T 16383C) ada0: Previously was known as ad0 ada1 at siisch0 bus 0 scbus2 target 0 lun 0 ada1: ATA-8 SATA 2.x device ada1: Serial Number WD-WMAU00028845 ada1: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes) ada1: Command Queueing enabled ada1: 715404MB (1465149168 512 byte sectors: 16H 63S/T 16383C) ada1: Previously was known as ad1 random: unblocking device. GEOM: new disk ada0 GEOM: new disk ada1 GEOM: ada1: the secondary GPT table is corrupt or invalid. GEOM: ada1: using the primary only -- recovery suggested. GEOM: diskid/DISK-WD-WMAU00028845: the secondary GPT table is corrupt or invalid. GEOM: diskid/DISK-WD-WMAU00028845: using the primary only -- recovery suggested. Trying to mount root from ufs:/dev/ada0a [rw]... warning: no time-of-day clock registered, system time will not be set accurately start_init: trying /sbin/init crypto: cryptosoft0: on nexus0 crypto: assign cryptosoft0 driver id 0, flags 100663296 crypto: cryptosoft0 registers alg 1 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 2 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 3 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 4 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 5 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 16 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 6 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 7 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 18 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 19 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 20 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 8 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 15 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 9 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 10 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 13 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 14 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 11 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 22 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 21 flags 0 maxoplen 0 crypto: cryptosoft0 registers alg 17 flags 0 maxoplen 0 GEOM_ELI: Device ada0b.eli created. GEOM_ELI: Encryption: AES-XTS 128 GEOM_ELI: Crypto: software From owner-freebsd-sparc64@FreeBSD.ORG Mon Oct 13 17:44:13 2014 Return-Path: Delivered-To: freebsd-sparc64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B799B5B3 for ; Mon, 13 Oct 2014 17:44:13 +0000 (UTC) Received: from mail-vc0-x234.google.com (mail-vc0-x234.google.com [IPv6:2607:f8b0:400c:c03::234]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 66040883 for ; Mon, 13 Oct 2014 17:44:13 +0000 (UTC) Received: by mail-vc0-f180.google.com with SMTP id le20so6250924vcb.11 for ; Mon, 13 Oct 2014 10:44:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=FterNPZlGJarF61ZeWmGvtsJ6fnKs5inCCJveXHk/7k=; b=FYXb7qu4UPNb3WfKlg4iG/LrG6jc/Bd73rRcu/VfwMxame0z3n7h7t3e2P4PZ/m3fc cwsU4n82Wbd+2dC7HXRqkUjuLQIWzoqYbFtpmiF/+oqZE/Ts3JxBf4ULKjbGXIUlUolf 0iLfiGg4oyfJWN9UIN/KtAXtWxRekZ2H2JTHIT5Zo31p/ytcVCiWblEQD3IY83mY4kkt KJsFYxefPX6yLhKFM4v4zuLeG6v+c7mvJQurUH6yLhjCHBpJcsOQSebvkKJNsQ9sKDXB DWFwp8JgCwkeuTD639zbWh5SGHs6LEfsUpLjzHePTMQR7V7WwJaZLt4vFn98526RxlIJ uMlA== MIME-Version: 1.0 X-Received: by 10.52.35.105 with SMTP id g9mr2572932vdj.61.1413222252270; Mon, 13 Oct 2014 10:44:12 -0700 (PDT) Received: by 10.31.156.140 with HTTP; Mon, 13 Oct 2014 10:44:12 -0700 (PDT) In-Reply-To: References: Date: Mon, 13 Oct 2014 13:44:12 -0400 Message-ID: Subject: Re: silicon image 3124 data corruption with siis driver (10.0 RELEASE, GENERIC) (update) From: David Cross To: rob@controlq.com Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.18-1 Cc: freebsd-sparc64@freebsd.org X-BeenThere: freebsd-sparc64@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Porting FreeBSD to the Sparc List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Oct 2014 17:44:13 -0000 This pattern is actually replicated exactly between 2 different machines, both with ECC memory. (That being said, I have done a spot check on the memory and it came out clean, I don't think I'd need a thorough check given I can reproduce this problem in seconds, across difference machines) On Mon, Oct 13, 2014 at 1:31 PM, Rob Sciuk wrote: > > Just a suggestion, but I would run an exhaustive memory test on the SPARC > machine. As it is aging hw, sha variations can be caused by bad ram, and > this can be difficult to detect if you aren't looking for it. > > Cheers, > Rob. > > > On Mon, 13 Oct 2014, David Cross wrote: > > Date: Mon, 13 Oct 2014 13:11:00 -0400 >> From: David Cross >> To: freebsd-sparc64@freebsd.org >> Subject: silicon image 3124 data corruption with siis driver (10.0 >> RELEASE, >> GENERIC) (update) >> >> >> Ok, I had a chance to do a bit more research. >> >> 1) confirmed 10.1-RC2/sparc64 still has the problem (it does) >> 2) confirmed 10.0/amd64 doesn't have the problem (it doesn't) >> 3) attempting to verify with linux or openbsd.. (in progress, this is >> actually pretty tough to do, I had a spare machine that I installed >> freebsd >> onto for testing, and tried and failed to install linux about 5 times >> now.. >> ubuntu 10.04 (last LTS to 'support' this hardware chokes instantly on >> install (reported problem since 8.04, and debian 7.6 has locked 3 times on >> install now... freebsd runs 100% on it; trying openbsd 5.5 next) >> >> In researching similar problems I found that sometimes these cards need >> help from their BIOS to init correctly, so I grabbed the PCI config space >> from the amd64 and sparc64 installs: >> >> Ultra10 PCI Config Space: >> 95 10 24 31 87 00 b0 02 01 00 04 01 10 40 00 00 >> 04 20 00 00 00 00 00 00 04 80 00 00 00 00 00 00 >> 01 04 00 00 00 00 00 00 00 00 00 00 95 10 24 71 >> 00 00 08 00 64 00 00 00 00 00 00 00 10 01 00 00 >> 07 54 52 00 f8 ff c3 12 00 00 00 00 00 00 00 00 >> 00 00 00 00 05 00 80 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 01 40 22 06 00 20 00 19 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> >> amd64 config space: >> 95 10 24 31 87 04 b0 02 01 00 04 01 10 00 00 00 >> 04 f0 8f fd 00 00 00 00 04 00 8f fd 00 00 00 00 >> 01 ef 00 00 00 00 00 00 00 00 00 00 95 10 24 71 >> 00 00 00 00 64 00 00 00 00 00 00 00 12 01 00 00 >> 07 54 52 00 f8 ff c3 12 00 00 00 00 00 00 00 00 >> 00 00 00 00 05 00 81 00 00 10 e0 fe 00 00 00 00 >> 36 00 00 00 01 40 22 06 00 20 00 19 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 >> >> The only real difference I noticed here is the latency timer on amd64 is >> set correctly (per the silicon image 3124 programming referece) to 0; on >> sparc64 its set to 0x40 (the PCI-X value). I updated that with pciconf -w >> -b siis0 13 0x00 and still had the problem, I looked at other chips on >> the >> PCI bus (hme0) and they had it set to 0x50.. which I tried. Neither value >> resolved the issue (can I update it on the fly like that, or does it need >> to be in the driver as part of the init routine? >> >> Additionally I grabbed an example of the differences between solo and >> shared output of the card; the pattern is really bizarre and not what I >> would expect: >> >> Given the test methodology of: >> dd bs=126b if=/dev/ada1 count=4096 of=somefile >> >> and then running: >> dd bs=126b if=/dev/ada1 of=/dev/null >> >> in the background I 'hd' the resulting 'somefiles' and diff them; the >> results are included below: >> >> --- ada1.solo.hd 2014-10-02 18:26:18.000000000 +0000 >> +++ ada1.new.hd 2014-10-02 18:15:04.000000000 +0000 >> 0086e010 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx >> 0086e020 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx >> 0086e030 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx >> 0086e040 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx >> -0086e050 xx xx xx xx xx xx xx xx xx xx xx xx 3b 5f 79 67 >> +0086e050 xx xx xx xx xx xx xx xx xx xx xx xx 00 00 15 00 >> 0086e060 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx >> [for the sake of brevity I will only show the differences] >> -0108d050 xx xx xx xx xx xx xx xx xx xx xx xx f6 68 c2 9a >> +0108d050 xx xx xx xx xx xx xx xx xx xx xx xx 0b 71 f6 71 >> -0149c880 xx xx xx xx 3c 9a 34 0f xx xx xx xx xx xx xx xx >> +0149c880 xx xx xx xx 1f d8 dd 9f xx xx xx xx xx xx xx xx >> -02bde500 xx xx xx xx 52 71 27 93 xx xx xx xx xx xx xx xx >> +02bde500 xx xx xx xx 61 50 85 d7 xx xx xx xx xx xx xx xx >> -02fcdd40 xx xx xx xx xx xx xx xx xx xx xx xx a6 96 34 59 >> +02fcdd40 xx xx xx xx xx xx xx xx xx xx xx xx 2c e4 ec d0 >> >> Contrary to those examples, I have seen the 'corruption' be not 32bit >> aligned, I have seen it span the 0x08 boundary as well as the 0x10 >> boundary >> (though that was under a different testing methodology, that was when I >> noticed the issue on a live FS that led me down this path). The blocksize >> of 126b (picked because its close to 64k, and is an even multiple of >> standard ATA sector sizes) is a hex 0xfc00, so these aren't even all in >> the >> same location within a block; which would be a single DMA transfer? >> >> The first corruption of '00 00 15 00' seems especially odd since its not >> obviously 'random'; it looks like a command (like an ATA command?) that >> somehow got mixed into the datastream. >> >> Anyway; does anyone have pointers for where to look next on tracking this >> down? Frustrating having this so close to working! >> >> (oh, as promised a dmesg with verbose boot): >> Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 >> The Regents of the University of California. All rights reserved. >> FreeBSD is a registered trademark of The FreeBSD Foundation. >> FreeBSD 10.1-RC2 #0 r272876: Fri Oct 10 05:25:28 UTC 2014 >> root@releng1.nyi.freebsd.org:/usr/obj/sparc64.sparc64/usr/ >> src/sys/GENERIC >> sparc64 >> gcc version 4.2.1 20070831 patched [FreeBSD] >> Preloaded elf kernel "/boot/kernel/kernel" at 0xc0e76000. >> real memory = 402653184 (384 MB) >> avail memory = 370155520 (353 MB) >> machine: SUNW,Ultra-5_10 >> cpu0: Sun Microsystems UltraSparc-IIi Processor (270.00 MHz CPU) >> mask=0x12 maxtl=5 maxwin=7 >> ULE: setup cpu 0 >> wlan: <802.11 Link Layer> >> snd_unit_init() u=0x00ff8000 [512] d=0x00007c00 [32] c=0x000003ff [1024] >> feeder_register: snd_unit=-1 snd_maxautovchans=16 latency=5 >> feeder_rate_min=1 feeder_rate_max=2016000 feeder_rate_round=25 >> firmware: 'isp_1000' version 1: 20142 bytes loaded at 0xc090acc8 >> ispfw: registered firmware >> firmware: 'isp_1040' version 1: 22944 bytes loaded at 0xc090fb76 >> ispfw: registered firmware >> firmware: 'isp_1040_it' version 1: 32942 bytes loaded at 0xc0915516 >> ispfw: registered firmware >> firmware: 'isp_1080' version 1: 31350 bytes loaded at 0xc091d5c4 >> ispfw: registered firmware >> firmware: 'isp_1080_it' version 1: 40644 bytes loaded at 0xc092503a >> ispfw: registered firmware >> firmware: 'isp_12160' version 1: 28050 bytes loaded at 0xc092eefe >> ispfw: registered firmware >> firmware: 'isp_12160_it' version 1: 40604 bytes loaded at 0xc0935c90 >> ispfw: registered firmware >> firmware: 'isp_2100' version 1: 76770 bytes loaded at 0xc093fb2c >> ispfw: registered firmware >> firmware: 'isp_2200' version 1: 77214 bytes loaded at 0xc095270e >> ispfw: registered firmware >> firmware: 'isp_2300' version 1: 113630 bytes loaded at 0xc09654ac >> ispfw: registered firmware >> firmware: 'isp_2322' version 1: 120466 bytes loaded at 0xc098108a >> ispfw: registered firmware >> firmware: 'isp_2400' version 1: 179908 bytes loaded at 0xc09a2284 >> ispfw: registered firmware >> firmware: 'isp_2400_multi' version 1: 198628 bytes loaded at 0xc09db0dc >> ispfw: registered firmware >> firmware: 'isp_2500' version 1: 142704 bytes loaded at 0xc0a193a8 >> ispfw: registered firmware >> firmware: 'isp_2500_multi' version 1: 169352 bytes loaded at 0xc0a4b290 >> ispfw: registered firmware >> mem: >> null: >> nfslock: pseudo-device >> Falling back to random adaptor >> random: initialized >> kbd0 at kbdmux0 >> openfirm: >> nexus0: >> pcib0: mem >> 0x1fe00000000-0x1fe0000ffff,0x1fe01000000-0x1fe010000ff irq >> 2032,2030,2031,2021 on nexus0 >> pcib0: Sabre, impl 0, version 0, IGN 0x1f, bus A, 66MHz >> pcib0: DVMA map: 0xc0000000 to 0xc3ffffff 8192 entries >> pcib0: PROM IOTSB size: 7 (131072 entries) >> pcib0: bus range 0 to 2; PCI bus 0 >> initalizing intr_countp >> pcib0: [GIANT-LOCKED] >> pci0: on pcib0 >> pci0: domain=0, physical bus=0 >> found-> vendor=0x108e, dev=0xa000, revid=0x00 >> domain=0, bus=0, slot=0, func=0 >> class=06-00-00, hdrtype=0x00, mfdev=0 >> cmdreg=0x0146, statreg=0x02a0, cachelnsz=0 (dwords) >> lattimer=0x40 (1920 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) >> found-> vendor=0x108e, dev=0x5000, revid=0x11 >> domain=0, bus=0, slot=1, func=1 >> class=06-04-00, hdrtype=0x01, mfdev=1 >> cmdreg=0x0147, statreg=0x02a0, cachelnsz=16 (dwords) >> lattimer=0x40 (1920 ns), mingnt=0x23 (8750 ns), maxlat=0x00 (0 ns) >> found-> vendor=0x108e, dev=0x5000, revid=0x11 >> domain=0, bus=0, slot=1, func=0 >> class=06-04-00, hdrtype=0x01, mfdev=1 >> cmdreg=0x0147, statreg=0x02a0, cachelnsz=16 (dwords) >> lattimer=0x40 (1920 ns), mingnt=0x23 (8750 ns), maxlat=0x00 (0 ns) >> pcib1: at device 1.1 on pci0 >> pcib1: domain 0 >> pcib1: secondary bus 1 >> pcib1: subordinate bus 1 >> pcib1: I/O decode 0xc00000-0xdfffff, 0xe00000-0xffffff >> pcib1: memory decode 0xe0000000-0xffffffff >> pci1: on pcib1 >> pci1: domain=0, physical bus=1 >> found-> vendor=0x108e, dev=0x1000, revid=0x01 >> domain=0, bus=1, slot=1, func=0 >> class=06-80-00, hdrtype=0x00, mfdev=1 >> cmdreg=0x0146, statreg=0x0280, cachelnsz=16 (dwords) >> lattimer=0x50 (2400 ns), mingnt=0x0a (2500 ns), maxlat=0x19 (6250 >> ns) >> map[10]: type Memory, range 32, base 0xf0000000, size 24, enabled >> pcib1: device (null) requested decoded memory range 0xf0000000-0xf0ffffff >> map[14]: type Memory, range 32, base 0xf1000000, size 23, enabled >> pcib1: device (null) requested decoded memory range 0xf1000000-0xf17fffff >> found-> vendor=0x108e, dev=0x1001, revid=0x01 >> domain=0, bus=1, slot=1, func=1 >> class=02-00-00, hdrtype=0x00, mfdev=1 >> cmdreg=0x0000, statreg=0x0280, cachelnsz=16 (dwords) >> lattimer=0x50 (2400 ns), mingnt=0x0a (2500 ns), maxlat=0x05 (1250 >> ns) >> map[10]: type Memory, range 32, base 0xe0000000, size 15, memory >> disabled >> pcib1: device (null) requested decoded memory range 0xe0000000-0xe0007fff >> found-> vendor=0x1002, dev=0x4754, revid=0x9a >> domain=0, bus=1, slot=2, func=0 >> class=03-00-00, hdrtype=0x00, mfdev=0 >> cmdreg=0x0080, statreg=0x0280, cachelnsz=16 (dwords) >> lattimer=0x40 (1920 ns), mingnt=0x08 (2000 ns), maxlat=0x00 (0 ns) >> intpin=a, irq=255 >> map[10]: type Memory, range 32, base 0xe1000000, size 24, memory >> disabled >> pcib1: device (null) requested decoded memory range 0xe1000000-0xe1ffffff >> map[14]: type I/O Port, range 32, base 0, size 8, port disabled >> pcib1: device (null) requested unsupported I/O range 0x0-0xff >> pci1: pci0:1:2:0 bar 0x14 failed to allocate >> map[18]: type Memory, range 32, base 0, size 12, enabled >> pcib1: device (null) requested unsupported memory range 0x0-0xfff >> pci1: pci0:1:2:0 bar 0x18 failed to allocate >> found-> vendor=0x1095, dev=0x0646, revid=0x03 >> domain=0, bus=1, slot=3, func=0 >> class=01-01-8f, hdrtype=0x00, mfdev=0 >> cmdreg=0x0001, statreg=0x0280, cachelnsz=0 (dwords) >> lattimer=0x10 (480 ns), mingnt=0x02 (500 ns), maxlat=0x04 (1000 ns) >> intpin=a, irq=255 >> map[10]: type I/O Port, range 32, base 0xc00000, size 3, enabled >> pcib1: device (null) requested decoded I/O range 0xc00000-0xc00007 >> map[14]: type I/O Port, range 32, base 0xc00008, size 2, enabled >> pcib1: device (null) requested decoded I/O range 0xc00008-0xc0000b >> map[18]: type I/O Port, range 32, base 0xc00010, size 3, enabled >> pcib1: device (null) requested decoded I/O range 0xc00010-0xc00017 >> map[1c]: type I/O Port, range 32, base 0xc00018, size 2, enabled >> pcib1: device (null) requested decoded I/O range 0xc00018-0xc0001b >> map[20]: type I/O Port, range 32, base 0xc00020, size 4, enabled >> pcib1: device (null) requested decoded I/O range 0xc00020-0xc0002f >> ebus0: mem 0xf0000000-0xf0ffffff,0xf1000000-0xf17fffff >> at device 1.0 on pci1 >> pcib2: at device 1.0 on pci0 >> pcib2: domain 0 >> pcib2: secondary bus 2 >> pcib2: subordinate bus 255 >> pcib2: I/O decode 0x0-0x1fffff, 0x200000-0x3fffff, >> 0x400000-0x5fffff, 0x600000-0x7fffff, 0x800000-0x9fffff, 0xa00000-0xbfffff >> pcib2: memory decode 0x0-0x1fffffff, 0x20000000-0x3fffffff, >> 0x40000000-0x5fffffff, 0x60000000-0x7fffffff, 0x80000000-0x9fffffff, >> 0xa0000000-0xbfffffff >> pci2: on pcib2 >> pci2: domain=0, physical bus=2 >> found-> vendor=0x1095, dev=0x3124, revid=0x01 >> domain=0, bus=2, slot=1, func=0 >> class=01-04-00, hdrtype=0x00, mfdev=0 >> cmdreg=0x0080, statreg=0x02b0, cachelnsz=16 (dwords) >> lattimer=0x40 (1920 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) >> intpin=a, irq=255 >> powerspec 2 supports D0 D1 D2 D3 current D0 >> MSI supports 1 message, 64 bit >> map[10]: type Memory, range 64, base 0x2000, size 7, memory >> disabled >> pcib2: device (null) requested decoded memory range 0x2000-0x207f >> map[18]: type Memory, range 64, base 0x8000, size 15, enabled >> pcib2: device (null) requested decoded memory range 0x8000-0xffff >> map[20]: type I/O Port, range 32, base 0x400, size 4, port >> disabled >> pcib2: device (null) requested decoded I/O range 0x400-0x40f >> auxio0: addr >> 0x1400726000-0x1400726003,0x1400728000-0x1400728003, >> 0x140072a000-0x140072a003,0x140072c000-0x140072c003, >> 0x140072f000-0x140072f003 >> on ebus0 >> ebus0: addr 0x1400724000-0x1400724003 irq 37 (no driver attached) >> ebus0: addr 0x1400504000-0x1400504002 (no driver attached) >> scc0: addr 0x1400400000-0x140040007f >> irq 43 on ebus0 >> scc0: not resetting hardware >> uart0: on scc0 >> uart0: CTS oflow >> uart0: console (9600,n,8,1) >> uart0: fast interrupt >> uart1: on scc0 >> uart1: CTS oflow >> uart1: fast interrupt >> scc0: fast interrupt >> uart2: <16550 or compatible> addr 0x14003083f8-0x14003083ff irq 41 on >> ebus0 >> uart2: keyboard (1200,n,8,1) >> uart2: fast interrupt >> uart2: keyboard not present >> uart3: <16550 or compatible> addr 0x14003062f8-0x14003062ff irq 42 on >> ebus0 >> uart3: fast interrupt >> ebus0: addr >> 0x14003043bc-0x14003043cb,0x140030015c-0x140030015d, >> 0x1400700000-0x140070000f >> irq 34 (no driver attached) >> ebus0: addr >> 0x14003023f0-0x14003023f7,0x1400706000-0x140070600f, >> 0x1400720000-0x1400720003 >> irq 39 (no driver attached) >> eeprom0: addr 0x1400000000-0x1400001fff on ebus0 >> eeprom0: model mk48t59 >> eeprom0: mk48txx_attach: battery low >> eeprom0: cannot attach time of day clock >> device_attach: eeprom0 attach returned 6 >> ebus0: addr 0x1000000000-0x10000fffff (no driver attached) >> pcm0: addr >> 0x1400200000-0x14002000ff,0x1400702000-0x140070200f, >> 0x1400704000-0x140070400f,0x1400722000-0x1400722003 >> irq 35,36 on ebus0 >> pcm0: >> pcm0: Mixer "pcm": >> pcm0: Mixer "speaker": >> pcm0: Mixer "line": >> pcm0: Mixer "mic": >> pcm0: Mixer "cd": >> hme0: mem 0xe0000000-0xe0007fff at device 1.1 on >> pci1 >> miibus0: on hme0 >> nsphy0: PHY 1 on miibus0 >> nsphy0: OUI 0x1000e8, model 0x0000, rev. 1 >> nsphy0: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto >> hme0: bpf attached >> hme0: Ethernet address: 08:00:20:79:87:9a >> machfb0: mem 0xe1000000-0xe1ffffff at device 2.0 on >> pci1 >> machfb0: 8 MB aperture at 0xd09f6000 swapped >> machfb0: 2048 KB SGRAM 62.999 MHz, maximum RAMDAC clock 170 MHz, DSP >> machfb0: resolution 1152x900 at 8 bpp >> atapci0: port >> 0xc00000-0xc00007,0xc00008-0xc0000b,0xc00010-0xc00017, >> 0xc00018-0xc0001b,0xc00020-0xc0002f >> at device 3.0 on pci1 >> ata2: at channel 0 on atapci0 >> ata3: at channel 1 on atapci0 >> siis0: port 0x400-0x40f mem >> 0x2000-0x207f,0x8000-0xffff at device 1.0 on pci2 >> siisch0: at channel 0 on siis0 >> siisch1: at channel 1 on siis0 >> siisch2: at channel 2 on siis0 >> siisch3: at channel 3 on siis0 >> syscons0: on nexus0 >> syscons0: Unknown <16 virtual consoles, flags=0x100> >> syscons0: fb0, kbd0, terminal emulator: scteken (teken terminal) >> procfs registered >> Timecounter "tick" frequency 270000000 Hz quality 1000 >> Event timer "tick" frequency 270000000 Hz quality 1000 >> Timecounters tick every 1.000 msec >> siisch0: CONNECT requested >> siisch0: SIIS reset... >> siisch0: SATA connect time=100us status=00000123 >> siisch0: SIIS reset done: devices=00000001 >> (noperiph:siisch0:0:-1:ffffffff): rescan already queued >> vlan: initialized, using hash tables with chaining >> tcp_init: net.inet.tcp.tcbhashsize auto tuned to 2048 >> lo0: bpf attached >> ata2: reset tp1 mask=01 ostat0=50 ostat1=ff >> ata2: stat0=0xd0 err=0x00 lsb=0x6b msb=0x8a >> ata2: stat0=0xd0 err=0x00 lsb=0x6b msb=0x8a >> ata2: stat0=0x50 err=0x01 lsb=0x00 msb=0x00 >> ata2: reset tp2 stat0=50 stat1=00 devices=0x1 >> ata3: reset tp1 mask=01 ostat0=00 ostat1=ff >> ata3: stat0=0x00 err=0x01 lsb=0x14 msb=0xeb >> ata3: reset tp2 stat0=00 stat1=00 devices=0x10000 >> siisch1: SIIS reset... >> siisch1: SATA connect timeout time=10000us status=00000000 >> siisch1: SIIS reset done: phy reset found no device >> siisch2: SIIS reset... >> siisch2: SATA connect timeout time=10000us status=00000000 >> siisch2: SIIS reset done: phy reset found no device >> siisch3: SIIS reset... >> siisch3: SATA connect timeout time=10000us status=00000000 >> siisch3: SIIS reset done: phy reset found no device >> GEOM: new disk cd0 >> pass0 at ata2 bus 0 scbus0 target 0 lun 0 >> pass0: cd0 at ata3 bus 0 scbus1 target 0 lun 0 >> cd0: Removable CD-ROM SCSI-0 device >> cd0: Serial Number 1997/12/08 >> cd0: 16.700MB/s transfers (WDMA2, ATAPI 12bytes, PIO 65534bytes) >> cd0: cd present [88382 x 2048 byte records] >> ATA-8 SATA 2.x device >> pass0: Serial Number WD-WXQ0A99K2533 >> pass0: 16.700MB/s transfers (WDMA2, PIO 8192bytes) >> pass1 at ata3 bus 0 scbus1 target 0 lun 0 >> pass1: Removable CD-ROM SCSI-0 device >> pass1: Serial Number 1997/12/08 >> pass1: 16.700MB/s transfers (WDMA2, ATAPI 12bytes, PIO 65534bytes) >> pass2 at siisch0 bus 0 scbus2 target 0 lun 0 >> pass2: ATA-8 SATA 2.x device >> pass2: Serial Number WD-WMAU00028845 >> pass2: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes) >> pass2: Command Queueing enabled >> ada0 at ata2 bus 0 scbus0 target 0 lun 0 >> ada0: ATA-8 SATA 2.x device >> ada0: Serial Number WD-WXQ0A99K2533 >> ada0: 16.700MB/s transfers (WDMA2, PIO 8192bytes) >> ada0: 238475MB (488397168 512 byte sectors: 16H 63S/T 16383C) >> ada0: Previously was known as ad0 >> ada1 at siisch0 bus 0 scbus2 target 0 lun 0 >> ada1: ATA-8 SATA 2.x device >> ada1: Serial Number WD-WMAU00028845 >> ada1: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes) >> ada1: Command Queueing enabled >> ada1: 715404MB (1465149168 512 byte sectors: 16H 63S/T 16383C) >> ada1: Previously was known as ad1 >> random: unblocking device. >> GEOM: new disk ada0 >> GEOM: new disk ada1 >> GEOM: ada1: the secondary GPT table is corrupt or invalid. >> GEOM: ada1: using the primary only -- recovery suggested. >> GEOM: diskid/DISK-WD-WMAU00028845: the secondary GPT table is corrupt or >> invalid. >> GEOM: diskid/DISK-WD-WMAU00028845: using the primary only -- recovery >> suggested. >> Trying to mount root from ufs:/dev/ada0a [rw]... >> warning: no time-of-day clock registered, system time will not be set >> accurately >> start_init: trying /sbin/init >> crypto: >> cryptosoft0: on nexus0 >> crypto: assign cryptosoft0 driver id 0, flags 100663296 >> crypto: cryptosoft0 registers alg 1 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 2 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 3 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 4 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 5 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 16 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 6 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 7 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 18 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 19 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 20 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 8 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 15 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 9 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 10 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 13 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 14 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 11 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 22 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 21 flags 0 maxoplen 0 >> crypto: cryptosoft0 registers alg 17 flags 0 maxoplen 0 >> GEOM_ELI: Device ada0b.eli created. >> GEOM_ELI: Encryption: AES-XTS 128 >> GEOM_ELI: Crypto: software >> _______________________________________________ >> freebsd-sparc64@freebsd.org mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-sparc64 >> To unsubscribe, send any mail to "freebsd-sparc64-unsubscribe@freebsd.org >> " >> >> > -- > -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= > -=-=-=-=-=--=-=-=-= > Robert S. Sciuk http://www.controlq.com 259 Simcoe St. S. > Control-Q Research tel: 905.706.1354 Oshawa, Ont. > rob@ControlQ.com Canada, L1H 4H3 > From owner-freebsd-sparc64@FreeBSD.ORG Wed Oct 15 17:05:14 2014 Return-Path: Delivered-To: freebsd-sparc64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DD51D867 for ; Wed, 15 Oct 2014 17:05:13 +0000 (UTC) Received: from mail-vc0-x22b.google.com (mail-vc0-x22b.google.com [IPv6:2607:f8b0:400c:c03::22b]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 859221FB for ; Wed, 15 Oct 2014 17:05:13 +0000 (UTC) Received: by mail-vc0-f171.google.com with SMTP id hy10so1330289vcb.2 for ; Wed, 15 Oct 2014 10:05:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=uR2zIPqxvfOXVCgE0jSCEzeN/K9BRoWylJ4Wo4TtXyk=; b=XqBDqDiUoqQaBqcxjt0LfABkQf6Gybn/g/N0AZCD1whf66TDa9UCp+IiLIqmbFHgWP aBhIBC90J8mvpQwKRL1rX8TmibCYP7yOmvQQoG0k+zU5A4f1Q3qfyKWkDAPK1USTWSqA B7+3Y6W4/xhmyjxqEqDPmRjZOFWs6z/6d5qLMWqNV36K69souYrG4w2bk9LjEXY8R/oj U33EdImcXNu0RE3APWiqXSy/W0Lp+VtFwzEU6/Eiyw6IinRIxM74LAx/rivErmzoTNB9 4cytl/bgiY5fKA9MIcbCoRjNHXqVjzCXO6Iks2fZfU0u9PrrPz30zL5+hYG9C3Tkc12t ZmvQ== MIME-Version: 1.0 X-Received: by 10.221.31.136 with SMTP id sg8mr13587010vcb.20.1413392710238; Wed, 15 Oct 2014 10:05:10 -0700 (PDT) Received: by 10.31.181.78 with HTTP; Wed, 15 Oct 2014 10:05:10 -0700 (PDT) In-Reply-To: References: Date: Wed, 15 Oct 2014 13:05:10 -0400 Message-ID: Subject: Re: silicon image 3124 data corruption with siis driver (10.0 RELEASE, GENERIC) (update) From: David Cross To: freebsd-sparc64@freebsd.org Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.18-1 X-BeenThere: freebsd-sparc64@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Porting FreeBSD to the Sparc List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Oct 2014 17:05:14 -0000 Ok, a bit more data. I was able to (somewhat) get linux onto the machine (livers only, I couldn't get linux running long enough to actually install) and I did the same test, and no corruption issues; though it was *markably* slower than FreeBSD on the exact same box (so maybe we're pushing the hardware too much?) I brought the hardware back to amd64 to try with MSI interrupts off to see if it was something with the pin-interrupt portion (there is an issue with reads to the LRAM on the card causing corruption, and was curious if the pin interrupt driver was polling the LRAM, but anyway.. no hit on that). So I grabbed a bunch of PCI config registers: First the full bus from the linux install: 00:01.0 PCI bridge: Oracle/SUN Simba Advanced PCI Bridge (rev 11) 00: 8e 10 00 50 47 01 a0 02 11 00 04 06 10 40 81 00 10: 00 00 00 00 00 00 00 00 00 02 ff 40 00 00 80 02 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 23 00 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: d8 0d 59 7d 00 00 00 00 ff ff ff ff 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3f 3f e0: 0f 01 00 00 01 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00:01.1 PCI bridge: Oracle/SUN Simba Advanced PCI Bridge (rev 11) 00: 8e 10 00 50 47 01 a0 02 11 00 04 06 10 40 81 00 10: 00 00 00 00 00 00 00 00 00 01 01 40 00 00 80 02 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 23 00 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: d2 95 5b 7d 00 00 00 00 ff ff ff ff 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0 80 e0: 0f 01 00 00 01 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01:01.0 Bridge: Oracle/SUN EBUS (rev 01) 00: 8e 10 00 10 46 01 80 02 01 00 80 06 00 00 80 00 10: 00 00 00 f0 00 00 00 f1 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 e0 00 00 00 00 00 00 00 00 00 00 0a 19 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01:01.1 Ethernet controller: Oracle/SUN Happy Meal 10/100 Ethernet [hme] (rev 01 ) 00: 8e 10 01 10 06 00 80 02 01 00 00 02 00 00 80 00 10: 00 00 00 e0 00 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 00 e1 00 00 00 00 00 00 00 00 00 00 0a 05 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01:02.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI 3D Rage I/II 215GT [Mach64 GT] (rev 9a) 00: 02 10 54 47 82 00 80 02 9a 00 00 03 00 00 00 00 10: 00 00 00 e1 01 00 00 00 00 00 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30: 00 00 02 e1 00 00 00 00 00 00 00 00 21 01 08 00 40: 0c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01:03.0 IDE interface: Silicon Image, Inc. PCI0646 (rev 03) 00: 95 10 46 06 05 00 80 02 03 8f 01 01 00 40 00 00 10: 01 00 c0 00 09 00 c0 00 11 00 c0 00 19 00 c0 00 20: 21 00 c0 00 00 00 00 00 00 00 00 00 95 10 46 06 30: 00 00 00 00 00 00 00 00 00 00 00 00 0e 01 02 04 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 44 ec 00 40 3f 80 a9 5c 3f 40 00 a9 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 08 0c 20 c0 00 80 00 c0 08 00 20 c0 00 a0 00 c0 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02:01.0 SCSI storage controller: LSI Logic / Symbios Logic 53c875 (rev 14) 00: 00 10 0f 00 17 00 00 02 14 00 00 01 10 00 80 00 10: 01 04 00 00 00 20 00 00 00 40 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 10 30: 00 00 01 00 00 00 00 00 00 00 00 00 00 01 11 40 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02:01.1 SCSI storage controller: LSI Logic / Symbios Logic 53c875 (rev 14) 00: 00 10 0f 00 17 00 00 02 14 00 00 01 10 00 80 00 10: 01 08 00 00 00 60 00 00 00 80 00 00 00 00 00 00 20: 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 10 30: 00 00 01 00 00 00 00 00 00 00 00 00 00 02 11 40 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02:02.0 SATA controller: Silicon Image, Inc. SiI 3124 PCI-X Serial ATA Controlle r (rev 01) 00: 95 10 24 31 87 00 b0 02 01 00 06 01 00 00 00 00 10: 04 a0 00 00 00 00 00 00 04 00 01 00 00 00 00 00 20: 01 0c 00 00 00 00 00 00 00 00 00 00 95 10 24 31 30: 00 00 08 00 64 00 00 00 00 00 00 00 00 01 00 00 40: 07 54 52 00 f8 ff c3 12 00 00 00 00 00 00 00 00 50: 00 00 00 00 05 00 80 00 00 00 00 00 00 00 00 00 60: 00 00 00 00 01 40 22 06 00 20 00 19 00 00 00 00 70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 Now the FreeBSD ones for a few chips: The SiI3124: 95 10 24 31 87 00 b0 02 01 00 04 01 10 40 00 00 04 20 00 00 00 00 00 00 04 80 00 00 00 00 00 00 01 04 00 00 00 00 00 00 00 00 00 00 95 10 24 71 00 00 08 00 64 00 00 00 00 00 00 00 10 01 00 00 07 54 52 00 f8 ff c3 12 00 00 00 00 00 00 00 00 00 00 00 00 05 00 80 00 00 00 00 00 00 00 00 00 00 00 00 00 01 40 22 06 00 20 00 19 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 And the PCI Bridge chip: root@u10a:~ # pciconf -r -b pcib1@pci0:0:1:0: 0:255 8e 10 00 50 47 01 a0 0a 11 00 04 06 10 40 81 00 00 00 00 00 00 00 00 00 00 02 ff 40 00 00 80 22 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 23 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1c 01 60 d4 00 00 00 00 ffffffff ffffffff ffffffff ffffffff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 3f 3f 0f 01 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 I will note that I have seen a similar pattern of corruption with another card on this hardware (albeit very, very rare and it was having other issues at the time; which is actually why I got this card, it was supposed to be a more stable card).. so I am actually leaning towards a fundamental DMA issue in our config; hopefully this is the place to track this down and someone with the sparc64 hardware experience can help me go through all of this! On Mon, Oct 13, 2014 at 1:11 PM, David Cross wrote: > Ok, I had a chance to do a bit more research. > > 1) confirmed 10.1-RC2/sparc64 still has the problem (it does) > 2) confirmed 10.0/amd64 doesn't have the problem (it doesn't) > 3) attempting to verify with linux or openbsd.. (in progress, this is > actually pretty tough to do, I had a spare machine that I installed freebsd > onto for testing, and tried and failed to install linux about 5 times now.. > ubuntu 10.04 (last LTS to 'support' this hardware chokes instantly on > install (reported problem since 8.04, and debian 7.6 has locked 3 times on > install now... freebsd runs 100% on it; trying openbsd 5.5 next) > > In researching similar problems I found that sometimes these cards need > help from their BIOS to init correctly, so I grabbed the PCI config space > from the amd64 and sparc64 installs: > > Ultra10 PCI Config Space: > 95 10 24 31 87 00 b0 02 01 00 04 01 10 40 00 00 > 04 20 00 00 00 00 00 00 04 80 00 00 00 00 00 00 > 01 04 00 00 00 00 00 00 00 00 00 00 95 10 24 71 > 00 00 08 00 64 00 00 00 00 00 00 00 10 01 00 00 > 07 54 52 00 f8 ff c3 12 00 00 00 00 00 00 00 00 > 00 00 00 00 05 00 80 00 00 00 00 00 00 00 00 00 > 00 00 00 00 01 40 22 06 00 20 00 19 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > > amd64 config space: > 95 10 24 31 87 04 b0 02 01 00 04 01 10 00 00 00 > 04 f0 8f fd 00 00 00 00 04 00 8f fd 00 00 00 00 > 01 ef 00 00 00 00 00 00 00 00 00 00 95 10 24 71 > 00 00 00 00 64 00 00 00 00 00 00 00 12 01 00 00 > 07 54 52 00 f8 ff c3 12 00 00 00 00 00 00 00 00 > 00 00 00 00 05 00 81 00 00 10 e0 fe 00 00 00 00 > 36 00 00 00 01 40 22 06 00 20 00 19 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 > > The only real difference I noticed here is the latency timer on amd64 is > set correctly (per the silicon image 3124 programming referece) to 0; on > sparc64 its set to 0x40 (the PCI-X value). I updated that with pciconf -w > -b siis0 13 0x00 and still had the problem, I looked at other chips on the > PCI bus (hme0) and they had it set to 0x50.. which I tried. Neither value > resolved the issue (can I update it on the fly like that, or does it need > to be in the driver as part of the init routine? > > Additionally I grabbed an example of the differences between solo and > shared output of the card; the pattern is really bizarre and not what I > would expect: > > Given the test methodology of: > dd bs=126b if=/dev/ada1 count=4096 of=somefile > > and then running: > dd bs=126b if=/dev/ada1 of=/dev/null > > in the background I 'hd' the resulting 'somefiles' and diff them; the > results are included below: > > --- ada1.solo.hd 2014-10-02 18:26:18.000000000 +0000 > +++ ada1.new.hd 2014-10-02 18:15:04.000000000 +0000 > 0086e010 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx > 0086e020 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx > 0086e030 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx > 0086e040 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx > -0086e050 xx xx xx xx xx xx xx xx xx xx xx xx 3b 5f 79 67 > +0086e050 xx xx xx xx xx xx xx xx xx xx xx xx 00 00 15 00 > 0086e060 xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx xx > [for the sake of brevity I will only show the differences] > -0108d050 xx xx xx xx xx xx xx xx xx xx xx xx f6 68 c2 9a > +0108d050 xx xx xx xx xx xx xx xx xx xx xx xx 0b 71 f6 71 > -0149c880 xx xx xx xx 3c 9a 34 0f xx xx xx xx xx xx xx xx > +0149c880 xx xx xx xx 1f d8 dd 9f xx xx xx xx xx xx xx xx > -02bde500 xx xx xx xx 52 71 27 93 xx xx xx xx xx xx xx xx > +02bde500 xx xx xx xx 61 50 85 d7 xx xx xx xx xx xx xx xx > -02fcdd40 xx xx xx xx xx xx xx xx xx xx xx xx a6 96 34 59 > +02fcdd40 xx xx xx xx xx xx xx xx xx xx xx xx 2c e4 ec d0 > > Contrary to those examples, I have seen the 'corruption' be not 32bit > aligned, I have seen it span the 0x08 boundary as well as the 0x10 boundary > (though that was under a different testing methodology, that was when I > noticed the issue on a live FS that led me down this path). The blocksize > of 126b (picked because its close to 64k, and is an even multiple of > standard ATA sector sizes) is a hex 0xfc00, so these aren't even all in the > same location within a block; which would be a single DMA transfer? > > The first corruption of '00 00 15 00' seems especially odd since its not > obviously 'random'; it looks like a command (like an ATA command?) that > somehow got mixed into the datastream. > > Anyway; does anyone have pointers for where to look next on tracking this > down? Frustrating having this so close to working! > > (oh, as promised a dmesg with verbose boot): > Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 > The Regents of the University of California. All rights reserved. > FreeBSD is a registered trademark of The FreeBSD Foundation. > FreeBSD 10.1-RC2 #0 r272876: Fri Oct 10 05:25:28 UTC 2014 > root@releng1.nyi.freebsd.org:/usr/obj/sparc64.sparc64/usr/src/sys/GENERIC > sparc64 > gcc version 4.2.1 20070831 patched [FreeBSD] > Preloaded elf kernel "/boot/kernel/kernel" at 0xc0e76000. > real memory = 402653184 (384 MB) > avail memory = 370155520 (353 MB) > machine: SUNW,Ultra-5_10 > cpu0: Sun Microsystems UltraSparc-IIi Processor (270.00 MHz CPU) > mask=0x12 maxtl=5 maxwin=7 > ULE: setup cpu 0 > wlan: <802.11 Link Layer> > snd_unit_init() u=0x00ff8000 [512] d=0x00007c00 [32] c=0x000003ff [1024] > feeder_register: snd_unit=-1 snd_maxautovchans=16 latency=5 > feeder_rate_min=1 feeder_rate_max=2016000 feeder_rate_round=25 > firmware: 'isp_1000' version 1: 20142 bytes loaded at 0xc090acc8 > ispfw: registered firmware > firmware: 'isp_1040' version 1: 22944 bytes loaded at 0xc090fb76 > ispfw: registered firmware > firmware: 'isp_1040_it' version 1: 32942 bytes loaded at 0xc0915516 > ispfw: registered firmware > firmware: 'isp_1080' version 1: 31350 bytes loaded at 0xc091d5c4 > ispfw: registered firmware > firmware: 'isp_1080_it' version 1: 40644 bytes loaded at 0xc092503a > ispfw: registered firmware > firmware: 'isp_12160' version 1: 28050 bytes loaded at 0xc092eefe > ispfw: registered firmware > firmware: 'isp_12160_it' version 1: 40604 bytes loaded at 0xc0935c90 > ispfw: registered firmware > firmware: 'isp_2100' version 1: 76770 bytes loaded at 0xc093fb2c > ispfw: registered firmware > firmware: 'isp_2200' version 1: 77214 bytes loaded at 0xc095270e > ispfw: registered firmware > firmware: 'isp_2300' version 1: 113630 bytes loaded at 0xc09654ac > ispfw: registered firmware > firmware: 'isp_2322' version 1: 120466 bytes loaded at 0xc098108a > ispfw: registered firmware > firmware: 'isp_2400' version 1: 179908 bytes loaded at 0xc09a2284 > ispfw: registered firmware > firmware: 'isp_2400_multi' version 1: 198628 bytes loaded at 0xc09db0dc > ispfw: registered firmware > firmware: 'isp_2500' version 1: 142704 bytes loaded at 0xc0a193a8 > ispfw: registered firmware > firmware: 'isp_2500_multi' version 1: 169352 bytes loaded at 0xc0a4b290 > ispfw: registered firmware > mem: > null: > nfslock: pseudo-device > Falling back to random adaptor > random: initialized > kbd0 at kbdmux0 > openfirm: > nexus0: > pcib0: mem > 0x1fe00000000-0x1fe0000ffff,0x1fe01000000-0x1fe010000ff irq > 2032,2030,2031,2021 on nexus0 > pcib0: Sabre, impl 0, version 0, IGN 0x1f, bus A, 66MHz > pcib0: DVMA map: 0xc0000000 to 0xc3ffffff 8192 entries > pcib0: PROM IOTSB size: 7 (131072 entries) > pcib0: bus range 0 to 2; PCI bus 0 > initalizing intr_countp > pcib0: [GIANT-LOCKED] > pci0: on pcib0 > pci0: domain=0, physical bus=0 > found-> vendor=0x108e, dev=0xa000, revid=0x00 > domain=0, bus=0, slot=0, func=0 > class=06-00-00, hdrtype=0x00, mfdev=0 > cmdreg=0x0146, statreg=0x02a0, cachelnsz=0 (dwords) > lattimer=0x40 (1920 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) > found-> vendor=0x108e, dev=0x5000, revid=0x11 > domain=0, bus=0, slot=1, func=1 > class=06-04-00, hdrtype=0x01, mfdev=1 > cmdreg=0x0147, statreg=0x02a0, cachelnsz=16 (dwords) > lattimer=0x40 (1920 ns), mingnt=0x23 (8750 ns), maxlat=0x00 (0 ns) > found-> vendor=0x108e, dev=0x5000, revid=0x11 > domain=0, bus=0, slot=1, func=0 > class=06-04-00, hdrtype=0x01, mfdev=1 > cmdreg=0x0147, statreg=0x02a0, cachelnsz=16 (dwords) > lattimer=0x40 (1920 ns), mingnt=0x23 (8750 ns), maxlat=0x00 (0 ns) > pcib1: at device 1.1 on pci0 > pcib1: domain 0 > pcib1: secondary bus 1 > pcib1: subordinate bus 1 > pcib1: I/O decode 0xc00000-0xdfffff, 0xe00000-0xffffff > pcib1: memory decode 0xe0000000-0xffffffff > pci1: on pcib1 > pci1: domain=0, physical bus=1 > found-> vendor=0x108e, dev=0x1000, revid=0x01 > domain=0, bus=1, slot=1, func=0 > class=06-80-00, hdrtype=0x00, mfdev=1 > cmdreg=0x0146, statreg=0x0280, cachelnsz=16 (dwords) > lattimer=0x50 (2400 ns), mingnt=0x0a (2500 ns), maxlat=0x19 (6250 > ns) > map[10]: type Memory, range 32, base 0xf0000000, size 24, enabled > pcib1: device (null) requested decoded memory range 0xf0000000-0xf0ffffff > map[14]: type Memory, range 32, base 0xf1000000, size 23, enabled > pcib1: device (null) requested decoded memory range 0xf1000000-0xf17fffff > found-> vendor=0x108e, dev=0x1001, revid=0x01 > domain=0, bus=1, slot=1, func=1 > class=02-00-00, hdrtype=0x00, mfdev=1 > cmdreg=0x0000, statreg=0x0280, cachelnsz=16 (dwords) > lattimer=0x50 (2400 ns), mingnt=0x0a (2500 ns), maxlat=0x05 (1250 > ns) > map[10]: type Memory, range 32, base 0xe0000000, size 15, memory > disabled > pcib1: device (null) requested decoded memory range 0xe0000000-0xe0007fff > found-> vendor=0x1002, dev=0x4754, revid=0x9a > domain=0, bus=1, slot=2, func=0 > class=03-00-00, hdrtype=0x00, mfdev=0 > cmdreg=0x0080, statreg=0x0280, cachelnsz=16 (dwords) > lattimer=0x40 (1920 ns), mingnt=0x08 (2000 ns), maxlat=0x00 (0 ns) > intpin=a, irq=255 > map[10]: type Memory, range 32, base 0xe1000000, size 24, memory > disabled > pcib1: device (null) requested decoded memory range 0xe1000000-0xe1ffffff > map[14]: type I/O Port, range 32, base 0, size 8, port disabled > pcib1: device (null) requested unsupported I/O range 0x0-0xff > pci1: pci0:1:2:0 bar 0x14 failed to allocate > map[18]: type Memory, range 32, base 0, size 12, enabled > pcib1: device (null) requested unsupported memory range 0x0-0xfff > pci1: pci0:1:2:0 bar 0x18 failed to allocate > found-> vendor=0x1095, dev=0x0646, revid=0x03 > domain=0, bus=1, slot=3, func=0 > class=01-01-8f, hdrtype=0x00, mfdev=0 > cmdreg=0x0001, statreg=0x0280, cachelnsz=0 (dwords) > lattimer=0x10 (480 ns), mingnt=0x02 (500 ns), maxlat=0x04 (1000 ns) > intpin=a, irq=255 > map[10]: type I/O Port, range 32, base 0xc00000, size 3, enabled > pcib1: device (null) requested decoded I/O range 0xc00000-0xc00007 > map[14]: type I/O Port, range 32, base 0xc00008, size 2, enabled > pcib1: device (null) requested decoded I/O range 0xc00008-0xc0000b > map[18]: type I/O Port, range 32, base 0xc00010, size 3, enabled > pcib1: device (null) requested decoded I/O range 0xc00010-0xc00017 > map[1c]: type I/O Port, range 32, base 0xc00018, size 2, enabled > pcib1: device (null) requested decoded I/O range 0xc00018-0xc0001b > map[20]: type I/O Port, range 32, base 0xc00020, size 4, enabled > pcib1: device (null) requested decoded I/O range 0xc00020-0xc0002f > ebus0: mem 0xf0000000-0xf0ffffff,0xf1000000-0xf17fffff > at device 1.0 on pci1 > pcib2: at device 1.0 on pci0 > pcib2: domain 0 > pcib2: secondary bus 2 > pcib2: subordinate bus 255 > pcib2: I/O decode 0x0-0x1fffff, 0x200000-0x3fffff, > 0x400000-0x5fffff, 0x600000-0x7fffff, 0x800000-0x9fffff, 0xa00000-0xbfffff > pcib2: memory decode 0x0-0x1fffffff, 0x20000000-0x3fffffff, > 0x40000000-0x5fffffff, 0x60000000-0x7fffffff, 0x80000000-0x9fffffff, > 0xa0000000-0xbfffffff > pci2: on pcib2 > pci2: domain=0, physical bus=2 > found-> vendor=0x1095, dev=0x3124, revid=0x01 > domain=0, bus=2, slot=1, func=0 > class=01-04-00, hdrtype=0x00, mfdev=0 > cmdreg=0x0080, statreg=0x02b0, cachelnsz=16 (dwords) > lattimer=0x40 (1920 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) > intpin=a, irq=255 > powerspec 2 supports D0 D1 D2 D3 current D0 > MSI supports 1 message, 64 bit > map[10]: type Memory, range 64, base 0x2000, size 7, memory > disabled > pcib2: device (null) requested decoded memory range 0x2000-0x207f > map[18]: type Memory, range 64, base 0x8000, size 15, enabled > pcib2: device (null) requested decoded memory range 0x8000-0xffff > map[20]: type I/O Port, range 32, base 0x400, size 4, port > disabled > pcib2: device (null) requested decoded I/O range 0x400-0x40f > auxio0: addr > 0x1400726000-0x1400726003,0x1400728000-0x1400728003,0x140072a000-0x140072a003,0x140072c000-0x140072c003,0x140072f000-0x140072f003 > on ebus0 > ebus0: addr 0x1400724000-0x1400724003 irq 37 (no driver attached) > ebus0: addr 0x1400504000-0x1400504002 (no driver attached) > scc0: addr 0x1400400000-0x140040007f > irq 43 on ebus0 > scc0: not resetting hardware > uart0: on scc0 > uart0: CTS oflow > uart0: console (9600,n,8,1) > uart0: fast interrupt > uart1: on scc0 > uart1: CTS oflow > uart1: fast interrupt > scc0: fast interrupt > uart2: <16550 or compatible> addr 0x14003083f8-0x14003083ff irq 41 on ebus0 > uart2: keyboard (1200,n,8,1) > uart2: fast interrupt > uart2: keyboard not present > uart3: <16550 or compatible> addr 0x14003062f8-0x14003062ff irq 42 on ebus0 > uart3: fast interrupt > ebus0: addr > 0x14003043bc-0x14003043cb,0x140030015c-0x140030015d,0x1400700000-0x140070000f > irq 34 (no driver attached) > ebus0: addr > 0x14003023f0-0x14003023f7,0x1400706000-0x140070600f,0x1400720000-0x1400720003 > irq 39 (no driver attached) > eeprom0: addr 0x1400000000-0x1400001fff on ebus0 > eeprom0: model mk48t59 > eeprom0: mk48txx_attach: battery low > eeprom0: cannot attach time of day clock > device_attach: eeprom0 attach returned 6 > ebus0: addr 0x1000000000-0x10000fffff (no driver attached) > pcm0: addr > 0x1400200000-0x14002000ff,0x1400702000-0x140070200f,0x1400704000-0x140070400f,0x1400722000-0x1400722003 > irq 35,36 on ebus0 > pcm0: > pcm0: Mixer "pcm": > pcm0: Mixer "speaker": > pcm0: Mixer "line": > pcm0: Mixer "mic": > pcm0: Mixer "cd": > hme0: mem 0xe0000000-0xe0007fff at device 1.1 on > pci1 > miibus0: on hme0 > nsphy0: PHY 1 on miibus0 > nsphy0: OUI 0x1000e8, model 0x0000, rev. 1 > nsphy0: none, 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto > hme0: bpf attached > hme0: Ethernet address: 08:00:20:79:87:9a > machfb0: mem 0xe1000000-0xe1ffffff at device 2.0 on pci1 > machfb0: 8 MB aperture at 0xd09f6000 swapped > machfb0: 2048 KB SGRAM 62.999 MHz, maximum RAMDAC clock 170 MHz, DSP > machfb0: resolution 1152x900 at 8 bpp > atapci0: port > 0xc00000-0xc00007,0xc00008-0xc0000b,0xc00010-0xc00017,0xc00018-0xc0001b,0xc00020-0xc0002f > at device 3.0 on pci1 > ata2: at channel 0 on atapci0 > ata3: at channel 1 on atapci0 > siis0: port 0x400-0x40f mem > 0x2000-0x207f,0x8000-0xffff at device 1.0 on pci2 > siisch0: at channel 0 on siis0 > siisch1: at channel 1 on siis0 > siisch2: at channel 2 on siis0 > siisch3: at channel 3 on siis0 > syscons0: on nexus0 > syscons0: Unknown <16 virtual consoles, flags=0x100> > syscons0: fb0, kbd0, terminal emulator: scteken (teken terminal) > procfs registered > Timecounter "tick" frequency 270000000 Hz quality 1000 > Event timer "tick" frequency 270000000 Hz quality 1000 > Timecounters tick every 1.000 msec > siisch0: CONNECT requested > siisch0: SIIS reset... > siisch0: SATA connect time=100us status=00000123 > siisch0: SIIS reset done: devices=00000001 > (noperiph:siisch0:0:-1:ffffffff): rescan already queued > vlan: initialized, using hash tables with chaining > tcp_init: net.inet.tcp.tcbhashsize auto tuned to 2048 > lo0: bpf attached > ata2: reset tp1 mask=01 ostat0=50 ostat1=ff > ata2: stat0=0xd0 err=0x00 lsb=0x6b msb=0x8a > ata2: stat0=0xd0 err=0x00 lsb=0x6b msb=0x8a > ata2: stat0=0x50 err=0x01 lsb=0x00 msb=0x00 > ata2: reset tp2 stat0=50 stat1=00 devices=0x1 > ata3: reset tp1 mask=01 ostat0=00 ostat1=ff > ata3: stat0=0x00 err=0x01 lsb=0x14 msb=0xeb > ata3: reset tp2 stat0=00 stat1=00 devices=0x10000 > siisch1: SIIS reset... > siisch1: SATA connect timeout time=10000us status=00000000 > siisch1: SIIS reset done: phy reset found no device > siisch2: SIIS reset... > siisch2: SATA connect timeout time=10000us status=00000000 > siisch2: SIIS reset done: phy reset found no device > siisch3: SIIS reset... > siisch3: SATA connect timeout time=10000us status=00000000 > siisch3: SIIS reset done: phy reset found no device > GEOM: new disk cd0 > pass0 at ata2 bus 0 scbus0 target 0 lun 0 > pass0: cd0 at ata3 bus 0 scbus1 target 0 lun 0 > cd0: Removable CD-ROM SCSI-0 device > cd0: Serial Number 1997/12/08 > cd0: 16.700MB/s transfers (WDMA2, ATAPI 12bytes, PIO 65534bytes) > cd0: cd present [88382 x 2048 byte records] > ATA-8 SATA 2.x device > pass0: Serial Number WD-WXQ0A99K2533 > pass0: 16.700MB/s transfers (WDMA2, PIO 8192bytes) > pass1 at ata3 bus 0 scbus1 target 0 lun 0 > pass1: Removable CD-ROM SCSI-0 device > pass1: Serial Number 1997/12/08 > pass1: 16.700MB/s transfers (WDMA2, ATAPI 12bytes, PIO 65534bytes) > pass2 at siisch0 bus 0 scbus2 target 0 lun 0 > pass2: ATA-8 SATA 2.x device > pass2: Serial Number WD-WMAU00028845 > pass2: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes) > pass2: Command Queueing enabled > ada0 at ata2 bus 0 scbus0 target 0 lun 0 > ada0: ATA-8 SATA 2.x device > ada0: Serial Number WD-WXQ0A99K2533 > ada0: 16.700MB/s transfers (WDMA2, PIO 8192bytes) > ada0: 238475MB (488397168 512 byte sectors: 16H 63S/T 16383C) > ada0: Previously was known as ad0 > ada1 at siisch0 bus 0 scbus2 target 0 lun 0 > ada1: ATA-8 SATA 2.x device > ada1: Serial Number WD-WMAU00028845 > ada1: 300.000MB/s transfers (SATA 2.x, UDMA6, PIO 8192bytes) > ada1: Command Queueing enabled > ada1: 715404MB (1465149168 512 byte sectors: 16H 63S/T 16383C) > ada1: Previously was known as ad1 > random: unblocking device. > GEOM: new disk ada0 > GEOM: new disk ada1 > GEOM: ada1: the secondary GPT table is corrupt or invalid. > GEOM: ada1: using the primary only -- recovery suggested. > GEOM: diskid/DISK-WD-WMAU00028845: the secondary GPT table is corrupt or > invalid. > GEOM: diskid/DISK-WD-WMAU00028845: using the primary only -- recovery > suggested. > Trying to mount root from ufs:/dev/ada0a [rw]... > warning: no time-of-day clock registered, system time will not be set > accurately > start_init: trying /sbin/init > crypto: > cryptosoft0: on nexus0 > crypto: assign cryptosoft0 driver id 0, flags 100663296 > crypto: cryptosoft0 registers alg 1 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 2 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 3 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 4 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 5 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 16 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 6 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 7 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 18 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 19 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 20 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 8 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 15 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 9 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 10 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 13 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 14 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 11 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 22 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 21 flags 0 maxoplen 0 > crypto: cryptosoft0 registers alg 17 flags 0 maxoplen 0 > GEOM_ELI: Device ada0b.eli created. > GEOM_ELI: Encryption: AES-XTS 128 > GEOM_ELI: Crypto: software > > From owner-freebsd-sparc64@FreeBSD.ORG Wed Oct 15 19:05:09 2014 Return-Path: Delivered-To: freebsd-sparc64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D31BDE09 for ; Wed, 15 Oct 2014 19:05:09 +0000 (UTC) Received: from mx.bsdtec.net (mx.bsdtec.net [174.34.171.65]) by mx1.freebsd.org (Postfix) with ESMTP id 9F0CCF9 for ; Wed, 15 Oct 2014 19:05:09 +0000 (UTC) Received: from localhost (mx.bsdtec.net [172.16.32.2]) by mx.bsdtec.net (Postfix) with ESMTP id A578548989C; Wed, 15 Oct 2014 19:05:03 +0000 (UTC) Received: from mx.bsdtec.net ([172.16.32.2]) by localhost (mx.bsdtec.net [172.16.32.2]) (amavisd-new, port 10032) with ESMTP id cr0LHES5IOuH; Wed, 15 Oct 2014 19:04:58 +0000 (UTC) Received: from localhost (mx.bsdtec.net [172.16.32.2]) by mx.bsdtec.net (Postfix) with ESMTP id 9D3954898C0; Wed, 15 Oct 2014 19:04:58 +0000 (UTC) X-Virus-Scanned: amavisd-new at bsdtec.net Received: from mx.bsdtec.net ([172.16.32.2]) by localhost (mx.bsdtec.net [172.16.32.2]) (amavisd-new, port 10026) with ESMTP id nDR174CpkkHy; Wed, 15 Oct 2014 19:04:58 +0000 (UTC) Received: from mx.bsdtec.net (mx.bsdtec.net [172.16.32.2]) by mx.bsdtec.net (Postfix) with ESMTP id 608EC48989C; Wed, 15 Oct 2014 19:04:58 +0000 (UTC) Date: Wed, 15 Oct 2014 19:04:58 +0000 (GMT) From: Craig Butler To: "freebsd-sparc64 " Message-ID: <19857113.46.1413400070361.JavaMail.craig@w520> In-Reply-To: <20140913190516.GB96075@darkthrone.kvedulv.de> References: <54146A9E.4070800@FreeBSD.org> <20140913190516.GB96075@darkthrone.kvedulv.de> Subject: Re: Playing with HEAD/sparc64 and clang MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [172.16.32.3] X-Mailer: Zimbra 8.0.4_GA_5718 (Zimbra Desktop/7.2.5_12038_Windows) Thread-Topic: Playing with HEAD/sparc64 and clang Thread-Index: O6vT61ZBo6eXyvcMB/WTVtbH6BAO3A== X-BeenThere: freebsd-sparc64@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Porting FreeBSD to the Sparc List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 15 Oct 2014 19:05:09 -0000 ----- Original Message ----- > From: "Michael Moll" > To: "Jean-S=C3=A9bastien P=C3=A9dron" > Cc: freebsd-sparc64@FreeBSD.org > Sent: Saturday, 13 September, 2014 8:05:16 PM > Subject: Re: Playing with HEAD/sparc64 and clang >=20 > Hi, >=20 > On Sat, Sep 13, 2014 at 06:02:38PM +0200, Jean-S=C3=A9bastien P=C3=A9dron > wrote: > > When I boot the kernel built with clang, I get: > > jumping to kernel entry at 0xc00a8000 > > Data Access Exception > >=20 > > Then, I'm left at the OpenBoot prompt. >=20 > To my knowledge, the last communication about that topic has been > around > February/March 2014, but no working patch turned up. >=20 > Regards > -- > Michael Moll > _______________________________________________ > freebsd-sparc64@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-sparc64 > To unsubscribe, send any mail to > "freebsd-sparc64-unsubscribe@freebsd.org" >=20 +1 repeatable with r272668 clang compiled HEAD kernel. GCC kernel and GCC world can compile and run clang ports tho; have built screen + dependencies via clang native and works as expected. Regards Craig Butler =20