Thread (37 messages) 37 messages, 5 authors, 2021-09-14

Re: [PATCH v2 04/15] block: Add block device LED trigger integrations

From: Ian Pilcher <hidden>
Date: 2021-09-10 15:00:27
Also in: linux-leds, lkml

On 9/9/21 8:23 PM, Marek Behún wrote:
On Thu,  9 Sep 2021 17:25:02 -0500
Ian Pilcher [off-list ref] wrote:
quoted
Call ledtrig_blkdev_disk_init() from device_add_disk() to ensure that
ledtrig is initialized to NULL, in case a driver allocates the structure
itself and doesn't use kzalloc()
No, this is not needed. If someone does not use kzalloc(), they should
use it. No need to fix other code here.
Yeah.  I'm honestly not sure if this is necessary or not, as I don't
know if there are any drivers that actually have this problem.  I
decided to include this for now, because an uninitialized pointer can
cause memory corruption, etc., when the disk cleanup function follows a
garbage pointer.

This recent commit seems to indicate that until recently drivers were
responsible for doing gendisk allocation.
commit f525464a8000f092c20b00eead3eaa9d849c599e
Author: Christoph Hellwig [off-list ref]
Date:   Fri May 21 07:50:55 2021 +0200

    block: add blk_alloc_disk and blk_cleanup_disk APIs
    
    Add two new APIs to allocate and free a gendisk including the
    request_queue for use with BIO based drivers.  This is to avoid
    boilerplate code in drivers.
Were those drivers expected to use kzalloc() or otherwise zero out the
entire structure?  I really don't know.

I think that it makes sense to defer to the block subsystem maintainers
on this question.

-- 
========================================================================
                  In Soviet Russia, Google searches you!
========================================================================
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help