Changeset 58d82fa in mainline for uspace/srv/bd/hr/hr.c
- Timestamp:
- 2025-01-12T16:53:10Z (9 months ago)
- Children:
- 5ee041e
- Parents:
- ee47537
- git-author:
- Miroslav Cimerman <mc@…> (2025-01-12 16:49:51)
- git-committer:
- Miroslav Cimerman <mc@…> (2025-01-12 16:53:10)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/bd/hr/hr.c
ree47537 r58d82fa 44 44 #include <loc.h> 45 45 #include <task.h> 46 #include <stdatomic.h> 46 47 #include <stdio.h> 47 48 #include <stdlib.h> … … 254 255 fibril_rwlock_initialize(&new_volume->states_lock); 255 256 257 fibril_mutex_initialize(&new_volume->hotspare_lock); 258 256 259 list_initialize(&new_volume->range_lock_list); 257 260 fibril_mutex_initialize(&new_volume->range_lock_list_lock); 261 262 atomic_init(&new_volume->rebuild_blk, 0); 258 263 259 264 rc = new_volume->hr_ops.create(new_volume); … … 310 315 rc = loc_service_unregister(hr_srv, svc_id); 311 316 } else { 312 /* fibril safe for now */313 fibril_ mutex_lock(&vol->lock);317 fibril_rwlock_write_lock(&vol->states_lock); 318 fibril_rwlock_read_lock(&vol->extents_lock); 314 319 hr_update_ext_status(vol, fail_extent, HR_EXT_FAILED); 315 fibril_mutex_unlock(&vol->lock); 320 fibril_rwlock_read_unlock(&vol->extents_lock); 321 fibril_rwlock_write_unlock(&vol->states_lock); 316 322 317 323 vol->hr_ops.status_event(vol);
Note:
See TracChangeset
for help on using the changeset viewer.