From owner-freebsd-drivers@FreeBSD.ORG Sun May 15 01:50:58 2011 Return-Path: Delivered-To: freebsd-drivers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 403821065672 for ; Sun, 15 May 2011 01:50:58 +0000 (UTC) (envelope-from mavbsd@gmail.com) Received: from mail-yx0-f182.google.com (mail-yx0-f182.google.com [209.85.213.182]) by mx1.freebsd.org (Postfix) with ESMTP id B2D9D8FC0A for ; Sun, 15 May 2011 01:50:57 +0000 (UTC) Received: by yxl31 with SMTP id 31so1538898yxl.13 for ; Sat, 14 May 2011 18:50:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:sender:message-id:date:from:user-agent :mime-version:to:cc:subject:references:in-reply-to:content-type :content-transfer-encoding; bh=Sfkb5J92D1ZLUuLwD5hsRmhFpbq0HMTdKxceHQvMr50=; b=I2uy8eeEjSPu+otmwpbNyv4UjGe1BDrp0aupv2kqbPd/zGsVacgIShlenhteawFsAr ubvvbEz9iWKz7MlIqCvN3R/jZjhJRZCFedTEUSt1KWvGz++Xhhm8VrBxd89/31wORmtN L1aQO8cQDkZoemd5/MH+VOppoPPyA2i5eQtdE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; b=umq+g1CbJ7axOKyKVwb+sz60il1zTckQ4pRd6VpQgIZsU1GAziR0RhbHawXrDorrUL vGIARqWdCyDEsCmtHXVo6b9CnaiJ08cgsBaKsdyOmrVuhl3jx5ih/cq09JZHLTHSD5Rf ILEhKGoo78405P0kWbgmMhYkSsA2yx6rMz+xU= Received: by 10.150.68.34 with SMTP id q34mr2417658yba.248.1305422667669; Sat, 14 May 2011 18:24:27 -0700 (PDT) Received: from mavbook.mavhome.dp.ua ([192.75.139.251]) by mx.google.com with ESMTPS id q29sm1926282yba.2.2011.05.14.18.24.26 (version=SSLv3 cipher=OTHER); Sat, 14 May 2011 18:24:26 -0700 (PDT) Sender: Alexander Motin Message-ID: <4DCF2B46.3030407@FreeBSD.org> Date: Sun, 15 May 2011 04:24:22 +0300 From: Alexander Motin User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.2.15) Gecko/20110310 Thunderbird/3.1.9 MIME-Version: 1.0 To: Dieter BSD References: <20110514215419.227500@gmx.com> In-Reply-To: <20110514215419.227500@gmx.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: freebsd-drivers@freebsd.org Subject: Re: Siis(4) does not play well with others! :-( X-BeenThere: freebsd-drivers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Writing device drivers for FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 May 2011 01:50:58 -0000 On 15.05.2011 00:54, Dieter BSD wrote: > FreeBSD 8.2 amd64 > With improvements to siis(4) and ahci(4) by Alexander Motin > from approx 2011-04-13. > > SiI3132 SATA controller > Port Multiplier 37261095 1706 > > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > kernel: siisch3: Error while READ LOG EXT > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > kernel: siisch3: SIIS reset... > kernel: siisch3: siis_sata_connect() calling DELAY(1000) > kernel: siisch3: SATA connect time=1ms status=00000123 > kernel: siisch3: SIIS reset done: devices=00000001 > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > kernel: siisch3: Error while READ LOG EXT > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > kernel: siisch3: SIIS reset... > kernel: siisch3: siis_sata_connect() calling DELAY(1000) > kernel: siisch3: SATA connect time=1ms status=00000123 > kernel: siisch3: SIIS reset done: devices=00000001 > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > ... > kernel: siisch3: Timeout on slot 30 > kernel: siisch3: siis_timeout is 00040000 ss 60000000 rs 60000000 es 00000000 sts 801e2000 serr 00000000 > kernel: siisch3: ... waiting for slots 20000000 > kernel: siisch3: Timeout on slot 29 > kernel: siisch3: siis_timeout is 00040000 ss 60000000 rs 60000000 es 00000000 sts 801e2000 serr 00000000 > kernel: siisch3: SIIS reset... > kernel: siisch3: siis_sata_connect() calling DELAY(1000) > kernel: siisch3: SATA connect time=1ms status=00000123 > kernel: siisch3: SIIS reset done: devices=00000001 > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > /usr/sbin/cron[3369]: (root) CMD (/usr/libexec/atrun -l 10) > kernel: siisch3: Timeout on slot 29 > kernel: siisch3: siis_timeout is 00040000 ss 20000000 rs 20000000 es 00000000 sts 801f2000 serr 00000000 > kernel: siisch3: SIIS reset... > kernel: siisch3: siis_sata_connect() calling DELAY(1000) > kernel: siisch3: SATA connect time=1ms status=00000123 > kernel: siisch3: SIIS reset done: devices=00000001 > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > /usr/sbin/cron[3373]: (root) CMD (/usr/libexec/atrun -l 10) > kernel: siisch3: Timeout on slot 29 > kernel: siisch3: siis_timeout is 00040000 ss 20000000 rs 20000000 es 00000000 sts 801f2000 serr 00000000 > kernel: siisch3: SIIS reset... > kernel: siisch3: siis_sata_connect() calling DELAY(1000) > kernel: siisch3: SATA connect time=1ms status=00000123 > kernel: siisch3: SIIS reset done: devices=00000001 > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > kernel: (ada9:siisch3:0:4:0): lost device > kernel: siisch3: Timeout on slot 29 > kernel: siisch3: siis_timeout is 00040000 ss 30000000 rs 30000000 es 00000000 sts 801f2000 serr 00000000 > kernel: siisch3: ... waiting for slots 10000000 > kernel: siisch3: Timeout on slot 28 > kernel: siisch3: siis_timeout is 00040000 ss 30000000 rs 30000000 es 00000000 sts 801f2000 serr 00000000 > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > kernel: siisch3: SIIS reset... > kernel: siisch3: siis_sata_connect() calling DELAY(1000) > kernel: siisch3: SATA connect time=1ms status=00000123 > kernel: siisch3: SIIS reset done: devices=00000001 > ... > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > last message repeated 2 times > kernel: siisch3: SIIS reset... > kernel: siisch3: siis_sata_connect() calling DELAY(1000) > kernel: siisch3: SATA connect time=1ms status=00000123 > kernel: siisch3: SIIS reset done: devices=00000001 > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > last message repeated 2 times > kernel: siisch3: SIIS reset... > kernel: siisch3: siis_sata_connect() calling DELAY(1000) > kernel: siisch3: SATA connect time=1ms status=00000123 > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > last message repeated 1001 times > kernel: siisch3: port is not ready (timeout 1000ms) status = 001f2000 > kernel: siisch3: port ready timeout > kernel: siisch3: trying full port reset ... > kernel: siisch3: siis_reset() calling DELAY(10000) > kernel: siisch3: siis_wait_ready() calling DELAY(1000) > ... > > I have LEDs connected to the PM and they were flashing > on and off together, but not in a normal disk access pattern. > > This might be due to a bad disk. Next time the machine is free > I'll move the disk to a different port and see if the problem > follows the disk or stays with that PM port. > > Problem is that this time, siis(4) didn't "just" lock out > Ethernet, but nearly the entire machine. Tried to log in > on the RS-232 console, getty was running, but login hung on > the password. One Ethernet (PCI card ed(4)) would respond > to ping but not to telnet. Another Ethernet (onboard bge(4)) > would not even respond to a ping. > > The reset button stopped the PM LEDS flashing, but didn't > reboot the machine. Had to power cycle to get the machine > back up. > > Incoming data was lost due to this. :-( > > None of the disks connected to the siis controllers have > any system partitions, They are user data only. The root > partition is on the nforce controller, all other system > partitions and swap are on the ahci controller. > > So regardless of whatever problem this PM or disk might have, > unrelated system activity such as logging in on the console, > responding to ping and telnet, etc. should not have been affected. > Siis(4) needs to learn how to play well with others! For now, I can only say that you are still running not the latest driver version. Latest have some delays reduced and report connect time in "us". May be some more of remaining could be replaced with interrupts (specifically on siis hardware), but I need to think and experiment more with it. Generally, the situation when the system doesn't reboot with the reset button doesn't smell good to me. -- Alexander Motin