From mboxrd@z Thu Jan 1 00:00:00 1970 From: SF Markus Elfring Subject: Re: [PATCH v2 2/2] KVM: s390: Use memdup_user() rather than duplicating code Date: Mon, 3 Oct 2016 15:47:46 +0200 Message-ID: <9ee60162-110b-1305-5a97-624de425d072@users.sourceforge.net> References: <82b84c9c-38a4-4d17-910f-312668dbae01@users.sourceforge.net> <73d5a586-2178-a311-f19c-c16c6e8cbb22@users.sourceforge.net> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: Sender: kvm-owner@vger.kernel.org List-Archive: List-Post: To: Geert Uytterhoeven Cc: kvm@vger.kernel.org, linux-s390@vger.kernel.org, =?UTF-8?Q?Christian_Borntr=c3=a4ger?= , Cornelia Huck , David Hildenbrand , Heiko Carstens , Martin Schwidefsky , Paolo Bonzini , =?UTF-8?B?UmFkaW0gS3LEjW3DocWZ?= , LKML , kernel-janitors@vger.kernel.org, Julia Lawall , Walter Harms List-ID: >> Did you notice the check "IS_ERR(bp_data)" and the corresponding reaction >> in this update suggestion? > > Yes, but bp_data may still be a valid (as in "not an error") value. Thanks for your constructive feedback. > Your commit a1708a2eaded836b ("KVM: s390: Improve determination of sizes in > kvm_s390_import_bp_data()") made the code more robust, as kmalloc_array() ha > a builtin overflow check, and will return NULL if overflow is detected. > However, commit 0624a8eb82efd58e ("KVM: s390: Use memdup_user() rather than > duplicating code") dropped that safety net again. * How much are you concerned about the shown software evolution around multiplications for memory allocations? * Does there really a probability remain that an inappropriate product would be calculated here (as the situation was before my two update steps for this software module)? * Can it be that you are looking for a variant of a function like "memdup_user" where values can be passed as separate parameters "count" and "size" so that the needed multiplication and corresponding overflow check would be performed together as desired? Regards, Markus