On Wed, Sep 08, 2021 at 12:23:02AM +0900, Tetsuo Handa wrote:
On 2021/09/07 23:57, Luis Chamberlain wrote:
quoted
quoted
Actually, blk_request_module() failures should be ignored, for
subsequent ilookup() will fail if blk_request_module() failed to
create the requested block device.
Then how about this:
Since we would like to use __must_check for add_disk() we proceed with
the change to capture the errors and propagate them and we just document on
fs/block_dev.c's use of blk_request_module() about the above issue and
how we prefer the errror that ilookup() would return.
Marking add_disk() as __must_check makes it possible to enforce "don't leave
partially initialized devices". That's already an enough improvement.
Probe functions can remain "void", and hence blk_request_module() can remain "void".
That is, I would drop "[PATCH 1/2] block: make __register_blkdev() return an error".
Probe calls can be left voide, but because of the new __must_check we'd
still have to modify all probe calls as they use add_disk() and it would
seem odd to just capture the error to ignore it without documenting
any of this.
Luis