Re: Common10 [12/20] Move sysfs_slab_add to common

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



2012/8/4 Christoph Lameter <cl@xxxxxxxxx>:
> Simplify locking by moving the slab_add_sysfs after all locks
> have been dropped. Eases the upcoming move to provide sysfs
> support for all allocators.
>
> Signed-off-by: Christoph Lameter <cl@xxxxxxxxx>
>
> Index: linux-2.6/mm/slab.h
> ===================================================================
> --- linux-2.6.orig/mm/slab.h    2012-08-03 09:04:19.558047765 -0500
> +++ linux-2.6/mm/slab.h 2012-08-03 09:04:21.258077096 -0500
> @@ -39,10 +39,13 @@ struct kmem_cache *__kmem_cache_create(c
>  #ifdef CONFIG_SLUB
>  struct kmem_cache *__kmem_cache_alias(const char *name, size_t size,
>         size_t align, unsigned long flags, void (*ctor)(void *));
> +extern int sysfs_slab_add(struct kmem_cache *s);
>  #else
>  static inline struct kmem_cache *__kmem_cache_alias(const char *name, size_t size,
>         size_t align, unsigned long flags, void (*ctor)(void *))
>  { return NULL; }
> +static inline int sysfs_slab_add(struct kmem_cache *s) { return 0; }
> +
>  #endif
>
>
> Index: linux-2.6/mm/slab_common.c
> ===================================================================
> --- linux-2.6.orig/mm/slab_common.c     2012-08-03 09:04:19.558047765 -0500
> +++ linux-2.6/mm/slab_common.c  2012-08-03 09:04:21.258077096 -0500
> @@ -140,6 +140,9 @@ out:
>                 return NULL;
>         }
>
> +       if (s->refcount == 1)
> +               sysfs_slab_add(s);
> +
>         return s;
>  }
>  EXPORT_SYMBOL(kmem_cache_create);

Why not handle error case of sysfs_slab_add()?
Before patch, it is handled.
Is there any reason for that?

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]