summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
dd0adeb)
ASSERTION(ldata->ld_leh != ((void *)0)) can be triggered in
linkea_links_find() due to earlier mdd_links_read() call
missing to return linkea_init() errors and thus preventing
to detect that ld_leh is not populated.
Plus a few error handling fixes to avoid unnecessary msgs
and also prevent early return.
Signed-off-by: Bruno Faccini <bruno.faccini@intel.com>
Change-Id: I35b1076d8eb036dd600e0fda711417634590b9df
Reviewed-on: http://review.whamcloud.com/6676
Tested-by: Hudson
Reviewed-by: wangdi <di.wang@intel.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Mike Pershin <mike.pershin@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
if (oldpfid != NULL) {
rc = __mdd_links_del(env, mdd_obj, ldata, oldlname, oldpfid);
if (rc) {
if (oldpfid != NULL) {
rc = __mdd_links_del(env, mdd_obj, ldata, oldlname, oldpfid);
if (rc) {
(rc != -ENODATA && rc != -ENOENT))
RETURN(rc);
/* No changes done. */
(rc != -ENODATA && rc != -ENOENT))
RETURN(rc);
/* No changes done. */
* old link */
rc2 = __mdd_links_add(env, mdd_obj, ldata, newlname, newpfid,
first, check);
* old link */
rc2 = __mdd_links_add(env, mdd_obj, ldata, newlname, newpfid,
first, check);
- if (rc2 == -EEXIST)
- rc2 = 0;
}
rc = rc != 0 ? rc : rc2;
}
rc = rc != 0 ? rc : rc2;
rc = rc2;
if (rc) {
int error = 1;
rc = rc2;
if (rc) {
int error = 1;
- if (rc == -EOVERFLOW || rc == -ENOENT || rc == -ENOSPC)
+ if (rc == -EOVERFLOW || rc == -ENOSPC)
error = 0;
if (oldpfid == NULL)
CDEBUG(error ? D_ERROR : D_OTHER,
error = 0;
if (oldpfid == NULL)
CDEBUG(error ? D_ERROR : D_OTHER,
- linkea_init(ldata);
- return 0;
+ return linkea_init(ldata);
}
/** Read the link EA into a temp buffer.
}
/** Read the link EA into a temp buffer.