The reason was just least line of resistance. The code doesn't use the block
descriptors, so there's no need to ask for them. The code is written to skip
over the block descriptors, just in case the device returns them, so setting
DBD to zero should have no practical effect.
Andries.Brouwer@cwi.nl said:
> And the reason I ask is that we already have sd_do_mode_sense6(), so
> part of sd_read_cache_type() can be simply replaced by a call of
> sd_do_mode_sense6(), but the latter needs an extra parameter if DBD is
> really needed.
I agree with replacing the functionality with this call. On general
principle, the DBD bit (and any other missing pieces) should be added to
mode_sense6 just to make it as useful as possible (and, I suppose, the call
should be moved into scsi_lib since more than just sd could make use of it).
> And a second question: sd_read_cache_type() is called also when no
> medium is present. Objections against only calling when media are
> present?
Well, the cache is pretty often part of the permanent assembly, not part of
the removable medium, so I think it should still be called for removable
media. That begs the question, of course, what should the cache type be---it
strikes me as rather unsafe to have a removable RW medium with a write back
cache? I suppose at the very least we should to a SYNCHRONIZE on ejection if
it's write back?
James
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/