On Thu, 30 Jan 2014 13:38:56 -0800 (PST) David Rientjes <[email protected]> wrote:
> > > What's funnier is that tmp_name isn't required at all since > > > kmem_cache_create_memcg() is just going to do a kstrdup() on it anyway, > > > so > > > you could easily just pass in the pointer to memory that has been > > > allocated for s->name rather than allocating memory twice. > > > > We need a buffer to sprintf() into. > > > > Yeah, it shouldn't be temporary it should be the one and only allocation. > We should construct the name in memcg_create_kmem_cache() and be done with > it. Could. That would require converting memcg_create_kmem_cache() to take a va_list and call kasprintf() on it. The problem is that pesky rcu_read_lock() which is required around cgroup_name() - we'd have to call memcg_create_kmem_cache() under rcu_read_lock() so the usual GFP_foo limitations apply. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

