Commit f7ec1497 authored by Dave Kleikamp's avatar Dave Kleikamp

JFS: Make error return codes negative

JFS was often returning positive error return codes.  This was confusing and
awkward.  Patch originally submitted by Thomas Cort.
parent c087dbee
......@@ -259,7 +259,7 @@ jfs_get_blocks(struct inode *ip, sector_t lblock, unsigned long max_blocks,
else
IREAD_UNLOCK(ip);
}
return -rc;
return rc;
}
static int jfs_get_block(struct inode *ip, sector_t lblock,
......
......@@ -81,7 +81,7 @@ struct btpage {
} else {\
P = NULL;\
jfs_err("bread failed!");\
RC = EIO;\
RC = -EIO;\
}\
}\
}
......
This diff is collapsed.
......@@ -134,7 +134,7 @@ struct dtsplit {
BT_PUTPAGE(MP);\
updateSuper((IP)->i_sb, FM_DIRTY);\
MP = NULL;\
RC = EIO;\
RC = -EIO;\
}\
}\
}
......@@ -404,7 +404,7 @@ static u32 add_index(tid_t tid, struct inode *ip, s64 bn, int slot)
xtInsert(tid, ip, 0, 0, sbi->nbperpage,
&xaddr, 0))) {
jfs_warn("add_index: xtInsert failed!");
return -1;
return -EPERM;
}
ip->i_size = PSIZE;
ip->i_blocks += LBLK2PBLK(sb, sbi->nbperpage);
......@@ -412,7 +412,7 @@ static u32 add_index(tid_t tid, struct inode *ip, s64 bn, int slot)
if ((mp = get_index_page(ip, 0)) == 0) {
jfs_err("add_index: get_metapage failed!");
xtTruncate(tid, ip, 0, COMMIT_PWMAP);
return -1;
return -EPERM;
}
tlck = txLock(tid, ip, mp, tlckDATA);
llck = (struct linelock *) & tlck->lock;
......@@ -447,7 +447,7 @@ static u32 add_index(tid_t tid, struct inode *ip, s64 bn, int slot)
&xaddr, 0))) {
jfs_warn("add_index: xtInsert failed!");
jfs_ip->next_index--;
return -1;
return -EPERM;
}
ip->i_size += PSIZE;
ip->i_blocks += LBLK2PBLK(sb, sbi->nbperpage);
......@@ -461,7 +461,7 @@ static u32 add_index(tid_t tid, struct inode *ip, s64 bn, int slot)
if (mp == 0) {
jfs_err("add_index: get/read_metapage failed!");
return -1;
return -EPERM;
}
lock_index(tid, ip, mp, index);
......@@ -588,7 +588,7 @@ int dtSearch(struct inode *ip, struct component_name * key, ino_t * data,
(wchar_t *) kmalloc((JFS_NAME_MAX + 1) * sizeof(wchar_t),
GFP_NOFS);
if (ciKey.name == 0) {
rc = ENOMEM;
rc = -ENOMEM;
goto dtSearch_Exit2;
}
......@@ -674,7 +674,7 @@ int dtSearch(struct inode *ip, struct component_name * key, ino_t * data,
*/
if (flag == JFS_CREATE) {
*data = inumber;
rc = EEXIST;
rc = -EEXIST;
goto out;
}
......@@ -684,7 +684,7 @@ int dtSearch(struct inode *ip, struct component_name * key, ino_t * data,
if ((flag == JFS_REMOVE ||
flag == JFS_RENAME) &&
*data != inumber) {
rc = ESTALE;
rc = -ESTALE;
goto out;
}
......@@ -732,7 +732,7 @@ int dtSearch(struct inode *ip, struct component_name * key, ino_t * data,
*/
if (flag == JFS_LOOKUP || flag == JFS_REMOVE ||
flag == JFS_RENAME) {
rc = ENOENT;
rc = -ENOENT;
goto out;
}
......@@ -770,7 +770,7 @@ int dtSearch(struct inode *ip, struct component_name * key, ino_t * data,
*/
jfs_err("stack overrun in dtSearch!");
updateSuper(sb, FM_DIRTY);
rc = EIO;
rc = -EIO;
goto out;
}
btstack->nsplit++;
......@@ -840,7 +840,7 @@ int dtInsert(tid_t tid, struct inode *ip,
if (DO_INDEX(ip)) {
if (JFS_IP(ip)->next_index == DIREND) {
DT_PUTPAGE(mp);
return EMLINK;
return -EMLINK;
}
n = NDTLEAF(name->namlen);
data.leaf.tid = tid;
......@@ -953,7 +953,7 @@ static int dtSplitUp(tid_t tid,
GFP_NOFS);
if (key.name == 0) {
DT_PUTPAGE(smp);
rc = ENOMEM;
rc = -ENOMEM;
goto dtSplitUp_Exit;
}
......@@ -1579,7 +1579,7 @@ static int dtSplitPage(tid_t tid, struct inode *ip, struct dtsplit * split,
ip->i_blocks += LBLK2PBLK(sb, lengthPXD(pxd));
return 0;
return rc;
}
......@@ -2628,7 +2628,7 @@ static int dtSearchNode(struct inode *ip, s64 lmxaddr, pxd_t * kpxd,
* descend down to leftmost child page
*/
if (p->header.flag & BT_LEAF)
return ESTALE;
return -ESTALE;
/* get the leftmost entry */
stbl = DT_GETSTBL(p);
......@@ -2666,7 +2666,7 @@ static int dtSearchNode(struct inode *ip, s64 lmxaddr, pxd_t * kpxd,
bn = le64_to_cpu(p->header.next);
else {
DT_PUTPAGE(mp);
return ESTALE;
return -ESTALE;
}
/* unpin current page */
......@@ -3068,7 +3068,7 @@ int jfs_readdir(struct file *filp, void *dirent, filldir_t filldir)
}
if ((rc = dtReadFirst(ip, &btstack)))
return -rc;
return rc;
DT_GETSEARCH(ip, btstack.top, bn, mp, p, index);
}
......@@ -3268,7 +3268,7 @@ int jfs_readdir(struct file *filp, void *dirent, filldir_t filldir)
DT_GETPAGE(ip, bn, mp, PSIZE, p, rc);
if (rc) {
free_page(dirent_buf);
return -rc;
return rc;
}
}
......@@ -4434,8 +4434,8 @@ static void dtLinelockFreelist(dtpage_t * p, /* directory page */
* flag - JFS_RENAME
*
* RETURNS:
* ESTALE - If entry found does not match orig_ino passed in
* ENOENT - If no entry can be found to match key
* -ESTALE - If entry found does not match orig_ino passed in
* -ENOENT - If no entry can be found to match key
* 0 - If successfully modified entry
*/
int dtModify(tid_t tid, struct inode *ip,
......
......@@ -83,8 +83,8 @@ extern int jfs_commit_inode(struct inode *, int);
*
* RETURN VALUES:
* 0 - success
* EIO - i/o error.
* ENOSPC - insufficient disk resources.
* -EIO - i/o error.
* -ENOSPC - insufficient disk resources.
*/
int
extAlloc(struct inode *ip, s64 xlen, s64 pno, xad_t * xp, boolean_t abnr)
......@@ -207,8 +207,8 @@ extAlloc(struct inode *ip, s64 xlen, s64 pno, xad_t * xp, boolean_t abnr)
*
* RETURN VALUES:
* 0 - success
* EIO - i/o error.
* ENOSPC - insufficient disk resources.
* -EIO - i/o error.
* -ENOSPC - insufficient disk resources.
*/
int extRealloc(struct inode *ip, s64 nxlen, xad_t * xp, boolean_t abnr)
{
......@@ -350,7 +350,7 @@ int extRealloc(struct inode *ip, s64 nxlen, xad_t * xp, boolean_t abnr)
*
* RETURN VALUES:
* 0 - success
* EIO - i/o error.
* -EIO - i/o error.
*/
int extHint(struct inode *ip, s64 offset, xad_t * xp)
{
......@@ -421,8 +421,8 @@ int extHint(struct inode *ip, s64 offset, xad_t * xp)
*
* RETURN VALUES:
* 0 - success
* EIO - i/o error.
* ENOSPC - insufficient disk resources.
* -EIO - i/o error.
* -ENOSPC - insufficient disk resources.
*/
int extRecord(struct inode *ip, xad_t * xp)
{
......@@ -436,7 +436,7 @@ int extRecord(struct inode *ip, xad_t * xp)
rc = xtUpdate(0, ip, xp);
up(&JFS_IP(ip)->commit_sem);
return (rc);
return rc;
}
......@@ -453,8 +453,8 @@ int extRecord(struct inode *ip, xad_t * xp)
*
* RETURN VALUES:
* 0 - success
* EIO - i/o error.
* ENOSPC - insufficient disk resources.
* -EIO - i/o error.
* -ENOSPC - insufficient disk resources.
*/
int extFill(struct inode *ip, xad_t * xp)
{
......@@ -505,8 +505,8 @@ int extFill(struct inode *ip, xad_t * xp)
*
* RETURN VALUES:
* 0 - success
* EIO - i/o error.
* ENOSPC - insufficient disk resources.
* -EIO - i/o error.
* -ENOSPC - insufficient disk resources.
*/
static int
extBalloc(struct inode *ip, s64 hint, s64 * nblocks, s64 * blkno)
......@@ -535,7 +535,7 @@ extBalloc(struct inode *ip, s64 hint, s64 * nblocks, s64 * blkno)
/* if something other than an out of space error,
* stop and return this error.
*/
if (rc != ENOSPC)
if (rc != -ENOSPC)
return (rc);
/* decrease the allocation request size */
......@@ -596,8 +596,8 @@ extBalloc(struct inode *ip, s64 hint, s64 * nblocks, s64 * blkno)
*
* RETURN VALUES:
* 0 - success
* EIO - i/o error.
* ENOSPC - insufficient disk resources.
* -EIO - i/o error.
* -ENOSPC - insufficient disk resources.
*/
static int
extBrealloc(struct inode *ip,
......@@ -610,7 +610,7 @@ extBrealloc(struct inode *ip,
*newblkno = blkno;
return (0);
} else {
if (rc != ENOSPC)
if (rc != -ENOSPC)
return (rc);
}
......
This diff is collapsed.
......@@ -667,7 +667,7 @@ int lmGroupCommit(struct jfs_log * log, struct tblock * tblk)
/* group committed already ? */
if (tblk->flag & tblkGC_COMMITTED) {
if (tblk->flag & tblkGC_ERROR)
rc = EIO;
rc = -EIO;
LOGGC_UNLOCK(log);
return rc;
......@@ -701,7 +701,7 @@ int lmGroupCommit(struct jfs_log * log, struct tblock * tblk)
if (tblk->flag & tblkGC_COMMITTED) {
if (tblk->flag & tblkGC_ERROR)
rc = EIO;
rc = -EIO;
LOGGC_UNLOCK(log);
return rc;
......@@ -717,7 +717,7 @@ int lmGroupCommit(struct jfs_log * log, struct tblock * tblk)
/* removed from commit queue */
if (tblk->flag & tblkGC_ERROR)
rc = EIO;
rc = -EIO;
LOGGC_UNLOCK(log);
return rc;
......@@ -1068,7 +1068,7 @@ int lmLogOpen(struct super_block *sb, struct jfs_log ** logptr)
struct jfs_log *log;
if (!(log = kmalloc(sizeof(struct jfs_log), GFP_KERNEL)))
return ENOMEM;
return -ENOMEM;
memset(log, 0, sizeof(struct jfs_log));
init_waitqueue_head(&log->syncwait);
......@@ -1113,7 +1113,6 @@ int lmLogOpen(struct super_block *sb, struct jfs_log ** logptr)
}
if ((rc = bd_claim(bdev, log))) {
rc = -rc;
goto close;
}
......@@ -1169,7 +1168,7 @@ int lmLogOpen(struct super_block *sb, struct jfs_log ** logptr)
* PARAMETER: log - log structure
*
* RETURN: 0 - if ok
* EINVAL - bad log magic number or superblock dirty
* -EINVAL - bad log magic number or superblock dirty
* error returned from logwait()
*
* serialization: single first open thread
......@@ -1209,21 +1208,21 @@ int lmLogInit(struct jfs_log * log)
if (logsuper->magic != cpu_to_le32(LOGMAGIC)) {
jfs_warn("*** Log Format Error ! ***");
rc = EINVAL;
rc = -EINVAL;
goto errout20;
}
/* logredo() should have been run successfully. */
if (logsuper->state != cpu_to_le32(LOGREDONE)) {
jfs_warn("*** Log Is Dirty ! ***");
rc = EINVAL;
rc = -EINVAL;
goto errout20;
}
/* initialize log inode from log superblock */
if (test_bit(log_INLINELOG,&log->flag)) {
if (log->size != le32_to_cpu(logsuper->size)) {
rc = EINVAL;
rc = -EINVAL;
goto errout20;
}
jfs_info("lmLogInit: inline log:0x%p base:0x%Lx size:0x%x",
......@@ -1610,7 +1609,7 @@ static int lmLogFileSystem(struct jfs_log * log, char *uuid, int activate)
if (i == MAX_ACTIVE) {
jfs_warn("Somebody stomped on the journal!");
lbmFree(bpsuper);
return EIO;
return -EIO;
}
}
......@@ -1698,7 +1697,7 @@ static int lbmLogInit(struct jfs_log * log)
error:
lbmLogShutdown(log);
return (ENOMEM);
return -ENOMEM;
}
......@@ -2007,7 +2006,7 @@ static int lbmIOWait(struct lbuf * bp, int flag)
LCACHE_SLEEP_COND(bp->l_ioevent, (bp->l_flag & lbmDONE), flags);
rc = (bp->l_flag & lbmERROR) ? EIO : 0;
rc = (bp->l_flag & lbmERROR) ? -EIO : 0;
if (flag & lbmFREE)
lbmfree(bp);
......
......@@ -72,11 +72,11 @@ static int logMOUNT(struct super_block *sb);
*
* PARAMETER: sb - super block
*
* RETURN: EBUSY - device already mounted or open for write
* EBUSY - cvrdvp already mounted;
* EBUSY - mount table full
* ENOTDIR - cvrdvp not directory on a device mount
* ENXIO - device open failure
* RETURN: -EBUSY - device already mounted or open for write
* -EBUSY - cvrdvp already mounted;
* -EBUSY - mount table full
* -ENOTDIR- cvrdvp not directory on a device mount
* -ENXIO - device open failure
*/
int jfs_mount(struct super_block *sb)
{
......@@ -98,7 +98,7 @@ int jfs_mount(struct super_block *sb)
ipaimap = diReadSpecial(sb, AGGREGATE_I, 0);
if (ipaimap == NULL) {
jfs_err("jfs_mount: Faild to read AGGREGATE_I");
rc = EIO;
rc = -EIO;
goto errout20;
}
sbi->ipaimap = ipaimap;
......@@ -118,7 +118,7 @@ int jfs_mount(struct super_block *sb)
*/
ipbmap = diReadSpecial(sb, BMAP_I, 0);
if (ipbmap == NULL) {
rc = EIO;
rc = -EIO;
goto errout22;
}
......@@ -149,7 +149,7 @@ int jfs_mount(struct super_block *sb)
ipaimap2 = diReadSpecial(sb, AGGREGATE_I, 1);
if (ipaimap2 == 0) {
jfs_err("jfs_mount: Faild to read AGGREGATE_I");
rc = EIO;
rc = -EIO;
goto errout35;
}
sbi->ipaimap2 = ipaimap2;
......@@ -178,7 +178,7 @@ int jfs_mount(struct super_block *sb)
if (ipimap == NULL) {
jfs_err("jfs_mount: Failed to read FILESYSTEM_I");
/* open fileset secondary inode allocation map */
rc = EIO;
rc = -EIO;
goto errout40;
}
jfs_info("jfs_mount: ipimap:0x%p", ipimap);
......@@ -327,8 +327,7 @@ static int chkSuper(struct super_block *sb)
/* validate fs signature */
if (strncmp(j_sb->s_magic, JFS_MAGIC, 4) ||
j_sb->s_version > cpu_to_le32(JFS_VERSION)) {
//rc = EFORMAT;
rc = EINVAL;
rc = -EINVAL;
goto out;
}
......@@ -336,7 +335,7 @@ static int chkSuper(struct super_block *sb)
#ifdef _JFS_4K
if (bsize != PSIZE) {
jfs_err("Currently only 4K block size supported!");
rc = EINVAL;
rc = -EINVAL;
goto out;
}
#endif /* _JFS_4K */
......@@ -372,7 +371,7 @@ static int chkSuper(struct super_block *sb)
if (j_sb->s_state != cpu_to_le32(FM_CLEAN) &&
!(sb->s_flags & MS_RDONLY)) {
jfs_err("jfs_mount: Mount Failure: File System Dirty.");
rc = EINVAL;
rc = -EINVAL;
goto out;
}
......
......@@ -257,7 +257,7 @@ int txInit(void)
size = sizeof(struct tblock) * nTxBlock;
TxBlock = (struct tblock *) vmalloc(size);
if (TxBlock == NULL)
return ENOMEM;
return -ENOMEM;
for (k = 1; k < nTxBlock - 1; k++) {
TxBlock[k].next = k + 1;
......@@ -283,7 +283,7 @@ int txInit(void)
TxLock = (struct tlock *) vmalloc(size);
if (TxLock == NULL) {
vfree(TxBlock);
return ENOMEM;
return -ENOMEM;
}
/* initialize tlock table */
......@@ -1098,7 +1098,7 @@ int txCommit(tid_t tid, /* transaction identifier */
struct inode **iplist, /* list of inode to commit */
int flag)
{
int rc = 0, rc1 = 0;
int rc = 0;
struct commit cd;
struct jfs_log *log;
struct tblock *tblk;
......@@ -1318,8 +1318,6 @@ int txCommit(tid_t tid, /* transaction identifier */
out:
if (rc != 0)
txAbortCommit(&cd, rc);
else
rc = rc1;
TheEnd:
jfs_info("txCommit: tid = %d, returning %d", tid, rc);
......
......@@ -88,20 +88,20 @@ int get_UCSname(struct component_name * uniName, struct dentry *dentry,
int length = dentry->d_name.len;
if (length > JFS_NAME_MAX)
return ENAMETOOLONG;
return -ENAMETOOLONG;
uniName->name =
kmalloc((length + 1) * sizeof(wchar_t), GFP_NOFS);
if (uniName->name == NULL)
return ENOSPC;
return -ENOSPC;
uniName->namlen = jfs_strtoUCS(uniName->name, dentry->d_name.name,
length, nls_tab);
if (uniName->namlen < 0) {
kfree(uniName->name);
return -uniName->namlen;
return uniName->namlen;
}
return 0;
......
......@@ -73,7 +73,7 @@
BT_PUTPAGE(MP);\
updateSuper((IP)->i_sb, FM_DIRTY);\
MP = NULL;\
RC = EIO;\
RC = -EIO;\
}\
}\
}
......@@ -814,7 +814,7 @@ int xtInsert(tid_t tid, /* transaction id */
/* This test must follow XT_GETSEARCH since mp must be valid if
* we branch to out: */
if (cmp == 0) {
rc = EEXIST;
rc = -EEXIST;
goto out;
}
......@@ -1033,7 +1033,7 @@ xtSplitUp(tid_t tid,
xtSplitRoot(tid, ip, split, &rmp) :
xtSplitPage(tid, ip, split, &rmp, &rbn);
if (rc)
return EIO;
return -EIO;
XT_PUTPAGE(smp);
......@@ -1238,7 +1238,7 @@ xtSplitPage(tid_t tid, struct inode *ip,
rbn = addressPXD(pxd);
rmp = get_metapage(ip, rbn, PSIZE, 1);
if (rmp == NULL)
return EIO;
return -EIO;
jfs_info("xtSplitPage: ip:0x%p smp:0x%p rmp:0x%p", ip, smp, rmp);
......@@ -1485,7 +1485,7 @@ xtSplitRoot(tid_t tid,
rbn = addressPXD(pxd);
rmp = get_metapage(ip, rbn, PSIZE, 1);
if (rmp == NULL)
return EIO;
return -EIO;
jfs_info("xtSplitRoot: ip:0x%p rmp:0x%p", ip, rmp);
......@@ -2409,7 +2409,7 @@ int xtAppend(tid_t tid, /* transaction id */
XT_GETSEARCH(ip, btstack.top, bn, mp, p, index);
if (cmp == 0) {
rc = EEXIST;
rc = -EEXIST;
goto out;
}
//insert:
......@@ -2557,7 +2557,7 @@ int xtDelete(tid_t tid, struct inode *ip, s64 xoff, s32 xlen, int flag)
if (cmp) {
/* unpin the leaf page */
XT_PUTPAGE(mp);
return ENOENT;
return -ENOENT;
}
/*
......@@ -2788,7 +2788,7 @@ xtRelocate(tid_t tid, struct inode * ip, xad_t * oxad, /* old XAD */
/* validate extent offset */
offset = xoff << JFS_SBI(ip->i_sb)->l2bsize;
if (offset >= ip->i_size)
return ESTALE; /* stale extent */
return -ESTALE; /* stale extent */
jfs_info("xtRelocate: xtype:%d xoff:0x%lx xlen:0x%x xaddr:0x%lx:0x%lx",
xtype, (ulong) xoff, xlen, (ulong) oxaddr, (ulong) nxaddr);
......@@ -2804,7 +2804,7 @@ xtRelocate(tid_t tid, struct inode * ip, xad_t * oxad, /* old XAD */
return rc;
if (cmp) {
XT_PUTPAGE(pmp);
return ESTALE;
return -ESTALE;
}
/* retrieve search result */
......@@ -2814,7 +2814,7 @@ xtRelocate(tid_t tid, struct inode * ip, xad_t * oxad, /* old XAD */
xad = &pp->xad[index];
if (addressXAD(xad) != oxaddr || lengthXAD(xad) != xlen) {
XT_PUTPAGE(pmp);
return ESTALE;
return -ESTALE;
}
} else { /* (xtype == XTPAGE) */
......@@ -2824,7 +2824,7 @@ xtRelocate(tid_t tid, struct inode * ip, xad_t * oxad, /* old XAD */
return rc;
if (cmp) {
XT_PUTPAGE(pmp);
return ESTALE;
return -ESTALE;
}
/* retrieve search result */
......@@ -3127,7 +3127,7 @@ static int xtSearchNode(struct inode *ip, xad_t * xad, /* required XAD entry */
if (rc)
return rc;
if (p->header.flag & BT_LEAF)
return ESTALE;
return -ESTALE;
lim = le16_to_cpu(p->header.nextindex) - XTENTRYSTART;
......@@ -3439,7 +3439,7 @@ s64 xtTruncate(tid_t tid, struct inode *ip, s64 newsize, int flag)
getPage:
XT_GETPAGE(ip, bn, mp, PSIZE, p, rc);
if (rc)
return -rc;
return rc;
/* process entries backward from last index */
index = le16_to_cpu(p->header.nextindex) - 1;
......@@ -3667,7 +3667,7 @@ s64 xtTruncate(tid_t tid, struct inode *ip, s64 newsize, int flag)
bn = parent->bn;
XT_GETPAGE(ip, bn, mp, PSIZE, p, rc);
if (rc)
return -rc;
return rc;
index = parent->index;
......@@ -3924,7 +3924,7 @@ s64 xtTruncate_pmap(tid_t tid, struct inode *ip, s64 committed_size)
xoff = (committed_size >> JFS_SBI(ip->i_sb)->l2bsize) - 1;
rc = xtSearch(ip, xoff, &cmp, &btstack, 0);
if (rc)
return -rc;
return rc;
assert(cmp == 0);
XT_GETSEARCH(ip, btstack.top, bn, mp, p, index);
} else {
......@@ -3941,7 +3941,7 @@ s64 xtTruncate_pmap(tid_t tid, struct inode *ip, s64 committed_size)
getPage:
XT_GETPAGE(ip, bn, mp, PSIZE, p, rc);
if (rc)
return -rc;
return rc;
/* process entries backward from last index */
index = le16_to_cpu(p->header.nextindex) - 1;
......@@ -3986,7 +3986,7 @@ s64 xtTruncate_pmap(tid_t tid, struct inode *ip, s64 committed_size)
bn = parent->bn;
XT_GETPAGE(ip, bn, mp, PSIZE, p, rc);
if (rc)
return -rc;
return rc;
index = parent->index;
......@@ -4311,7 +4311,7 @@ int xtGather(btree_t *t)
bn = parent->bn;
XT_GETPAGE(ip, bn, mp, PSIZE, p, rc);
if (rc)
return EIO;
return -EIO;
/* first subroot page which
* covers all new allocated blocks
......
......@@ -85,7 +85,7 @@ int jfs_create(struct inode *dip, struct dentry *dentry, int mode)
*/
ip = ialloc(dip, mode);
if (ip == NULL) {
rc = ENOSPC;
rc = -ENOSPC;
goto out2;
}
......@@ -158,8 +158,8 @@ int jfs_create(struct inode *dip, struct dentry *dentry, int mode)
out1:
jfs_info("jfs_create: rc:%d", -rc);
return -rc;
jfs_info("jfs_create: rc:%d", rc);
return rc;
}
......@@ -193,7 +193,7 @@ int jfs_mkdir(struct inode *dip, struct dentry *dentry, int mode)
/* link count overflow on parent directory ? */
if (dip->i_nlink == JFS_LINK_MAX) {
rc = EMLINK;
rc = -EMLINK;
goto out1;
}
......@@ -211,7 +211,7 @@ int jfs_mkdir(struct inode *dip, struct dentry *dentry, int mode)
*/
ip = ialloc(dip, S_IFDIR | mode);
if (ip == NULL) {
rc = ENOSPC;
rc = -ENOSPC;
goto out2;
}
......@@ -288,8 +288,8 @@ int jfs_mkdir(struct inode *dip, struct dentry *dentry, int mode)
out1:
jfs_info("jfs_mkdir: rc:%d", -rc);
return -rc;
jfs_info("jfs_mkdir: rc:%d", rc);
return rc;
}
/*
......@@ -300,8 +300,8 @@ int jfs_mkdir(struct inode *dip, struct dentry *dentry, int mode)
* PARAMETER: dip - parent inode
* dentry - child directory dentry
*
* RETURN: EINVAL - if name is . or ..
* EINVAL - if . or .. exist but are invalid.
* RETURN: -EINVAL - if name is . or ..
* -EINVAL - if . or .. exist but are invalid.
* errors from subroutines
*
* note:
......@@ -325,7 +325,7 @@ int jfs_rmdir(struct inode *dip, struct dentry *dentry)
/* directory must be empty to be removed */
if (!dtEmpty(ip)) {
rc = ENOTEMPTY;
rc = -ENOTEMPTY;
goto out;
}
......@@ -411,7 +411,7 @@ int jfs_rmdir(struct inode *dip, struct dentry *dentry)
out:
jfs_info("jfs_rmdir: rc:%d", rc);
return -rc;
return rc;
}
/*
......@@ -497,7 +497,7 @@ int jfs_unlink(struct inode *dip, struct dentry *dentry)
up(&JFS_IP(dip)->commit_sem);
up(&JFS_IP(ip)->commit_sem);
IWRITE_UNLOCK(ip);
rc = -new_size; /* We return -rc */
rc = new_size;
goto out1;
}
tblk = tid_to_tblock(tid);
......@@ -559,8 +559,8 @@ int jfs_unlink(struct inode *dip, struct dentry *dentry)
out1:
free_UCSname(&dname);
out:
jfs_info("jfs_unlink: rc:%d", -rc);
return -rc;
jfs_info("jfs_unlink: rc:%d", rc);
return rc;
}
/*
......@@ -585,7 +585,7 @@ int jfs_unlink(struct inode *dip, struct dentry *dentry)
* PARAMETERS: cd - pointer to commit data structure.
* current inode is the one to truncate.
*
* RETURN : Errors from subroutines
* RETURN: Errors from subroutines
*/
s64 commitZeroLink(tid_t tid, struct inode *ip)
{
......@@ -775,7 +775,7 @@ int jfs_link(struct dentry *old_dentry,
down(&JFS_IP(ip)->commit_sem);
if (ip->i_nlink == JFS_LINK_MAX) {
rc = EMLINK;
rc = -EMLINK;
goto out;
}
......@@ -813,7 +813,7 @@ int jfs_link(struct dentry *old_dentry,
up(&JFS_IP(ip)->commit_sem);
jfs_info("jfs_link: rc:%d", rc);
return -rc;
return rc;
}
/*
......@@ -871,7 +871,7 @@ int jfs_symlink(struct inode *dip, struct dentry *dentry, const char *name)
*/
ip = ialloc(dip, S_IFLNK | 0777);
if (ip == NULL) {
rc = ENOSPC;
rc = -ENOSPC;
goto out2;
}
......@@ -963,7 +963,7 @@ int jfs_symlink(struct inode *dip, struct dentry *dentry, const char *name)
if (mp == NULL) {
dtDelete(tid, dip, &dname, &ino,
JFS_REMOVE);
rc = EIO;
rc = -EIO;
goto out3;
}
memcpy(mp->data, name, copy_size);
......@@ -981,7 +981,7 @@ int jfs_symlink(struct inode *dip, struct dentry *dentry, const char *name)
ip->i_blocks = LBLK2PBLK(sb, xlen);
} else {
dtDelete(tid, dip, &dname, &ino, JFS_REMOVE);
rc = ENOSPC;
rc = -ENOSPC;
goto out3;
}
}
......@@ -1028,8 +1028,8 @@ int jfs_symlink(struct inode *dip, struct dentry *dentry, const char *name)
#endif
out1:
jfs_info("jfs_symlink: rc:%d", -rc);
return -rc;
jfs_info("jfs_symlink: rc:%d", rc);
return rc;
}
......@@ -1078,7 +1078,7 @@ int jfs_rename(struct inode *old_dir, struct dentry *old_dentry,
*/
rc = dtSearch(old_dir, &old_dname, &ino, &btstack, JFS_LOOKUP);
if (rc || (ino != old_ip->i_ino)) {
rc = ENOENT;
rc = -ENOENT;
goto out3;
}
......@@ -1088,26 +1088,26 @@ int jfs_rename(struct inode *old_dir, struct dentry *old_dentry,
rc = dtSearch(new_dir, &new_dname, &ino, &btstack, JFS_LOOKUP);
if (rc == 0) {
if ((new_ip == 0) || (ino != new_ip->i_ino)) {
rc = ESTALE;
rc = -ESTALE;
goto out3;
}
} else if (rc != ENOENT)
} else if (rc != -ENOENT)
goto out3;
else if (new_ip) {
/* no entry exists, but one was expected */
rc = ESTALE;
rc = -ESTALE;
goto out3;
}
if (S_ISDIR(old_ip->i_mode)) {
if (new_ip) {
if (!dtEmpty(new_ip)) {
rc = ENOTEMPTY;
rc = -ENOTEMPTY;
goto out3;
}
} else if ((new_dir != old_dir) &&
(new_dir->i_nlink == JFS_LINK_MAX)) {
rc = EMLINK;
rc = -EMLINK;
goto out3;
}
} else if (new_ip)
......@@ -1145,7 +1145,7 @@ int jfs_rename(struct inode *old_dir, struct dentry *old_dentry,
/* free block resources */
if ((new_size = commitZeroLink(tid, new_ip)) < 0) {
txAbort(tid, 1); /* Marks FS Dirty */
rc = -new_size; /* We return -rc */
rc = new_size;
goto out4;
}
tblk = tid_to_tblock(tid);
......@@ -1262,7 +1262,7 @@ int jfs_rename(struct inode *old_dir, struct dentry *old_dentry,
new_size = xtTruncate_pmap(tid, new_ip, new_size);
if (new_size < 0) {
txAbort(tid, 1);
rc = -new_size; /* We return -rc */
rc = new_size;
} else
rc = txCommit(tid, 1, &new_ip, COMMIT_SYNC);
txEnd(tid);
......@@ -1289,7 +1289,7 @@ int jfs_rename(struct inode *old_dir, struct dentry *old_dentry,
}
jfs_info("jfs_rename: returning %d", rc);
return -rc;
return rc;
}
......@@ -1316,7 +1316,7 @@ int jfs_mknod(struct inode *dir, struct dentry *dentry, int mode, dev_t rdev)
ip = ialloc(dir, mode);
if (ip == NULL) {
rc = ENOSPC;
rc = -ENOSPC;
goto out1;
}
......@@ -1370,7 +1370,7 @@ int jfs_mknod(struct inode *dir, struct dentry *dentry, int mode, dev_t rdev)
out:
jfs_info("jfs_mknod: returning %d", rc);
return -rc;
return rc;
}
static struct dentry *jfs_lookup(struct inode *dip, struct dentry *dentry)
......@@ -1393,15 +1393,15 @@ static struct dentry *jfs_lookup(struct inode *dip, struct dentry *dentry)
else {
if ((rc =
get_UCSname(&key, dentry, JFS_SBI(dip->i_sb)->nls_tab)))
return ERR_PTR(-rc);
return ERR_PTR(rc);
rc = dtSearch(dip, &key, &inum, &btstack, JFS_LOOKUP);
free_UCSname(&key);
if (rc == ENOENT) {
if (rc == -ENOENT) {
d_add(dentry, NULL);
return ERR_PTR(0);
} else if (rc) {
jfs_err("jfs_lookup: dtSearch returned %d", rc);
return ERR_PTR(-rc);
return ERR_PTR(rc);
}
}
......
......@@ -182,7 +182,7 @@ int jfs_extendfs(struct super_block *sb, s64 newLVSize, int newLogSize)
/* file system cannot be shrinked */
if (newFSSize < bmp->db_mapsize) {
rc = EINVAL;
rc = -EINVAL;
goto out;
}
......@@ -315,7 +315,7 @@ int jfs_extendfs(struct super_block *sb, s64 newLVSize, int newLogSize)
if (mapSize > t64) {
printk(KERN_ERR "jfs_extendfs: mapSize (0x%Lx) > t64 (0x%Lx)\n",
(long long) mapSize, (long long) t64);
rc = EIO;
rc = -EIO;
goto error_out;
}
nblocks = min(t64 - mapSize, XSize);
......
......@@ -519,7 +519,7 @@ static int __init init_jfs_fs(void)
metapage_exit();
free_slab:
kmem_cache_destroy(jfs_inode_cachep);
return -rc;
return rc;
}
static void __exit exit_jfs_fs(void)
......
......@@ -183,7 +183,7 @@ static int ea_write_inline(struct inode *ip, struct jfs_ea_list *ealist,
* used for an inline EA.
*/
if (!(ji->mode2 & INLINEEA) && !(ji->ea.flag & DXD_INLINE))
return -1;
return -EPERM;
DXDsize(ea, size);
DXDlength(ea, 0);
......@@ -252,7 +252,7 @@ static int ea_write(struct inode *ip, struct jfs_ea_list *ealist, int size,
rc = dbAlloc(ip, INOHINT(ip), nblocks, &blkno);
if (rc)
return -rc;
return rc;
/*
* Now have nblocks worth of storage to stuff into the FEALIST.
......@@ -513,7 +513,7 @@ static int ea_get(struct inode *inode, struct ea_buffer *ea_buf, int min_size)
rc = dbAlloc(inode, INOHINT(inode), (s64) blocks_needed,
&blkno);
if (rc)
return -rc;
return rc;
DXDlength(&ea_buf->new_ea, blocks_needed);
DXDaddress(&ea_buf->new_ea, blkno);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment