freebsd-dev/sbin
Kenneth D. Merry 7027b9cda4 Change 'camcontrol defects' to first probe a drive to find out how much
defect information it has before grabbing the full defect list.

This works around a bug with some Hitachi drives that generate data overrun
errors when they are asked for more defect data than they have.

The change is done in a spec-compliant way, so it should have no negative
impact on drives that don't have this issue.

This is based on work originally done at Sandvine.

scsi_da.h:	Add a define for the maximum amount of data that can be
		contained in a defect list.

camcontrol.c:	Update the readdefects() function to issue an initial
		command to determine the length of the defect list, and
		then use that length in the request for the full defect
		list.

camcontrol.8:	Add a note that some drives will report 0 defects available
		if you don't request either the PLIST or GLIST.

Submitted by:	Mark Johnston <markjdb@gmail.com> (original version)
MFC after:	3 days
2012-06-22 18:57:06 +00:00
..
adjkerntz Fix a variety of grammar and style nits 2012-03-09 01:32:05 +00:00
atacontrol Fixes to man8 groff mandoc style, usage mistakes, or typos. 2012-05-24 02:24:03 +00:00
atm In sbin/atm/atmconfig/diag.c, fix a few warnings about format strings 2011-12-17 00:26:45 +00:00
badsect Add missing static keywords for global variables to tools in sbin/. 2011-11-04 13:36:02 +00:00
bsdlabel It seems that libdisk(3) incorrectly sets d_secperunit value. 2012-04-11 06:35:13 +00:00
camcontrol Change 'camcontrol defects' to first probe a drive to find out how much 2012-06-22 18:57:06 +00:00
ccdconfig Add missing static keywords for global variables to tools in sbin/. 2011-11-04 13:36:02 +00:00
clri Switch the default WARNS level for sbin/ to 6. 2009-10-19 16:00:24 +00:00
comcontrol ANSIfy almost all applications that use WARNS=6. 2009-12-29 22:53:27 +00:00
conscontrol Changed "conscontrol unset" to accept an existing virtual 2011-04-18 20:28:07 +00:00
ddb Correct subcommand name 'unset' -> 'unscript'. 2011-06-18 22:32:55 +00:00
devd Make devd build with libc++. 2012-06-01 06:56:35 +00:00
devfs mdoc: minor improvements to a few lists with tags. 2012-06-09 07:18:53 +00:00
dhclient Spelling fixes for sbin/ 2012-01-07 16:09:33 +00:00
dmesg Add missing static keywords for global variables to tools in sbin/. 2011-11-04 13:36:02 +00:00
dump mdoc: move two sentences from synopsis to description (where they really 2012-05-23 15:06:13 +00:00
dumpfs Add missing -l flag to usage(). 2011-12-26 16:47:45 +00:00
dumpon Switch the default WARNS level for sbin/ to 6. 2009-10-19 16:00:24 +00:00
etherswitchcfg Fixes to man8 groff mandoc style, usage mistakes, or typos. 2012-05-24 02:24:03 +00:00
fdisk VMware environment is frequent nowadays. Add VMFS id. 2012-04-16 17:30:19 +00:00
fdisk_pc98 Add reference to gpart(8). 2011-11-06 20:39:35 +00:00
ffsinfo Remove trailing whitespace. 2011-11-09 21:01:50 +00:00
fsck Add missing static keywords for global variables to tools in sbin/. 2011-11-04 13:36:02 +00:00
fsck_ffs For incompleted block allocations or frees, the inode block count usage 2012-06-12 21:37:27 +00:00
fsck_msdosfs Make sure that each va_start has one and only one matching va_end, 2012-05-29 01:48:06 +00:00
fsdb Partially undo r228693, by removing NO_WFORMAT.clang in fsdb's Makefile, 2012-03-09 21:02:39 +00:00
fsirand Fix warning when compiling with gcc46: 2012-01-10 02:59:43 +00:00
gbde Use NO_WCAST_ALIGN for sbin/gbde, this is more appropriate to fix the 2011-12-17 00:14:40 +00:00
geom Fixes to man8 groff mandoc style, usage mistakes, or typos. 2012-05-24 02:24:03 +00:00
ggate Because ggatel(8) operates on local GEOM providers, use unlimited queue size in 2011-04-02 06:59:05 +00:00
growfs mdoc: remove redundant paragraph macro. 2012-05-12 14:46:49 +00:00
gvinum Fixes to man8 groff mandoc style, usage mistakes, or typos. 2012-05-24 02:24:03 +00:00
hastctl Fixes to man8 groff mandoc style, usage mistakes, or typos. 2012-05-24 02:24:03 +00:00
hastd Revert: r236909 2012-06-11 20:27:52 +00:00
ifconfig - Updated TOE support in the kernel. 2012-06-19 07:34:13 +00:00
init init: Remove unnecessary 2-second delay before calling reboot(2). 2012-05-25 19:45:01 +00:00
ipf Use both NO_WFORMAT and NO_WARRAY_BOUNDS for sbin/ipf, it would be too 2011-12-17 00:54:09 +00:00
ipfw Update maximum number of tables available in ipfw to reflect 2012-06-09 20:47:58 +00:00
iscontrol General mdoc(7) and typo fixes. 2012-05-12 15:08:22 +00:00
kldconfig Raise WARNS for various tools where possible. 2010-01-17 21:56:27 +00:00
kldload Remove superfluous paragraph macro. 2012-03-25 09:21:09 +00:00
kldstat In printfile(), exit the process instead of only printing the warning. 2010-11-13 16:49:07 +00:00
kldunload Switch the default WARNS level for sbin/ to 6. 2009-10-19 16:00:24 +00:00
ldconfig ANSIfy ldconfig and the aout bits it still uses from rtld-aout. 2009-12-29 21:07:17 +00:00
mca Fix a variety of compile errors with gcc48 and clang 2012-05-31 08:22:02 +00:00
md5 General mdoc(7) and typo fixes. 2012-05-10 02:07:00 +00:00
mdconfig Remove end of line whitespace. 2012-05-12 19:59:37 +00:00
mdmfs Remove trailing whitespace per mdoc lint warning 2012-03-29 05:02:12 +00:00
mknod Fix some more warnings found by clang. 2010-11-22 20:10:48 +00:00
mksnap_ffs Note that a UFS filesystem can have up to 20 active snapshots. 2011-02-15 07:25:54 +00:00
mount Fixes to man8 groff mandoc style, usage mistakes, or typos. 2012-05-24 02:24:03 +00:00
mount_cd9660 Change checkpath() to not exit on error. This is a prerequisite for 2012-01-16 19:34:21 +00:00
mount_ext2fs Change checkpath() to not exit on error. This is a prerequisite for 2012-01-16 19:34:21 +00:00
mount_hpfs mdoc: consistently spell our email addresses <foo@FreeBSD.org> 2010-05-19 08:57:53 +00:00
mount_msdosfs Change checkpath() to not exit on error. This is a prerequisite for 2012-01-16 19:34:21 +00:00
mount_nfs Add a timeout on positive name cache entries in the NFS client. That is, 2012-01-25 20:05:58 +00:00
mount_ntfs Remove trailing whitespace. 2012-01-28 13:41:34 +00:00
mount_nullfs Change checkpath() to not exit on error. This is a prerequisite for 2012-01-16 19:34:21 +00:00
mount_reiserfs Change checkpath() to not exit on error. This is a prerequisite for 2012-01-16 19:34:21 +00:00
mount_std Change checkpath() to not exit on error. This is a prerequisite for 2012-01-16 19:34:21 +00:00
mount_udf Change checkpath() to not exit on error. This is a prerequisite for 2012-01-16 19:34:21 +00:00
mount_unionfs Remove trailing whitespace per mdoc lint warning 2012-03-29 05:02:12 +00:00
nandfs mdoc: remove superfluous paragraph macro. 2012-05-17 11:29:22 +00:00
natd mdoc: fix a few badly nested blocks. 2012-06-09 10:43:33 +00:00
newfs Fix warning when compiling with gcc46: 2012-01-10 02:59:09 +00:00
newfs_msdos Globally replace u_int*_t from (non-contributed) man pages. 2012-02-12 18:29:56 +00:00
newfs_nandfs mdoc: remove whitespace. 2012-05-17 11:50:12 +00:00
nfsiod - Display current settings when run without options. 2009-12-26 08:36:02 +00:00
nos-tun nos-tun(8): make WARNS=3 clean 2010-03-10 18:51:13 +00:00
pfctl Switch the default WARNS level for sbin/ to 6. 2009-10-19 16:00:24 +00:00
pflogd Update packet filter (pf) code to OpenBSD 4.5. 2011-06-28 11:57:25 +00:00
ping Small style fixes: 2010-06-20 12:52:33 +00:00
ping6 Remove trailing whitespace per mdoc lint warning 2012-03-29 05:02:12 +00:00
quotacheck Remove trailing whitespace per mdoc lint warning 2012-03-29 05:02:12 +00:00
rcorder Remove trailing whitespace per mdoc lint warning 2012-03-29 05:02:12 +00:00
reboot Add BSD copyright notice. 2012-02-07 14:06:30 +00:00
recoverdisk Fix mdoc date from previous commit. 2012-01-06 11:42:03 +00:00
resolvconf Add resolvconf(8) which manages resolv.conf. 2011-03-18 12:18:52 +00:00
restore Make sure that each va_start has one and only one matching va_end, 2012-05-29 01:48:06 +00:00
route Remove superfluous paragraph macro. 2012-03-25 09:21:09 +00:00
routed Fix a style bug 2012-01-13 06:56:59 +00:00
rtsol Add dump.c to the rtsol build. It is needed now that sec2str is non-static 2011-06-08 21:59:07 +00:00
savecore Include <signal.h> (for SIGINFO). 2012-04-09 20:55:23 +00:00
sconfig Switch the default WARNS level for sbin/ to 6. 2009-10-19 16:00:24 +00:00
setkey Minor mdoc improvements. 2012-06-03 07:45:42 +00:00
shutdown shutdown: Remove unnecessary 2-second delay. 2012-05-23 19:25:46 +00:00
spppcontrol mdoc: order prologue macros consistently by Dd/Dt/Os 2010-04-14 19:08:06 +00:00
sunlabel mdoc: fix column names, indentation, column separation within each row, and 2012-04-07 09:05:30 +00:00
swapon Add missing static keywords for global variables to tools in sbin/. 2011-11-04 13:36:02 +00:00
sysctl s/Free Memory Pages/Free Memory/ to avoid confusion, since we're 2012-04-11 14:18:18 +00:00
tunefs Fix warning when compiling with gcc46: 2012-01-10 02:58:52 +00:00
umount Add missing static keywords for global variables to tools in sbin/. 2011-11-04 13:36:02 +00:00
Makefile Import work done under project/nand (@235533) into head. 2012-05-17 10:11:18 +00:00
Makefile.amd64 MF tbemd: Move to using Makefile.arch to select what to build. 2010-09-13 02:25:21 +00:00
Makefile.arm MF tbemd: Move to using Makefile.arch to select what to build. 2010-09-13 02:25:21 +00:00
Makefile.i386 MF tbemd: Move to using Makefile.arch to select what to build. 2010-09-13 02:25:21 +00:00
Makefile.ia64 MF tbemd: Move to using Makefile.arch to select what to build. 2010-09-13 02:25:21 +00:00
Makefile.inc Switch the default WARNS level for sbin/ to 6. 2009-10-19 16:00:24 +00:00
Makefile.mips MF tbemd: Move to using Makefile.arch to select what to build. 2010-09-13 02:25:21 +00:00
Makefile.pc98 MF tbemd: Move to using Makefile.arch to select what to build. 2010-09-13 02:25:21 +00:00
Makefile.sparc64 MF tbemd: Move to using Makefile.arch to select what to build. 2010-09-13 02:25:21 +00:00