Index of /HDParm

Icon  Name                    Last modified      Size  
[DIR] Parent Directory - [ZIP] 2013-03-21 01:09 151K [TXT] hdparm-9.43jf2.diff 2013-03-21 01:09 27K [ZIP] 2013-03-17 22:19 151K [TXT] hdparm-9.43jf.diff 2013-03-17 22:19 28K [TXT] ReadMe.txt 2013-03-21 01:09 2.0K
HDParm patches for 'controllers'

I have a HighPoint RAID controller (RR644L) which I use on my main 
server. With 'smartctl' you can directly query the underlying devices, 
which allows you to see the SMART logging information of the drives that 
make up the RAID. This is pretty useful.

hdparm lets you read a few parameters and access some other bits of the
drives that you might not otherwise be able to get to. In particular,
'hdparm -i' (and -I) gives you information about the device using its
IDENTIFY command. However, you cannot talk to the underlying devices - 
only to raw logical devices which aren't in a RAID. After reading the
Highpoint Driver source, I decided to add the support for talking to the
underlying devices, in a similar manner to the smartctl command.

So, herein lies the patches for hdparm to add 'controller' support. 
This allows any controller to be queried in 'pass through' mode, where 
'any' controller just means that HighPoint controller right now.
Essentially you can use:

  hdparm --controller hpt,1/2/3 -i /dev/sdn

(where /dev/sdn is any device on the HighPoint controller)
This will query the first controller, second port, third device (ie port 
multiplier device 3 off the 2nd port) using the pass through. I have 
tried to make the impact of the code limited, and to ensure that the
operations performed are not half applied to the device you operated 
on, and half to the device you intended.

It should be reasonably easy to extend this for cciss or other RAID 
controllers, although I have not done that here.

   Diffs against hdparm 9.43 to add controller support.
   Full source archive, with my controller support added.

   Older Diffs against hdparm 9.43 to add controller support. (broken 
   debug code present)
   Older Full source archive, with my controller support added. (broken 
   debug code present)

Justin Fletcher, 21 Mar 2013.