diff options
author | Anton Blanchard <anton@samba.org> | 2010-04-02 09:46:55 +0200 |
---|---|---|
committer | Jens Axboe <jens.axboe@oracle.com> | 2010-04-02 09:46:55 +0200 |
commit | 144214537370b4f133a735446ebe86e90cfb2501 (patch) | |
tree | 840f26c5a83d4730c28b5c46ec000a76e89adcc9 /mm/backing-dev.c | |
parent | Block: Fix block/elevator.c elevator_get() off-by-one error (diff) | |
download | linux-144214537370b4f133a735446ebe86e90cfb2501.tar.xz linux-144214537370b4f133a735446ebe86e90cfb2501.zip |
backing-dev: Handle class_create() failure
I hit this when we had a bug in IDR for a few days. Basically sysfs would
fail to create new inodes since it uses an IDR and therefore class_create would
fail.
While we are unlikely to see this fail we may as well handle it instead of
oopsing.
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'mm/backing-dev.c')
-rw-r--r-- | mm/backing-dev.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/mm/backing-dev.c b/mm/backing-dev.c index 0e8ca0347707..f13e067e1467 100644 --- a/mm/backing-dev.c +++ b/mm/backing-dev.c @@ -227,6 +227,9 @@ static struct device_attribute bdi_dev_attrs[] = { static __init int bdi_class_init(void) { bdi_class = class_create(THIS_MODULE, "bdi"); + if (IS_ERR(bdi_class)) + return PTR_ERR(bdi_class); + bdi_class->dev_attrs = bdi_dev_attrs; bdi_debug_init(); return 0; |