[illumos-Advocates] RTI 896 sata module can panic on smartctl issued in vbox
Garrett D'Amore
garrett at damore.org
Mon Apr 11 20:45:28 PDT 2011
http://mexico.purplecow.org/gdamore/webrev/satapanic/
(There is one trivial lint fix, and a couple of whitespace fixes for cstyle, that I've made since the above webrev, but I have not regenerated the webrev. I don't think this was significant enough to warrant a new review.)
I've tested this code on virtual box, where the panic is readily
reproducible using smartctl. The command that smartctl uses causes a
SATA reset to be issued. After this code, the panic is no longer
reproducible. I have used this code (and am using it) on m primary
workstation for a number of hours now.
hg outgoing -v:
running ssh anonhg at hg.illumos.org "hg -R illumos-gate serve --stdio"
comparing with ssh://anonhg@hg.illumos.org/illumos-gate
searching for changes
changeset: 13337:ebf76b61349f
tag: tip
user: Garrett D'Amore <garrett at nexenta.com>
date: Mon Apr 11 20:37:33 2011 -0700
description:
896 sata module can panic on smartctl issued in vbox
Reviewed by: Albert Lee <trisk at nexenta.com>
Reviewed by: Gordon Ross <gwr at nexenta.com>
modified:
usr/src/uts/common/io/sata/impl/sata.c
hg pbchk:
garrett at thinkpad{20}> hg pbchk
Copyright check:
C style check:
Header format check:
Java style check:
Mapfile comment check:
File permission check:
Keywords check:
Comments check:
Checking for new tags:
Checking for multiple heads (or branches):
Checking for branch changes:
Checking for uncommitted changes:
Checking for merges:
Nightly build message:
==== Nightly distributed build started: Mon Apr 11 12:58:36 PDT 2011 ====
==== Nightly distributed build completed: Mon Apr 11 14:59:13 PDT 2011 ====
==== Total build time ====
real 2:00:37
==== Build environment ====
/usr/bin/uname
SunOS thinkpad 5.11 qlc2322 i86pc i386 i86pc
/opt/SUNWspro/bin/dmake
dmake: Sun Distributed Make 7.8 SunOS_i386 Patch 126504-01 2007/07/19
number of concurrent jobs = 10
32-bit compiler
/opt/onbld/bin/i386/cw -_cc
cw version 1.29
primary: /opt/SUNWspro/bin/cc
cc: Sun C 5.9 SunOS_i386 Patch 124868-10 2009/04/30
shadow: /usr/sfw/bin/gcc
gcc (GCC) 3.4.3 (csl-sol210-3_4-20050802)
64-bit compiler
/opt/onbld/bin/i386/cw -_cc
cw version 1.29
primary: /opt/SUNWspro/bin/cc
cc: Sun C 5.9 SunOS_i386 Patch 124868-10 2009/04/30
shadow: /usr/sfw/bin/gcc
gcc (GCC) 3.4.3 (csl-sol210-3_4-20050802)
/usr/java/bin/javac
java full version "1.6.0_21-b06"
/usr/ccs/bin/as
as: Sun Compiler Common 12 SunOS_i386 snv_121 08/03/2009
/usr/ccs/bin/ld
ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.1726
Build project: group.staff
Build taskid: 144
==== Nightly argument issues ====
==== Build version ====
satafix
==== Make clobber ERRORS ====
==== Make tools clobber ERRORS ====
==== Tools build errors ====
==== Build errors (DEBUG) ====
==== Build warnings (DEBUG) ====
==== Elapsed build time (DEBUG) ====
real 1:16:22.2
user 6:42:40.2
sys 1:21:49.7
==== Build noise differences (DEBUG) ====
1c1
< -classpath
/data/work/qlc2322/usr/src/lib/libdtrace_jni/java/classes:/data/work/qlc2322/usr/src/lib/libdtrace_jni/java/src
-d
/data/work/qlc2322/proto/root_i386/usr/share/lib/java/javadoc/dtrace/api \
---
> -classpath
/data/work/satafix/usr/src/lib/libdtrace_jni/java/classes:/data/work/satafix/usr/src/lib/libdtrace_jni/java/src
-d
/data/work/satafix/proto/root_i386/usr/share/lib/java/javadoc/dtrace/api \
12,19c12,19
< LD_RUN_PATH="/usr/lib:/lib"
/data/work/qlc2322/usr/src/tools/proto/root_i386-nd/opt/onbld/bin/i386/cw -_cc
-G Project.o -o blib/arch/auto/Sun/Solaris/Project/Project.so \
< Note:
/data/work/qlc2322/usr/src/cmd/krb5/kadmin/gui/visualrt/sunsoft/jws/visual/rt/awt/CheckboxPanel.java
uses or overrides a deprecated API.
< Note:
/data/work/qlc2322/usr/src/cmd/krb5/kadmin/gui/visualrt/sunsoft/jws/visual/rt/awt/ScrollableArea.java
uses or overrides a deprecated API.
< Note:
/data/work/qlc2322/usr/src/cmd/krb5/kadmin/gui/visualrt/sunsoft/jws/visual/rt/awt/TabbedFolder.java
uses or overrides a deprecated API.
< Note:
/data/work/qlc2322/usr/src/cmd/krb5/kadmin/gui/visualrt/sunsoft/jws/visual/rt/type/ColorStore.java
uses unchecked or unsafe operations.
< Note:
/data/work/qlc2322/usr/src/cmd/krb5/kadmin/gui/visualrt/sunsoft/jws/visual/rt/type/SubFieldTokenizer.java
uses unchecked or unsafe operations.
< Note:
/data/work/qlc2322/usr/src/cmd/pools/poold/com/sun/solaris/domain/pools/ResourceMonitor.java
uses unchecked or unsafe operations.
< Note:
/data/work/qlc2322/usr/src/cmd/print/printmgr/com/sun/admin/pm/server/Debug.java
uses unchecked or unsafe operations.
---
> LD_RUN_PATH="/usr/lib:/lib"
/data/work/satafix/usr/src/tools/proto/root_i386-nd/opt/onbld/bin/i386/cw -_cc
-G Project.o -o blib/arch/auto/Sun/Solaris/Project/Project.so \
> Note:
/data/work/satafix/usr/src/cmd/krb5/kadmin/gui/visualrt/sunsoft/jws/visual/rt/awt/CheckboxPanel.java
uses or overrides a deprecated API.
> Note:
/data/work/satafix/usr/src/cmd/krb5/kadmin/gui/visualrt/sunsoft/jws/visual/rt/awt/ScrollableArea.java
uses or overrides a deprecated API.
> Note:
/data/work/satafix/usr/src/cmd/krb5/kadmin/gui/visualrt/sunsoft/jws/visual/rt/awt/TabbedFolder.java
uses or overrides a deprecated API.
> Note:
/data/work/satafix/usr/src/cmd/krb5/kadmin/gui/visualrt/sunsoft/jws/visual/rt/type/ColorStore.java
uses unchecked or unsafe operations.
> Note:
/data/work/satafix/usr/src/cmd/krb5/kadmin/gui/visualrt/sunsoft/jws/visual/rt/type/SubFieldTokenizer.java
uses unchecked or unsafe operations.
> Note:
/data/work/satafix/usr/src/cmd/pools/poold/com/sun/solaris/domain/pools/ResourceMonitor.java
uses unchecked or unsafe operations.
> Note:
/data/work/satafix/usr/src/cmd/print/printmgr/com/sun/admin/pm/server/Debug.java
uses unchecked or unsafe operations.
==== package build errors (DEBUG) ====
==== Validating manifests against proto area ====
==== Check ELF runtime attributes ====
==== Diff ELF runtime attributes (since last build) ====
==== 'dmake lint' of src ERRORS ====
==== Elapsed time of 'dmake lint' of src ====
real 27:53.9
user 1:38:36.1
sys 25:58.8
==== lint warnings src ====
==== lint noise differences src ====
==== cstyle/hdrchk errors ====
==== Find core files ====
==== Check lists of files ====
==== Impact on file permissions ====
More information about the Advocates
mailing list