On 10/4/24 16:10, SurajSonawane2415 wrote:
Explaination of how bio could be used uninitialized in this function: In the function blk_rq_prep_clone, the variable bio is declared but can remain uninitialized if the allocation with bio_alloc_clone fails. This can lead to undefined behavior when the function attempts to free bio in the error handling section using bio_put(bio). By initializing bio to NULL at declaration, we ensure that the cleanup code will only interact with bio if it has been successfully allocated.
Hate to say it, but it looks you are correct. Care to send a patch? Cheers, Hannes -- Dr. Hannes Reinecke Kernel Storage Architect hare@xxxxxxx +49 911 74053 688 SUSE Software Solutions GmbH, Frankenstr. 146, 90461 Nürnberg HRB 36809 (AG Nürnberg), GF: I. Totev, A. McDonald, W. Knoblich