From owner-svn-src-projects@FreeBSD.ORG Tue Feb 8 19:51:41 2011 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 676BF106566B; Tue, 8 Feb 2011 19:51:41 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 532898FC0C; Tue, 8 Feb 2011 19:51:41 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id p18Jpfgs057730; Tue, 8 Feb 2011 19:51:41 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id p18Jpf08057727; Tue, 8 Feb 2011 19:51:41 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201102081951.p18Jpf08057727@svn.freebsd.org> From: Alexander Motin Date: Tue, 8 Feb 2011 19:51:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r218452 - in projects/graid/7: . contrib/bsnmp/snmpd contrib/wpa_supplicant gnu/usr.bin/groff/tmac share/misc sys/geom/raid tools/tools/nanobsd usr.sbin usr.sbin/bsnmpd/modules/snmp_hos... X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 08 Feb 2011 19:51:41 -0000 Author: mav Date: Tue Feb 8 19:51:40 2011 New Revision: 218452 URL: http://svn.freebsd.org/changeset/base/218452 Log: MFH r218446, r218449, r218450 Modified: projects/graid/7/sys/geom/raid/g_raid.c projects/graid/7/sys/geom/raid/tr_raid1.c Directory Properties: projects/graid/7/ (props changed) projects/graid/7/COPYRIGHT (props changed) projects/graid/7/Makefile (props changed) projects/graid/7/Makefile.inc1 (props changed) projects/graid/7/ObsoleteFiles.inc (props changed) projects/graid/7/UPDATING (props changed) projects/graid/7/bin/ (props changed) projects/graid/7/bin/chflags/ (props changed) projects/graid/7/bin/chio/ (props changed) projects/graid/7/bin/cp/ (props changed) projects/graid/7/bin/csh/ (props changed) projects/graid/7/bin/dd/ (props changed) projects/graid/7/bin/df/ (props changed) projects/graid/7/bin/echo/ (props changed) projects/graid/7/bin/expr/ (props changed) projects/graid/7/bin/kill/ (props changed) projects/graid/7/bin/ln/ (props changed) projects/graid/7/bin/ls/ (props changed) projects/graid/7/bin/pax/ (props changed) projects/graid/7/bin/ps/ (props changed) projects/graid/7/bin/rm/ (props changed) projects/graid/7/bin/sh/ (props changed) projects/graid/7/bin/test/ (props changed) projects/graid/7/cddl/contrib/opensolaris/ (props changed) projects/graid/7/cddl/lib/libzpool/ (props changed) projects/graid/7/contrib/bind9/ (props changed) projects/graid/7/contrib/binutils/ (props changed) projects/graid/7/contrib/bsnmp/ (props changed) projects/graid/7/contrib/bsnmp/snmpd/bsnmpd.1 (props changed) projects/graid/7/contrib/cpio/ (props changed) projects/graid/7/contrib/csup/ (props changed) projects/graid/7/contrib/expat/ (props changed) projects/graid/7/contrib/gcc/ (props changed) projects/graid/7/contrib/gdb/ (props changed) projects/graid/7/contrib/gdtoa/ (props changed) projects/graid/7/contrib/groff/ (props changed) projects/graid/7/contrib/ipfilter/ (props changed) projects/graid/7/contrib/less/ (props changed) projects/graid/7/contrib/libpcap/ (props changed) projects/graid/7/contrib/ncurses/ (props changed) projects/graid/7/contrib/netcat/ (props changed) projects/graid/7/contrib/ntp/ (props changed) projects/graid/7/contrib/nvi/ (props changed) projects/graid/7/contrib/pf/ (props changed) projects/graid/7/contrib/sendmail/ (props changed) projects/graid/7/contrib/smbfs/ (props changed) projects/graid/7/contrib/tcp_wrappers/ (props changed) projects/graid/7/contrib/tcsh/ (props changed) projects/graid/7/contrib/telnet/ (props changed) projects/graid/7/contrib/top/ (props changed) projects/graid/7/contrib/traceroute/ (props changed) projects/graid/7/contrib/wpa_supplicant/ (props changed) projects/graid/7/contrib/wpa_supplicant/wpa_supplicant.conf (props changed) projects/graid/7/crypto/openssh/ (props changed) projects/graid/7/crypto/openssl/ (props changed) projects/graid/7/etc/ (props changed) projects/graid/7/games/factor/ (props changed) projects/graid/7/games/fortune/ (props changed) projects/graid/7/games/grdc/ (props changed) projects/graid/7/gnu/ (props changed) projects/graid/7/gnu/lib/libstdc++/ (props changed) projects/graid/7/gnu/usr.bin/ (props changed) projects/graid/7/gnu/usr.bin/cc/ (props changed) projects/graid/7/gnu/usr.bin/cpio/ (props changed) projects/graid/7/gnu/usr.bin/cvs/ (props changed) projects/graid/7/gnu/usr.bin/gdb/ (props changed) projects/graid/7/gnu/usr.bin/gdb/kgdb/ (props changed) projects/graid/7/gnu/usr.bin/grep/ (props changed) projects/graid/7/gnu/usr.bin/groff/ (props changed) projects/graid/7/gnu/usr.bin/groff/tmac/mdoc.local (props changed) projects/graid/7/gnu/usr.bin/man/ (props changed) projects/graid/7/gnu/usr.bin/sort/ (props changed) projects/graid/7/include/ (props changed) projects/graid/7/kerberos5/ (props changed) projects/graid/7/lib/ (props changed) projects/graid/7/lib/bind/ (props changed) projects/graid/7/lib/csu/ (props changed) projects/graid/7/lib/libarchive/ (props changed) projects/graid/7/lib/libbluetooth/ (props changed) projects/graid/7/lib/libc/ (props changed) projects/graid/7/lib/libc/stdtime/ (props changed) projects/graid/7/lib/libc_r/ (props changed) projects/graid/7/lib/libcam/ (props changed) projects/graid/7/lib/libdisk/ (props changed) projects/graid/7/lib/libdwarf/ (props changed) projects/graid/7/lib/libelf/ (props changed) projects/graid/7/lib/libexpat/ (props changed) projects/graid/7/lib/libfetch/ (props changed) projects/graid/7/lib/libftpio/ (props changed) projects/graid/7/lib/libgeom/ (props changed) projects/graid/7/lib/libgssapi/ (props changed) projects/graid/7/lib/libkse/ (props changed) projects/graid/7/lib/libkvm/ (props changed) projects/graid/7/lib/libmagic/ (props changed) projects/graid/7/lib/libmemstat/ (props changed) projects/graid/7/lib/libpmc/ (props changed) projects/graid/7/lib/libradius/ (props changed) projects/graid/7/lib/libsm/ (props changed) projects/graid/7/lib/libstand/ (props changed) projects/graid/7/lib/libthr/ (props changed) projects/graid/7/lib/libthread_db/ (props changed) projects/graid/7/lib/libufs/ (props changed) projects/graid/7/lib/libutil/ (props changed) projects/graid/7/lib/msun/ (props changed) projects/graid/7/libexec/ (props changed) projects/graid/7/libexec/ftpd/ (props changed) projects/graid/7/libexec/rpc.rquotad/ (props changed) projects/graid/7/libexec/rpc.rstatd/ (props changed) projects/graid/7/libexec/rtld-elf/ (props changed) projects/graid/7/libexec/tftpd/ (props changed) projects/graid/7/release/ (props changed) projects/graid/7/release/doc/ (props changed) projects/graid/7/release/doc/en_US.ISO8859-1/hardware/ (props changed) projects/graid/7/release/picobsd/tinyware/login/ (props changed) projects/graid/7/rescue/ (props changed) projects/graid/7/sbin/ (props changed) projects/graid/7/sbin/atacontrol/ (props changed) projects/graid/7/sbin/bsdlabel/ (props changed) projects/graid/7/sbin/clri/ (props changed) projects/graid/7/sbin/ddb/ (props changed) projects/graid/7/sbin/devd/ (props changed) projects/graid/7/sbin/devfs/ (props changed) projects/graid/7/sbin/dhclient/ (props changed) projects/graid/7/sbin/dumpfs/ (props changed) projects/graid/7/sbin/fdisk/ (props changed) projects/graid/7/sbin/fdisk_pc98/ (props changed) projects/graid/7/sbin/fsck/ (props changed) projects/graid/7/sbin/fsck_ffs/ (props changed) projects/graid/7/sbin/fsck_msdosfs/ (props changed) projects/graid/7/sbin/geom/ (props changed) projects/graid/7/sbin/geom/class/label/ (props changed) projects/graid/7/sbin/geom/class/part/ (props changed) projects/graid/7/sbin/geom/class/stripe/ (props changed) projects/graid/7/sbin/geom/misc/ (props changed) projects/graid/7/sbin/growfs/ (props changed) projects/graid/7/sbin/ifconfig/ (props changed) projects/graid/7/sbin/init/ (props changed) projects/graid/7/sbin/ipf/ (props changed) projects/graid/7/sbin/ipfw/ (props changed) projects/graid/7/sbin/md5/ (props changed) projects/graid/7/sbin/mdconfig/ (props changed) projects/graid/7/sbin/mksnap_ffs/ (props changed) projects/graid/7/sbin/mount/ (props changed) projects/graid/7/sbin/mount_msdosfs/ (props changed) projects/graid/7/sbin/natd/ (props changed) projects/graid/7/sbin/newfs/ (props changed) projects/graid/7/sbin/newfs_msdos/ (props changed) projects/graid/7/sbin/ping6/ (props changed) projects/graid/7/sbin/reboot/ (props changed) projects/graid/7/sbin/restore/ (props changed) projects/graid/7/sbin/route/ (props changed) projects/graid/7/sbin/savecore/ (props changed) projects/graid/7/sbin/sconfig/ (props changed) projects/graid/7/sbin/shutdown/ (props changed) projects/graid/7/sbin/sysctl/ (props changed) projects/graid/7/sbin/tunefs/ (props changed) projects/graid/7/secure/lib/libcrypto/ (props changed) projects/graid/7/secure/lib/libssh/ (props changed) projects/graid/7/secure/lib/libssl/ (props changed) projects/graid/7/secure/libexec/sftp-server/ (props changed) projects/graid/7/secure/usr.bin/bdes/ (props changed) projects/graid/7/secure/usr.bin/openssl/ (props changed) projects/graid/7/secure/usr.bin/ssh/ (props changed) projects/graid/7/secure/usr.sbin/sshd/ (props changed) projects/graid/7/share/ (props changed) projects/graid/7/share/colldef/ (props changed) projects/graid/7/share/dict/ (props changed) projects/graid/7/share/doc/bind9/ (props changed) projects/graid/7/share/doc/papers/jail/ (props changed) projects/graid/7/share/doc/smm/01.setup/ (props changed) projects/graid/7/share/examples/ (props changed) projects/graid/7/share/man/ (props changed) projects/graid/7/share/man/man1/ (props changed) projects/graid/7/share/man/man3/ (props changed) projects/graid/7/share/man/man4/ (props changed) projects/graid/7/share/man/man5/ (props changed) projects/graid/7/share/man/man7/ (props changed) projects/graid/7/share/man/man8/ (props changed) projects/graid/7/share/man/man9/ (props changed) projects/graid/7/share/misc/ (props changed) projects/graid/7/share/misc/iso639 (props changed) projects/graid/7/share/misc/pci_vendors (props changed) projects/graid/7/share/mk/ (props changed) projects/graid/7/share/mklocale/ (props changed) projects/graid/7/share/monetdef/ (props changed) projects/graid/7/share/msgdef/ (props changed) projects/graid/7/share/numericdef/ (props changed) projects/graid/7/share/sendmail/ (props changed) projects/graid/7/share/syscons/ (props changed) projects/graid/7/share/syscons/keymaps/ (props changed) projects/graid/7/share/termcap/ (props changed) projects/graid/7/share/timedef/ (props changed) projects/graid/7/share/zoneinfo/ (props changed) projects/graid/7/sys/ (props changed) projects/graid/7/sys/cddl/contrib/opensolaris/ (props changed) projects/graid/7/sys/contrib/dev/acpica/ (props changed) projects/graid/7/sys/contrib/pf/ (props changed) projects/graid/7/tools/ (props changed) projects/graid/7/tools/build/ (props changed) projects/graid/7/tools/build/options/ (props changed) projects/graid/7/tools/debugscripts/ (props changed) projects/graid/7/tools/regression/acct/ (props changed) projects/graid/7/tools/regression/atm/ (props changed) projects/graid/7/tools/regression/bin/ (props changed) projects/graid/7/tools/regression/bin/date/ (props changed) projects/graid/7/tools/regression/bin/sh/ (props changed) projects/graid/7/tools/regression/file/ (props changed) projects/graid/7/tools/regression/file/flock/ (props changed) projects/graid/7/tools/regression/lib/libc/ (props changed) projects/graid/7/tools/regression/usr.bin/ (props changed) projects/graid/7/tools/regression/usr.bin/jot/ (props changed) projects/graid/7/tools/regression/usr.bin/tr/ (props changed) projects/graid/7/tools/sched/ (props changed) projects/graid/7/tools/test/ (props changed) projects/graid/7/tools/tools/ (props changed) projects/graid/7/tools/tools/aac/ (props changed) projects/graid/7/tools/tools/crypto/ (props changed) projects/graid/7/tools/tools/editing/ (props changed) projects/graid/7/tools/tools/nanobsd/ (props changed) projects/graid/7/tools/tools/nanobsd/FlashDevice.sub (props changed) projects/graid/7/tools/tools/nanobsd/nanobsd.sh (props changed) projects/graid/7/tools/tools/netrate/ (props changed) projects/graid/7/tools/tools/umastat/ (props changed) projects/graid/7/tools/tools/usb/ (props changed) projects/graid/7/usr.bin/ (props changed) projects/graid/7/usr.bin/basename/ (props changed) projects/graid/7/usr.bin/bluetooth/rfcomm_sppd/ (props changed) projects/graid/7/usr.bin/calendar/ (props changed) projects/graid/7/usr.bin/catman/ (props changed) projects/graid/7/usr.bin/cksum/ (props changed) projects/graid/7/usr.bin/comm/ (props changed) projects/graid/7/usr.bin/cpuset/ (props changed) projects/graid/7/usr.bin/csup/ (props changed) projects/graid/7/usr.bin/dirname/ (props changed) projects/graid/7/usr.bin/du/ (props changed) projects/graid/7/usr.bin/fetch/ (props changed) projects/graid/7/usr.bin/file/ (props changed) projects/graid/7/usr.bin/find/ (props changed) projects/graid/7/usr.bin/finger/ (props changed) projects/graid/7/usr.bin/fold/ (props changed) projects/graid/7/usr.bin/fstat/ (props changed) projects/graid/7/usr.bin/gcore/ (props changed) projects/graid/7/usr.bin/gprof/ (props changed) projects/graid/7/usr.bin/gzip/ (props changed) projects/graid/7/usr.bin/hexdump/ (props changed) projects/graid/7/usr.bin/id/ (props changed) projects/graid/7/usr.bin/indent/ (props changed) projects/graid/7/usr.bin/ipcrm/ (props changed) projects/graid/7/usr.bin/ipcs/ (props changed) projects/graid/7/usr.bin/jot/ (props changed) projects/graid/7/usr.bin/kdump/ (props changed) projects/graid/7/usr.bin/ktrace/ (props changed) projects/graid/7/usr.bin/ldd/ (props changed) projects/graid/7/usr.bin/less/ (props changed) projects/graid/7/usr.bin/locate/ (props changed) projects/graid/7/usr.bin/lockf/ (props changed) projects/graid/7/usr.bin/logger/ (props changed) projects/graid/7/usr.bin/make/ (props changed) projects/graid/7/usr.bin/ncal/ (props changed) projects/graid/7/usr.bin/netstat/ (props changed) projects/graid/7/usr.bin/newgrp/ (props changed) projects/graid/7/usr.bin/nsupdate/ (props changed) projects/graid/7/usr.bin/pkill/ (props changed) projects/graid/7/usr.bin/procstat/ (props changed) projects/graid/7/usr.bin/quota/ (props changed) projects/graid/7/usr.bin/rpcgen/ (props changed) projects/graid/7/usr.bin/ruptime/ (props changed) projects/graid/7/usr.bin/script/ (props changed) projects/graid/7/usr.bin/sed/ (props changed) projects/graid/7/usr.bin/shar/ (props changed) projects/graid/7/usr.bin/sockstat/ (props changed) projects/graid/7/usr.bin/stat/ (props changed) projects/graid/7/usr.bin/su/ (props changed) projects/graid/7/usr.bin/systat/ (props changed) projects/graid/7/usr.bin/tail/ (props changed) projects/graid/7/usr.bin/tar/ (props changed) projects/graid/7/usr.bin/tftp/ (props changed) projects/graid/7/usr.bin/tip/ (props changed) projects/graid/7/usr.bin/top/ (props changed) projects/graid/7/usr.bin/truncate/ (props changed) projects/graid/7/usr.bin/truss/ (props changed) projects/graid/7/usr.bin/uname/ (props changed) projects/graid/7/usr.bin/unifdef/ (props changed) projects/graid/7/usr.bin/units/ (props changed) projects/graid/7/usr.bin/uudecode/ (props changed) projects/graid/7/usr.bin/vmstat/ (props changed) projects/graid/7/usr.bin/w/ (props changed) projects/graid/7/usr.bin/wc/ (props changed) projects/graid/7/usr.bin/whereis/ (props changed) projects/graid/7/usr.bin/whois/ (props changed) projects/graid/7/usr.bin/window/ (props changed) projects/graid/7/usr.bin/xargs/ (props changed) projects/graid/7/usr.bin/ypcat/ (props changed) projects/graid/7/usr.bin/ypmatch/ (props changed) projects/graid/7/usr.bin/ypwhich/ (props changed) projects/graid/7/usr.sbin/ (props changed) projects/graid/7/usr.sbin/Makefile (props changed) projects/graid/7/usr.sbin/acpi/ (props changed) projects/graid/7/usr.sbin/adduser/ (props changed) projects/graid/7/usr.sbin/arp/ (props changed) projects/graid/7/usr.sbin/bluetooth/ (props changed) projects/graid/7/usr.sbin/bluetooth/btpand/ (props changed) projects/graid/7/usr.sbin/bluetooth/hcsecd/ (props changed) projects/graid/7/usr.sbin/bluetooth/hcseriald/ (props changed) projects/graid/7/usr.sbin/bluetooth/rfcomm_pppd/ (props changed) projects/graid/7/usr.sbin/bluetooth/sdpd/ (props changed) projects/graid/7/usr.sbin/boot0cfg/ (props changed) projects/graid/7/usr.sbin/bsnmpd/modules/snmp_hostres/hostres_processor_tbl.c (props changed) projects/graid/7/usr.sbin/bsnmpd/modules/snmp_pf/ (props changed) projects/graid/7/usr.sbin/burncd/ (props changed) projects/graid/7/usr.sbin/cdcontrol/ (props changed) projects/graid/7/usr.sbin/chown/ (props changed) projects/graid/7/usr.sbin/chroot/ (props changed) projects/graid/7/usr.sbin/config/ (props changed) projects/graid/7/usr.sbin/config/SMM.doc/ (props changed) projects/graid/7/usr.sbin/cpucontrol/ (props changed) projects/graid/7/usr.sbin/crashinfo/ (props changed) projects/graid/7/usr.sbin/cron/ (props changed) projects/graid/7/usr.sbin/cron/cron/ (props changed) projects/graid/7/usr.sbin/crunch/ (props changed) projects/graid/7/usr.sbin/cxgbtool/ (props changed) projects/graid/7/usr.sbin/eeprom/ (props changed) projects/graid/7/usr.sbin/extattr/ (props changed) projects/graid/7/usr.sbin/faithd/ (props changed) projects/graid/7/usr.sbin/fdcontrol/ (props changed) projects/graid/7/usr.sbin/fdformat/ (props changed) projects/graid/7/usr.sbin/fdread/ (props changed) projects/graid/7/usr.sbin/fdwrite/ (props changed) projects/graid/7/usr.sbin/fifolog/ (props changed) projects/graid/7/usr.sbin/freebsd-update/ (props changed) projects/graid/7/usr.sbin/fwcontrol/ (props changed) projects/graid/7/usr.sbin/gstat/ (props changed) projects/graid/7/usr.sbin/iostat/ (props changed) projects/graid/7/usr.sbin/jail/ (props changed) projects/graid/7/usr.sbin/jexec/ (props changed) projects/graid/7/usr.sbin/jls/ (props changed) projects/graid/7/usr.sbin/lpr/ (props changed) projects/graid/7/usr.sbin/mailwrapper/ (props changed) projects/graid/7/usr.sbin/makefs/ (props changed) projects/graid/7/usr.sbin/makefs/ffs/ffs_bswap.c (props changed) projects/graid/7/usr.sbin/makefs/ffs/ffs_subr.c (props changed) projects/graid/7/usr.sbin/makefs/ffs/ufs_bswap.h (props changed) projects/graid/7/usr.sbin/makefs/getid.c (props changed) projects/graid/7/usr.sbin/mergemaster/ (props changed) projects/graid/7/usr.sbin/mfiutil/ (props changed) projects/graid/7/usr.sbin/mountd/ (props changed) projects/graid/7/usr.sbin/mptutil/ (props changed) projects/graid/7/usr.sbin/mtree/ (props changed) projects/graid/7/usr.sbin/ndiscvt/ (props changed) projects/graid/7/usr.sbin/ndp/ (props changed) projects/graid/7/usr.sbin/newsyslog/ (props changed) projects/graid/7/usr.sbin/nscd/ (props changed) projects/graid/7/usr.sbin/ntp/ (props changed) projects/graid/7/usr.sbin/pciconf/ (props changed) projects/graid/7/usr.sbin/pkg_install/ (props changed) projects/graid/7/usr.sbin/pmccontrol/ (props changed) projects/graid/7/usr.sbin/pmcstat/ (props changed) projects/graid/7/usr.sbin/portsnap/ (props changed) projects/graid/7/usr.sbin/powerd/ (props changed) projects/graid/7/usr.sbin/ppp/ (props changed) projects/graid/7/usr.sbin/pstat/ (props changed) projects/graid/7/usr.sbin/pw/ (props changed) projects/graid/7/usr.sbin/pwd_mkdb/ (props changed) projects/graid/7/usr.sbin/rpc.lockd/ (props changed) projects/graid/7/usr.sbin/rpc.statd/ (props changed) projects/graid/7/usr.sbin/rpc.yppasswdd/ (props changed) projects/graid/7/usr.sbin/rtadvd/ (props changed) projects/graid/7/usr.sbin/rtsold/ (props changed) projects/graid/7/usr.sbin/sade/ (props changed) projects/graid/7/usr.sbin/service/ (props changed) projects/graid/7/usr.sbin/setfib/ (props changed) projects/graid/7/usr.sbin/sysinstall/ (props changed) projects/graid/7/usr.sbin/syslogd/ (props changed) projects/graid/7/usr.sbin/traceroute/ (props changed) projects/graid/7/usr.sbin/traceroute6/ (props changed) projects/graid/7/usr.sbin/tzsetup/ (props changed) projects/graid/7/usr.sbin/ugidfw/ (props changed) projects/graid/7/usr.sbin/wpa/wpa_supplicant/ (props changed) projects/graid/7/usr.sbin/ypserv/ (props changed) projects/graid/7/usr.sbin/zic/ (props changed) Modified: projects/graid/7/sys/geom/raid/g_raid.c ============================================================================== --- projects/graid/7/sys/geom/raid/g_raid.c Tue Feb 8 19:49:31 2011 (r218451) +++ projects/graid/7/sys/geom/raid/g_raid.c Tue Feb 8 19:51:40 2011 (r218452) @@ -1071,11 +1071,35 @@ void g_raid_subdisk_iostart(struct g_raid_subdisk *sd, struct bio *bp) { struct g_consumer *cp; + struct g_raid_disk *disk; - cp = sd->sd_disk->d_consumer; - bp->bio_from = sd->sd_disk->d_consumer; - bp->bio_to = sd->sd_disk->d_consumer->provider; bp->bio_caller1 = sd; + + /* + * Make sure that the disk is present. Generally it is a task of + * transformation layers to not send requests to absent disks, but + * it is better to be safe and report situation then sorry. + */ + if (sd->sd_disk == NULL) { + G_RAID_LOGREQ(0, bp, "Warning! I/O request to an absent disk!"); +nodisk: + bp->bio_from = NULL; + bp->bio_to = NULL; + bp->bio_error = ENXIO; + g_raid_disk_done(bp); + return; + } + disk = sd->sd_disk; + if (disk->d_state != G_RAID_DISK_S_ACTIVE && + disk->d_state != G_RAID_DISK_S_FAILED) { + G_RAID_LOGREQ(0, bp, "Warning! I/O request to a disk in a " + "wrong state (%s)!", g_raid_disk_state2str(disk->d_state)); + goto nodisk; + } + + cp = disk->d_consumer; + bp->bio_from = cp; + bp->bio_to = cp->provider; cp->index++; if (dumping) { G_RAID_LOGREQ(3, bp, "Sending dumping request."); @@ -1112,8 +1136,10 @@ static void g_raid_disk_done(struct bio *bp) { struct g_raid_softc *sc; + struct g_raid_subdisk *sd; - sc = bp->bio_from->geom->softc; + sd = bp->bio_caller1; + sc = sd->sd_softc; mtx_lock(&sc->sc_queue_mtx); bioq_disksort(&sc->sc_queue, bp); mtx_unlock(&sc->sc_queue_mtx); @@ -1135,12 +1161,14 @@ g_raid_disk_done_request(struct bio *bp) sd = bp->bio_caller1; sc = sd->sd_softc; vol = sd->sd_volume; - bp->bio_from->index--; - disk = bp->bio_from->private; - if (disk == NULL) { - g_topology_lock(); - g_raid_kill_consumer(sc, bp->bio_from); - g_topology_unlock(); + if (bp->bio_from != NULL) { + bp->bio_from->index--; + disk = bp->bio_from->private; + if (disk == NULL) { + g_topology_lock(); + g_raid_kill_consumer(sc, bp->bio_from); + g_topology_unlock(); + } } bp->bio_offset -= sd->sd_offset; @@ -1224,8 +1252,8 @@ process: if (ep != NULL) g_raid_handle_event(sc, ep); if (bp != NULL) { - if (bp->bio_from == NULL || - bp->bio_from->geom != sc->sc_geom) + if (bp->bio_to != NULL && + bp->bio_to->geom == sc->sc_geom) g_raid_start_request(bp); else g_raid_disk_done_request(bp); Modified: projects/graid/7/sys/geom/raid/tr_raid1.c ============================================================================== --- projects/graid/7/sys/geom/raid/tr_raid1.c Tue Feb 8 19:49:31 2011 (r218451) +++ projects/graid/7/sys/geom/raid/tr_raid1.c Tue Feb 8 19:51:40 2011 (r218452) @@ -151,8 +151,7 @@ g_raid_tr_taste_raid1(struct g_raid_tr_o trs = (struct g_raid_tr_raid1_object *)tr; if (tr->tro_volume->v_raid_level != G_RAID_VOLUME_RL_RAID1 || - tr->tro_volume->v_raid_level_qualifier != G_RAID_VOLUME_RLQ_NONE || - tr->tro_volume->v_disks_count != 2) + tr->tro_volume->v_raid_level_qualifier != G_RAID_VOLUME_RLQ_NONE) return (G_RAID_TR_TASTE_FAIL); trs->trso_starting = 1; return (G_RAID_TR_TASTE_SUCCEED); @@ -684,7 +683,8 @@ g_raid_tr_iodone_raid1(struct g_raid_tr_ nsd = trs->trso_failed_sd; if (bp->bio_error != 0 || trs->trso_flags & TR_RAID1_F_ABORT) { - if (bp->bio_error != 0) { + if ((trs->trso_flags & + TR_RAID1_F_ABORT) == 0) { g_raid_fail_disk(sd->sd_softc, nsd, nsd->sd_disk); }