Re: slab warning: kmem_cache of name 'dm_bufio_buffer' already exists

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

 



On 11/6/24 12:19, Mikulas Patocka wrote:
> Hi

Hi,

> The commit 4c39529663b93165953ecf9b1a9ea817358dcd06 ("slab: Warn on 
> duplicate cache names when DEBUG_VM=y") is causing large number of 
> warnings about "dm_bufio_buffer", "dm_bufio_buffer-%u" (and other) device 
> mapper caches.

Hmm wonder why nobody run into this before. We thought the code that would
cause the warning would be all fixed before introducing it, but we missed
some, sorry.

> I'd like to ask - how to properly fix it?
> 
> We create a "dm_bufio_buffer" or "dm_bufio_buffer-%u" cache with every dm 
> bufio client. It used to work (and the duplicate caches are merged), but 

Note the merging can be disabled so then it's really several caches with
exactly same name in /proc/slabinfo and inability to create their
sysfs/debugfs directories.

> now it warns.
> 
> Should I append a pointer to the dm_bufio structure to the slab cache name 
> to make them different? Or is there any other preferred solution?

Anything that uniquely identifies the client should be ok, but beware e.g.
device names that can have slashes, see commit a360f311f57a36 (also for the
simplest possible fix that is an incremented number).

> Note that it is not possible to pre-create the cache "dm_bufio_buffer-%u" 
> in the module's init function, because the size of per-buffer auxiliary 
> data is not known at this point.

Looks like some chose to solve this the harder way, see 4d784c042d164f

> Mikulas
> 





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

  Powered by Linux