/* Fill in the cluster header */
strncpy(wc->chead->idtag, "LaFSHead", 8);
- if (cnum)
- wc->chead->flags = cpu_to_le32(0);
- else {
- /* checkpoints only happen in cnum==0 */
- if (fs->checkpointing) {
- spin_lock(&fs->lock);
- wc->chead->flags = cpu_to_le32(fs->checkpointing);
- if (fs->checkpointing & CH_CheckpointEnd) {
- fs->checkpointing = 0;
- clear_bit(CheckpointOpen, &fs->fsstate);
- } else if (fs->checkpointing & CH_CheckpointStart) {
- fs->checkpointcluster = head_addr[0];
- fs->checkpointing &= ~CH_CheckpointStart;
- }
- spin_unlock(&fs->lock);
- if (!fs->checkpointing)
- wake_up(&fs->phase_wait);
- } else
- wc->chead->flags = 0;
+ wc->chead->flags = cpu_to_le32(0);
+
+ /* checkpoints only happen in cnum==0 */
+ if (cnum == 0 && fs->checkpointing) {
+ spin_lock(&fs->lock);
+ wc->chead->flags = cpu_to_le32(fs->checkpointing);
+ if (fs->checkpointing & CH_CheckpointEnd) {
+ fs->checkpointing = 0;
+ clear_bit(CheckpointOpen, &fs->fsstate);
+ } else if (fs->checkpointing & CH_CheckpointStart) {
+ fs->checkpointcluster = head_addr[0];
+ fs->checkpointing &= ~CH_CheckpointStart;
+ }
+ spin_unlock(&fs->lock);
+ if (!fs->checkpointing)
+ wake_up(&fs->phase_wait);
}
+
memcpy(wc->chead->uuid, fs->state->uuid, 16);
wc->chead->seq = cpu_to_le64(wc->cluster_seq);
wc->cluster_seq++;
u32 usage_inum;
u16 level;
- u32 rows_per_table, tables_per_seg;
+ u32 rows_per_table, tables_per_seg;
int recent_dev, recent_state;
- int tablesize; /* const */
+ int tablesize; /* in segusage file, not in segments */
struct inode *segsum;
} *devs;