|
|
@d082801
|
5 months |
mc |
hr: refactor manual assembly
|
|
|
@1a28518
|
5 months |
mc |
hr: superblock.c: fix bsize decoding
|
|
|
@7e8c0e7
|
5 months |
mc |
hr: superblock.c: remove UUID generation for each extent
|
|
|
@2e7df2e
|
5 months |
mc |
hr: superblock.c: fix UUID memcpy()
|
|
|
@d946c27
|
5 months |
mc |
hr: initialize and populate in memory metadata
|
|
|
@49de61c
|
5 months |
mc |
hr: util.c: fix hr_register_volume()
|
|
|
@56214383
|
5 months |
mc |
hr: util: hr_util_add_hotspare()
|
|
|
@8a65373
|
5 months |
mc |
hr: move registering out of specific RAIDs
|
|
|
@7a80c63
|
5 months |
mc |
hr: raid{0,1,5}.c: increment open() count
|
|
|
@0437dd5
|
5 months |
mc |
hr: util.c: block_fini() hotspares
|
|
|
@8b51009
|
5 months |
mc |
hr: auto assembly, refactor
Added automatic assembly (with hrctl -A). …
|
|
|
@7bfe468
|
5 months |
mc |
hr: hr.c: hr_client_conn() return ENOENT
|
|
|
@b04f7af
|
5 months |
mc |
hr: hr.c: add headers
|
|
|
@a57dde4
|
5 months |
mc |
hr: use func for DEBUG printing fcn names
|
|
|
@5fe0b9b5
|
5 months |
mc |
hr: var.h: comment cstyle
|
|
|
@2958e70
|
5 months |
mc |
hr: var.h: revert hotspare no. back from invalidations
|
|
|
@de811048
|
5 months |
mc |
hr: style headers
|
|
|
@e3e53cc
|
5 months |
mc |
hr: var.h: remove struct hr_deferred_invalidation
|
|
|
@e494d7b
|
5 months |
mc |
hr: initialize hotspare states to MISSING
|
|
|
@e24c064
|
5 months |
mc |
hr: add NONE state (use INVALID for inconsistent)
|
|
|
@d2da1be
|
5 months |
mc |
hr: rename vol→state_changed → vol→state_dirty
|
|
|
@f1be66bf
|
5 months |
mc |
hr: raid5.c: fast patch to make new asserts pass
|
|
|
@d6fe2a1
|
5 months |
mc |
hr: hr_mark_vol_state_dirty() helper
|
|
|
@10005fd
|
5 months |
mc |
hr: remove vol→halt_please bit and vol→halt_lock
RW locks are not …
|
|
|
@4d42a1b
|
5 months |
mc |
hr: remove deferred invalidations
|
|
|
@6123753
|
5 months |
mc |
hr: raid1.c: print rebuild progress every 5%
|
|
|
@4d30c475
|
5 months |
mc |
hr: raid1.c: fix rebuild
|
|
|
@b15e534
|
5 months |
mc |
hr/fge.c: add some comments
|
|
|
@0fcb011
|
6 months |
mc |
hr: raid0.c: early break if (left == 0)
|
|
|
@d30e067
|
6 months |
mc |
Merge 'upstream/master' into helenraid-para
|
|
|
@4285f384
|
6 months |
jiri |
Allow physically ejecting CD-ROM using vol eject -s
|
|
|
@7debda3
|
7 months |
mc |
hr: fge: make group→wu_cnt an upper bound
|
|
|
@9f15da1
|
7 months |
mc |
hr: fge: fix fibril unsafe assert
|
|
|
@a6fb937
|
7 months |
mc |
hr: RAID0: handle hr_fgroup_create() → ENOMEM
|
|
|
@23df41b
|
7 months |
mc |
hr: move hr_process_deferred_invalidations() to util
|
|
|
@35f2a877
|
7 months |
mc |
hr: raid1.c: move around static functions
|
|
|
@d773bea9
|
7 months |
mc |
hr: RAID1: handle state edge cases in a rebuild
|
|
|
@dec4150
|
7 months |
mc |
hr: RAID1: fix unsafe access in add_hotspare()
|
|
|
@401b9e42
|
7 months |
mc |
hr: state_changed and peding_invalidation atomic flags
These flags …
|
|
|
@e2b417f
|
7 months |
mc |
hr: RAID1: use update_svc_id() wrappers from util
|
|
|
@edc89bd8
|
7 months |
mc |
hr: util: add hr_update_{ext,hotspare}_svc_id()
Provides easy way to …
|
|
|
@36661772
|
7 months |
mc |
hr: util.c: add assertions for locks
|
|
|
@5ee041e
|
7 months |
mc |
hr: RAID1: deferred extent invalidation
|
|
|
@58d82fa
|
7 months |
mc |
hr: parallelize RAID1
changes in main hr_volume_t struct:
- new mutex …
|
|
|
@ee47537
|
7 months |
mc |
hr: RAID0: refactor hr_raid0_update_vol_status()
|
|
|
@4660649
|
7 months |
mc |
hr: RAID0: return ENOMEM on out-of-memory READs
|
|
|
@0d77d30
|
7 months |
mc |
hr: hr_io_worker(): ENOMEM handling for WRITEs
Call state callback on …
|
|
|
@efc6259
|
7 months |
mc |
hr: fge: aggregate ENOMEM final errno
|
|
|
@a5c2960e
|
7 months |
mc |
hr: RAID0: pass actual block address to workers
|
|
|
@bc3d695
|
7 months |
mc |
hr: RAID0 parallelization
|
|
|
@685c0ab
|
8 months |
mc |
hr: superblock.c: style
|
|
|
@7a3529a8
|
8 months |
mc |
hr: util.c: bounds check on state updates
|
|
|
@723f1d9
|
8 months |
mc |
hr: fge: fgroup_create(): assert worker count > 0
|
|
|
@5ee5f67
|
8 months |
mc |
hr: fge: make finished_{okay,failed} not atomic
And test if all …
|
|
|
@083ce33
|
8 months |
mc |
hr: fge: hr_fpool_create(): assert max_wus > 0
|
|
|
@08c98d4c
|
8 months |
mc |
hr: fge: fix deadlock
|
|
|
@5a8f69e7
|
8 months |
mc |
hr: fge: cstyle
|
|
|
@eb31781
|
8 months |
mc |
hr: raid5.c: cstyle
|
|
|
@8137d36
|
8 months |
mc |
hr: fge: style
|
|
|
@37a9c1e
|
8 months |
mc |
hr: hr_volume_t: rename RLQ → layout
|
|
|
@f3b74d1
|
8 months |
mc |
hr: fge: use libc queue <adt/circ_buf.h>
|
|
|
@95158dac
|
8 months |
mc |
hr: fge: can ask for wus that finished with EOK
|
|
|
@57110ac8
|
8 months |
mc |
hr: initialize range lock list and list lock
|
|
|
@83c8bb2
|
8 months |
mc |
hr: hr_volume_t: fix number of hotspares
|
|
|
@38e3c0a7
|
8 months |
mc |
hr: range locks
|
|
|
@f725787
|
8 months |
mc |
hr: fge: fibril group executor
This fibril pool allows execution of …
|
|
|
@37ffa4d
|
8 months |
mc |
hr: modify change state message
|
|
|
@521b387
|
8 months |
mc |
hr: RAID5: fix degraded write
|
|
|
@f312fb9
|
8 months |
mc |
hr: remove RAID4 functions leftovers
|
|
|
@ea0d494
|
8 months |
mc |
hr: don't set RLQ when assembling
|
|
|
@4066371
|
8 months |
mc |
hr: layout info printing
|
|
|
@241c3f6
|
8 months |
mc |
hr: move RAID4 to RAID5
Removes whole raid4.c, as RAID4 is …
|
|
|
@d7768d11
|
8 months |
mc |
hr: add different RAID4,5 layouts
Also prepare the metadata for …
|
|
|
@a0c3080
|
9 months |
mc |
hr: util: hotspare and volume change state functions
|
|
|
@65706f1
|
9 months |
mc |
hr: rename dev_no → extent_no in hr_volume_t
|
|
|
@40bf2c6
|
9 months |
mc |
hr: allow IO requests to be served during rebuild
|
|
|
@8160e4c0
|
9 months |
mc |
hr: RAID 4,5: optimize operations with xorbuf
Read block on first …
|
|
|
@bf0a791
|
9 months |
mc |
hr: cstyle
|
|
|
@aa7864b
|
9 months |
mc |
hr: RAID5: hotspare + rebuild
|
|
|
@a56ac5d1
|
9 months |
mc |
hr: fix RAID 4,5 parity xorring length
|
|
|
@30140c1b
|
9 months |
mc |
hr: RAID4: hotspare + rebuild
|
|
|
@f81960c5
|
9 months |
mc |
hr: RAID1: style
|
|
|
@b8409b9
|
9 months |
mc |
hr: RAID1: fix WRITE to rebuilt extent
When writing to extent that is …
|
|
|
@d0f0744
|
9 months |
mc |
hr: RAID1: break after first successful read
|
|
|
@5b320ac
|
9 months |
mc |
hr: hotspares + RAID1 rebuild
|
|
|
@06f2762
|
9 months |
mc |
hr: add option to write metadata to one extent
|
|
|
@e76e12d8
|
9 months |
mc |
hr: add hr_count_extents(volume, state)
Counts volume extents in some …
|
|
|
@7b359f5
|
9 months |
mc |
hr: status/state event function for each RAID
|
|
|
@d199a6f
|
9 months |
mc |
hr: DPRINTF, ERR_PRINTF → HR_DEBUG, HR_ERROR
Also add HR_WARN for …
|
|
|
@dfa2313
|
9 months |
mc |
hr: rename HR_MAXDEVS → HR_MAX_EXTENTS
|
|
|
@b235c67
|
9 months |
mc |
hr: use shorthand vol for volume
|
|
|
@733564a
|
9 months |
mc |
hr: add all fcn prototypes in raid implementations
Also restructure …
|
|
|
@5d96f427
|
9 months |
mc |
hr: use DPRINTF and ERR_PRINTF macros from util.h
|
|
|
@bd51105
|
9 months |
mc |
hr: util.h: add DPRINTF and ERR_PRINTF macros
These macros forward …
|
|
|
@fde02a6
|
9 months |
mc |
hr: be more careful with assembly from metadata
Rewrite vol→extents …
|
|
|
@da0570a
|
9 months |
mc |
hr: RAID5 states, degraded R/W
|
|
|
@d092d2c
|
9 months |
mc |
hr: RAID{0,4}: cast void * to uint8_t *
|
|
|
@1a60e645
|
9 months |
mc |
hr: propagate ENOMEM in RAID4
|
|
|
@90eec9c0
|
9 months |
mc |
hr: allocate xorbuf with whole request length
As it can be 64K at …
|
|
|
@11111e4
|
9 months |
mc |
hr: add states to RAID4, and degraded R/W
|
|
|