Re: [RFC] Common code 07/12] slabs: Move kmem_cache_create mutex handling to common code

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

 



2012/5/19 Christoph Lameter <cl@xxxxxxxxx>:
> Move the mutex handling into the common kmem_cache_create()
> function.
>
>                        list_add(&s->list, &slab_caches);
>                        mutex_unlock(&slab_mutex);
> -                       if (sysfs_slab_add(s)) {
> -                               mutex_lock(&slab_mutex);
> -                               list_del(&s->list);
> -                               kfree(n);
> -                               kfree(s);
> -                               goto err;
> -                       }
> -                       return s;
> +                       r = sysfs_slab_add(s);
> +                       mutex_lock(&slab_mutex);
> +
> +                       if (!r)
> +                               return s;
> +
> +                       list_del(&s->list);
> +                       kmem_cache_close(s);
>                }
> -               kfree(n);
>                kfree(s);
>        }

Before this patch is applied, can we move calling 'sysfs_slab_add' to
common code
for removing slab_mutex entirely in kmem_cache_create?
ÿôèº{.nÇ+?·ÿ±éÝjg¬±¨Â+aþéì¹»®&Þ?)îÇù¦þ)í?æèw+h?¨è­Ú&£ù/iÉÿ¢¸ÿ?梷¢?ú(?¸§»þÇ?þm§ÿÿÃÿ?)îÇù¦þ?àÿñb?n?ö¢®×¥yÊ&?{^®w­r«?ë"?&§iÖÿ²('?Ûiÿÿì¶?m?é?µêÿq¯Ã¢ízf¢?ÿÚ?·??ÚÿýÚ'·ù/iÉÿ¢¸ÿýé??_佧$þ?àÿöÿ



[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]