aboutsummaryrefslogtreecommitdiff
path: root/drivers/rtc/rtc-at91rm9200.c
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2013-06-11 14:57:09 +1000
committerNeilBrown <neilb@suse.de>2013-06-14 08:10:27 +1000
commit635f6416a2e983adac8ccf90bffbeed0c1a76454 (patch)
tree36389c7bd9b6dd43ec6055354e9e718d2147240d /drivers/rtc/rtc-at91rm9200.c
parentb29bebd66dbd492105668ec3515a5ffb0b25e4c1 (diff)
md/raid10: locking changes for 'enough()'.
As 'enough' accesses conf->prev and conf->geo, which can change spontanously, it should guard against changes. This can be done with device_lock as start_reshape holds device_lock while updating 'geo' and end_reshape holds it while updating 'prev'. So 'error' needs to hold 'device_lock'. On the other hand, raid10_end_read_request knows which of the two it really wants to access, and as it is an active request on that one, the value cannot change underneath it. So change _enough to take flag rather than a pointer, pass the appropriate flag from raid10_end_read_request(), and remove the locking. All other calls to 'enough' are made with reconfig_mutex held, so neither 'prev' nor 'geo' can change. Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'drivers/rtc/rtc-at91rm9200.c')
0 files changed, 0 insertions, 0 deletions