On Wed, 11 Jul 2007 18:44:21 EDT, Ric Wheeler said:Valdis.Kletnieks@xxxxxx wrote:On Tue, 10 Jul 2007 14:39:41 EDT, Ric Wheeler said:There are ways to query devices (think of hdparm -I in S-ATA/P-ATA drives, SCSI has similar queries) to see what kind of device you are talking to. I am not
All of the high end arrays have non-volatile cache (read, on power loss, it is a promise that it will get all of your data out to permanent storage). You don't need to ask this kind of array to drain the cache. In fact, it might just ignore you if you send it that kind of request ;-)OK, I'll bite - how does the kernel know whether the other end of that
fiberchannel cable is attached to a DMX-3 or to some no-name product that
may not have the same assurances? Is there a "I'm a high-end array" bit
in the sense data that I'm unaware of?
sure it is worth the trouble to do any automatic detection/handling of this.
In this specific case, it is more a case of when you attach a high end (or mid-tier) device to a server, you should configure it without barriers for its
exported LUNs.
I don't have a problem with the sysadmin *telling* the system "the other end of
that fiber cable has characteristics X, Y and Z". What worried me was that it
looked like conflating "device reported writeback cache" with "device actually
has enough battery/hamster/whatever backup to flush everything on a power loss".
(My back-of-envelope calculation shows for a worst-case of needing a 1ms seek
for each 4K block, a 1G cache can take up to 4 1/2 minutes to sync. That's
a lot of battery..)