History log of /freebsd-10.0-release/usr.sbin/diskinfo/diskinfo.c
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 259065 07-Dec-2013 gjb

- Copy stable/10 (r259064) to releng/10.0 as part of the
10.0-RELEASE cycle.
- Update __FreeBSD_version [1]
- Set branch name to -RC1

[1] 10.0-CURRENT __FreeBSD_version value ended at '55', so
start releng/10.0 at '100' so the branch is started with
a value ending in zero.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation

# 256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


# 241844 22-Oct-2012 eadler

remove duplicate semicolons where possible.

Approved by: cperciva
MFC after: 1 week


# 232738 09-Mar-2012 trasz

Improve error reporting in diskinfo(8) by not displaying errno when
it doesn't make sense.


# 224250 21-Jul-2011 mav

Fix `diskinfo -t` operation for disks smaller then 8GB or bigger then 2TB.
Tested to work with 1.44MB floppy, 4GB USB stick and 4TB disk array.

Approved by: re (kib)


# 223089 14-Jun-2011 gibbs

Plumb device physical path reporting from CAM devices, through GEOM and
DEVFS, and make it accessible via the diskinfo utility.

Extend GEOM's generic attribute query mechanism into generic disk consumers.
sys/geom/geom_disk.c:
sys/geom/geom_disk.h:
sys/cam/scsi/scsi_da.c:
sys/cam/ata/ata_da.c:
- Allow disk providers to implement a new method which can override
the default BIO_GETATTR response, d_getattr(struct bio *). This
function returns -1 if not handled, otherwise it returns 0 or an
errno to be passed to g_io_deliver().

sys/cam/scsi/scsi_da.c:
sys/cam/ata/ata_da.c:
- Don't copy the serial number to dp->d_ident anymore, as the CAM XPT
is now responsible for returning this information via
d_getattr()->(a)dagetattr()->xpt_getatr().

sys/geom/geom_dev.c:
- Implement a new ioctl, DIOCGPHYSPATH, which returns the GEOM
attribute "GEOM::physpath", if possible. If the attribute request
returns a zero-length string, ENOENT is returned.

usr.sbin/diskinfo/diskinfo.c:
- If the DIOCGPHYSPATH ioctl is successful, report physical path
data when diskinfo is executed with the '-v' option.

Submitted by: will
Reviewed by: gibbs
Sponsored by: Spectra Logic Corporation

Add generic attribute change notification support to GEOM.

sys/sys/geom/geom.h:
Add a new attrchanged method field to both g_class
and g_geom.

sys/sys/geom/geom.h:
sys/geom/geom_event.c:
- Provide the g_attr_changed() function that providers
can use to advertise attribute changes.
- Perform delivery of attribute change notifications
from a thread context via the standard GEOM event
mechanism.

sys/geom/geom_subr.c:
Inherit the attrchanged method from class to geom (class instance).

sys/geom/geom_disk.c:
Provide disk_attr_changed() to provide g_attr_changed() access
to consumers of the disk API.

sys/cam/scsi/scsi_pass.c:
sys/cam/scsi/scsi_da.c:
sys/geom/geom_dev.c:
sys/geom/geom_disk.c:
Use attribute changed events to track updates to physical path
information.

sys/cam/scsi/scsi_da.c:
Add AC_ADVINFO_CHANGED to the registered asynchronous CAM
events for this driver. When this event occurs, and
the updated buffer type references our physical path
attribute, emit a GEOM attribute changed event via the
disk_attr_changed() API.

sys/cam/scsi/scsi_pass.c:
Add AC_ADVINFO_CHANGED to the registered asynchronous CAM
events for this driver. When this event occurs, update
the physical patch devfs alias for this pass instance.

Submitted by: gibbs
Sponsored by: Spectra Logic Corporation


# 218432 08-Feb-2011 delphij

Don't consider ioctl returning error as a fatal error and move on to next
disk. When multiple devices are specified, a non-supporting ioctl will
cause diskinfo(8) to stop at the point which does not seem to be necessary.

Ok'ed by: phk
MFC after: 1 month


# 200968 24-Dec-2009 mav

Make diskinfo report disk stripe size and offset. It should help users to
make file systems optimally aligned and tuned for better performance.


# 196799 03-Sep-2009 pjd

Don't bother obtaining the ident if we are not going to print it.


# 169296 05-May-2007 pjd

Print provider's ident when in verbose mode.


# 140058 11-Jan-2005 ru

Add -c to SYNOPSIS and usage().


# 137456 09-Nov-2004 sos

Add -c option that calculates the overhead of read I/O ops.


# 129712 25-May-2004 pjd

Actually negative size is possible for file system, but not for disk.


# 129679 24-May-2004 pjd

In verbose mode print disk sizes in human readable form as well.

OK'ed by: phk


# 127884 05-Apr-2004 phk

Make WARNS=5 clean.

Prodded by: Stefan Farfeleder <stefan@fafoe.narf.at>


# 127610 30-Mar-2004 ru

Sync manpage's synopsis with usage().


# 113295 09-Apr-2003 phk

I forgot a rather crucial cast when I made this sectorsize agnostic.

Tune iteration counts a bit.


# 113287 09-Apr-2003 phk

Diskinfo is a small program to access the basic properties of a disk device:
sectorsize, mediasize etc.

It also contains a small and naïve benchmark which reports on seek
and transfer performance.