From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752638AbcG3Dw2 (ORCPT ); Fri, 29 Jul 2016 23:52:28 -0400 Received: from szxga01-in.huawei.com ([58.251.152.64]:62959 "EHLO szxga01-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750799AbcG3DwW (ORCPT ); Fri, 29 Jul 2016 23:52:22 -0400 From: zhongjiang To: CC: , Subject: =?UTF-8?q?=5BPATCH=5D=20fs=3A=20fix=20a=20bug=20when=20new=5Finsert=5Fkey=20is=20not=20initialization?= Date: Sat, 30 Jul 2016 11:51:09 +0800 Message-ID: <1469850669-64815-1-git-send-email-zhongjiang@huawei.com> X-Mailer: git-send-email 1.7.12.4 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-Originating-IP: [10.175.102.37] X-CFilter-Loop: Reflected X-Mirapoint-Virus-RAPID-Raw: score=unknown(0), refid=str=0001.0A090203.579C246F.003E,ss=1,re=0.000,recu=0.000,reip=0.000,cl=1,cld=1,fgs=0, ip=0.0.0.0, so=2013-06-18 04:22:30, dmn=2013-03-21 17:37:32 X-Mirapoint-Loop-Id: eb4ee88efeb7a17d15fbacb4bc500781 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: zhong jiang when compile the kenrel code, I happens to the following warn. fs/reiserfs/ibalance.c:1156:2: warning: ‘new_insert_key’ may be used uninitialized in this function. memcpy(new_insert_key_addr, &new_insert_key, KEY_SIZE); The patch fix it by check the new_insert_ptr. if new_insert_ptr is not NULL, we ensure that new_insert_key is assigned. therefore, memcpy will saftly exec the operatetion. Signed-off-by: zhong jiang --- fs/reiserfs/ibalance.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/fs/reiserfs/ibalance.c b/fs/reiserfs/ibalance.c index b751eea..2c46829 100644 --- a/fs/reiserfs/ibalance.c +++ b/fs/reiserfs/ibalance.c @@ -1153,8 +1153,10 @@ int balance_internal(struct tree_balance *tb, insert_ptr); } - memcpy(new_insert_key_addr, &new_insert_key, KEY_SIZE); - insert_ptr[0] = new_insert_ptr; + if (new_insert_ptr) { + memcpy(new_insert_key_addr, &new_insert_key, KEY_SIZE); + insert_ptr[0] = new_insert_ptr; + } return order; } -- 1.8.3.1