Skip to content

Commit

Permalink
zcache/tmem: Better error checking on frontswap_register_ops return v…
Browse files Browse the repository at this point in the history
…alue.

In the past it either used to be NULL or the "older" backend. Now we
also return -Exx error codes.

Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Signed-off-by: Bob Liu <lliubbo@gmail.com>
Cc: Wanpeng Li <liwanp@linux.vnet.ibm.com>
Cc: Andor Daam <andor.daam@googlemail.com>
Cc: Dan Magenheimer <dan.magenheimer@oracle.com>
Cc: Florian Schmaus <fschmaus@gmail.com>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Stefan Hengelein <ilendir@googlemail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
  • Loading branch information
Konrad Rzeszutek Wilk authored and Linus Torvalds committed May 1, 2013
1 parent 10a7a07 commit f42158f
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 2 deletions.
5 changes: 4 additions & 1 deletion drivers/staging/zcache/zcache-main.c
Original file line number Diff line number Diff line change
Expand Up @@ -1886,8 +1886,11 @@ static int __init zcache_init(void)
namestr, frontswap_has_exclusive_gets,
!disable_frontswap_ignore_nonactive);
#endif
if (old_ops != NULL)
if (IS_ERR(old_ops) || old_ops) {
if (IS_ERR(old_ops))
return PTR_RET(old_ops);
pr_warn("%s: frontswap_ops overridden\n", namestr);
}
}
if (ramster_enabled)
ramster_init(!disable_cleancache, !disable_frontswap,
Expand Down
5 changes: 4 additions & 1 deletion drivers/xen/tmem.c
Original file line number Diff line number Diff line change
Expand Up @@ -397,8 +397,11 @@ static int xen_tmem_init(void)
frontswap_register_ops(&tmem_frontswap_ops);

tmem_frontswap_poolid = -1;
if (old_ops)
if (IS_ERR(old_ops) || old_ops) {
if (IS_ERR(old_ops))
return PTR_ERR(old_ops);
s = " (WARNING: frontswap_ops overridden)";
}
printk(KERN_INFO "frontswap enabled, RAM provided by "
"Xen Transcendent Memory%s\n", s);
}
Expand Down

0 comments on commit f42158f

Please sign in to comment.