backref.c (538f72cdf03cad1c21c551ea542c8ce7d9fa2d81) | backref.c (95def2ede1a9dd12b164932eaf5fefb67aefc41c) |
---|---|
1/* 2 * Copyright (C) 2011 STRATO. All rights reserved. 3 * 4 * This program is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU General Public 6 * License v2 as published by the Free Software Foundation. 7 * 8 * This program is distributed in the hope that it will be useful, --- 374 unchanged lines hidden (view full) --- 383 */ 384 list_for_each_entry_safe(ref, ref_safe, head, list) { 385 if (ref->parent) /* already direct */ 386 continue; 387 if (ref->count == 0) 388 continue; 389 err = __resolve_indirect_ref(fs_info, path, time_seq, ref, 390 parents, extent_item_pos); | 1/* 2 * Copyright (C) 2011 STRATO. All rights reserved. 3 * 4 * This program is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU General Public 6 * License v2 as published by the Free Software Foundation. 7 * 8 * This program is distributed in the hope that it will be useful, --- 374 unchanged lines hidden (view full) --- 383 */ 384 list_for_each_entry_safe(ref, ref_safe, head, list) { 385 if (ref->parent) /* already direct */ 386 continue; 387 if (ref->count == 0) 388 continue; 389 err = __resolve_indirect_ref(fs_info, path, time_seq, ref, 390 parents, extent_item_pos); |
391 if (err == -ENOMEM) 392 goto out; 393 if (err) | 391 /* 392 * we can only tolerate ENOENT,otherwise,we should catch error 393 * and return directly. 394 */ 395 if (err == -ENOENT) { |
394 continue; | 396 continue; |
397 } else if (err) { 398 ret = err; 399 goto out; 400 } |
|
395 396 /* we put the first parent into the ref at hand */ 397 ULIST_ITER_INIT(&uiter); 398 node = ulist_next(parents, &uiter); 399 ref->parent = node ? node->val : 0; 400 ref->inode_list = node ? 401 (struct extent_inode_elem *)(uintptr_t)node->aux : NULL; 402 --- 1453 unchanged lines hidden --- | 401 402 /* we put the first parent into the ref at hand */ 403 ULIST_ITER_INIT(&uiter); 404 node = ulist_next(parents, &uiter); 405 ref->parent = node ? node->val : 0; 406 ref->inode_list = node ? 407 (struct extent_inode_elem *)(uintptr_t)node->aux : NULL; 408 --- 1453 unchanged lines hidden --- |