diff options
author | Milan Broz <mbroz@redhat.com> | 2012-09-26 23:45:43 +0100 |
---|---|---|
committer | Ben Hutchings <ben@decadent.org.uk> | 2012-10-10 03:31:06 +0100 |
commit | e3dd7a09f14902688ae99eb8f3a49e3651147283 (patch) | |
tree | 0a6c787ed39c487afbeb7321cfe3a19d8e4deb68 /usr | |
parent | 1bd6669684e5b889713164a76d42250afefdd1aa (diff) |
dm table: clear add_random unless all devices have it set
commit c3c4555edd10dbc0b388a0125b9c50de5e79af05 upstream.
Always clear QUEUE_FLAG_ADD_RANDOM if any underlying device does not
have it set. Otherwise devices with predictable characteristics may
contribute entropy.
QUEUE_FLAG_ADD_RANDOM specifies whether or not queue IO timings
contribute to the random pool.
For bio-based targets this flag is always 0 because such devices have no
real queue.
For request-based devices this flag was always set to 1 by default.
Now set it according to the flags on underlying devices. If there is at
least one device which should not contribute, set the flag to zero: If a
device, such as fast SSD storage, is not suitable for supplying entropy,
a request-based queue stacked over it will not be either.
Because the checking logic is exactly same as for the rotational flag,
share the iteration function with device_is_nonrot().
Signed-off-by: Milan Broz <mbroz@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Diffstat (limited to 'usr')
0 files changed, 0 insertions, 0 deletions