search for: ocfs2_queue_recovery_completion

Displaying 18 results from an estimated 18 matches for "ocfs2_queue_recovery_completion".

2009 Mar 04
2
[PATCH 1/1] Patch to recover orphans in offline slots during recovery and mount
...journal.c index 57d7d25..1bcbf5e 100644 --- a/fs/ocfs2/journal.c +++ b/fs/ocfs2/journal.c @@ -65,6 +65,11 @@ static int ocfs2_trylock_journal(struct ocfs2_super *osb, static int ocfs2_recover_orphans(struct ocfs2_super *osb, int slot); static int ocfs2_commit_thread(void *arg); +static void ocfs2_queue_recovery_completion(struct ocfs2_journal *journal, + int slot_num, + struct ocfs2_dinode *la_dinode, + struct ocfs2_dinode *tl_dinode, + struct ocfs2_quota_recovery *qrec); static inline int ocfs2_wait_on_mount(struct ocfs2_super *osb) { @@ -77,6 +82,62 @@ static inline int ocfs2_wa...
2009 Apr 07
1
Backport to 1.4 of patch that recovers orphans from offline slots
The following patch is a backport of patch that recovers orphans from offline slots. It is being backported from mainline to 1.4 mainline patch: 0001-Patch-to-recover-orphans-in-offline-slots-during-rec.patch Thanks, --Srini
2009 Mar 06
0
[PATCH 1/1] ocfs2: recover orphans in offline slots during recovery and mount
...journal.c index 57d7d25..cb1ec7f 100644 --- a/fs/ocfs2/journal.c +++ b/fs/ocfs2/journal.c @@ -65,6 +65,11 @@ static int ocfs2_trylock_journal(struct ocfs2_super *osb, static int ocfs2_recover_orphans(struct ocfs2_super *osb, int slot); static int ocfs2_commit_thread(void *arg); +static void ocfs2_queue_recovery_completion(struct ocfs2_journal *journal, + int slot_num, + struct ocfs2_dinode *la_dinode, + struct ocfs2_dinode *tl_dinode, + struct ocfs2_quota_recovery *qrec); static inline int ocfs2_wait_on_mount(struct ocfs2_super *osb) { @@ -77,6 +82,96 @@ static inline int ocfs2_wa...
2009 Mar 06
1
[PATCH 1/1] Patch to recover orphans in offline slots during recovery and mount (revised)
...journal.c index 57d7d25..cb1ec7f 100644 --- a/fs/ocfs2/journal.c +++ b/fs/ocfs2/journal.c @@ -65,6 +65,11 @@ static int ocfs2_trylock_journal(struct ocfs2_super *osb, static int ocfs2_recover_orphans(struct ocfs2_super *osb, int slot); static int ocfs2_commit_thread(void *arg); +static void ocfs2_queue_recovery_completion(struct ocfs2_journal *journal, + int slot_num, + struct ocfs2_dinode *la_dinode, + struct ocfs2_dinode *tl_dinode, + struct ocfs2_quota_recovery *qrec); static inline int ocfs2_wait_on_mount(struct ocfs2_super *osb) { @@ -77,6 +82,96 @@ static inline int ocfs2_wa...
2009 Feb 19
2
Patch to recover orphans in offline slots
This patch is against ocfs2-1.4 and also applies to ocfs2-1.2. ocfs2 mainline requires only the first portion of the patch and hence will make a separate patch for that.
2009 Feb 28
1
[PATCH 1/1] Patch to recover orphans in offline slots during recovery.
...ays run recovery on our own orphan dir - the dead - * node(s) may have disallowd a previos inode delete. Re-processing + /* We always run recovery on our own and offline orphan slots - the dead + * node(s) may have disallowed a previous inode delete. Re-processing * is therefore required. */ - ocfs2_queue_recovery_completion(osb->journal, osb->slot_num, NULL, - NULL, NULL); + for (i = 0; i < osb->slot_info->si_num_slots; i++) + if ((!slot_arr[i]) || osb->slot_num == i) + ocfs2_queue_recovery_completion(osb->journal, i, + NULL, NULL, NULL); bail: mutex_lock(&osb->recovery_lo...
2009 Apr 30
1
orphan cleanup
...ad, or a timer. I don't see why a timer doesn't work. When the timer fires, you do this: 1. Take EX on a new orphan_scan lock. 2. check the LVB for the last scan time. If it's less than the scan timeout, reset the timer for (timeout - last scan), drop the EX, and exit. 3. Call ocfs2_queue_recovery_completion() for all slots with NULL, NULL, NULL on the non-orphan-dir arguments. This sets up the orphan recovery. 4. Update the LVB with the current scan time. 5. Drop the EX to an NL. 6. Reset the timer for the scan timeout. Points about this scheme: - Doesn't need a process. - Don't need...
2009 Feb 28
1
[PATCH 1/1] Patch to recover orphans from the slot during mount
...a/fs/ocfs2/journal.c +++ b/fs/ocfs2/journal.c @@ -1181,19 +1181,14 @@ void ocfs2_complete_mount_recovery(struct ocfs2_super *osb) { struct ocfs2_journal *journal = osb->journal; - if (osb->dirty) { - /* No need to queue up our truncate_log as regular - * cleanup will catch that. */ - ocfs2_queue_recovery_completion(journal, - osb->slot_num, - osb->local_alloc_copy, - NULL, - NULL); - ocfs2_schedule_truncate_log_flush(osb, 0); - - osb->local_alloc_copy = NULL; - osb->dirty = 0; - } + /* No need to queue up our truncate_log as regular cleanup will + * catch that. */ + ocfs2_q...
2009 Jun 04
3
Patches that adds delayed orphan scan timer (rev 3)
Resending after implementing review comments.
2009 Jun 04
2
Backport that adds delayed orphan scan timer to 1.4
Next two patches are backport of orphan scan timer patches to ocfs2-1.4
2009 Jun 02
3
Patches that adds delayed orphan scan timer (rev 2)
Resending after implementing review comments.
2009 Jun 02
3
Patches that adds delayed orphan scan timer
Resending after adding another patch to display delayed orphan scan statistics.
2009 Mar 31
0
[PATCH] ocfs2: remove some pointless conditionals before kfree()
...;ip_lock); out: - if (new_emi) - kfree(new_emi); + kfree(new_emi); } static int ocfs2_last_eb_is_empty(struct inode *inode, diff --git a/fs/ocfs2/journal.c b/fs/ocfs2/journal.c index 57d7d25..195af61 100644 --- a/fs/ocfs2/journal.c +++ b/fs/ocfs2/journal.c @@ -1150,11 +1150,9 @@ static void ocfs2_queue_recovery_completion(struct ocfs2_journal *journal, /* Though we wish to avoid it, we are in fact safe in * skipping local alloc cleanup as fsck.ocfs2 is more * than capable of reclaiming unused space. */ - if (la_dinode) - kfree(la_dinode); + kfree(la_dinode); - if (tl_dinode) - kfree(tl_dinode); +...
2009 May 19
2
[PATCH 1/1] OCFS2: timer to queue scan of all orphan slots
...< 0) { + if (status != -EAGAIN) + mlog_errno(status); + goto out; + } + + ocfs2_get_meta_lvb_mtime(&scan_time, &ds->ds_lockres); + if (ds->ds_time.tv_sec != scan_time.tv_sec) { + ds->ds_time = scan_time; + goto unlock; + } + + for (i = 0; i < osb->max_slots; i++) + ocfs2_queue_recovery_completion(osb->journal, i, NULL, NULL, + NULL); + + now = CURRENT_TIME; + ocfs2_stuff_meta_lvb_mtime(&now, &ds->ds_lockres); +unlock: + ocfs2_orphan_scan_unlock(osb, level); +out: + return; +} + +/* Queue timer to recover orphans after ORPHAN_SCAN_SCHEDULE_TIMEOUT */ +void ocfs2_delayed_or...
2009 Apr 17
26
OCFS2 1.4: Patches backported from mainline
Please review the list of patches being applied to the ocfs2 1.4 tree. All patches list the mainline commit hash. Thanks Sunil
2009 Jun 18
8
Patches backported from mainline
All, Please review the patches backported to 1.4 from mainline. Sunil
2009 Mar 17
33
[git patches] Ocfs2 updates for 2.6.30
Hi, The following patches comprise the bulk of Ocfs2 updates for the 2.6.30 merge window. Aside from larger, more involved fixes, we're adding the following features, which I will describe in the order their patches are mailed. Sunil's exported some more state to our debugfs files, and consolidated some other aspects of our debugfs infrastructure. This will further aid us in debugging
2008 Dec 22
56
[git patches] Ocfs2 patches for merge window, batch 2/3
Hi, This is the second batch of Ocfs2 patches intended for the merge window. The 1st batch were sent out previously: http://lkml.org/lkml/2008/12/19/280 The bulk of this set is comprised of Jan Kara's patches to add quota support to Ocfs2. Many of the quota patches are to generic code, which I carried to make merging of the Ocfs2 support easier. All of the non-ocfs2 patches should have