From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752179AbbCXIO2 (ORCPT ); Tue, 24 Mar 2015 04:14:28 -0400 Received: from aserp1040.oracle.com ([141.146.126.69]:32637 "EHLO aserp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751518AbbCXIOY (ORCPT ); Tue, 24 Mar 2015 04:14:24 -0400 Date: Tue, 24 Mar 2015 11:14:22 +0300 From: Dan Carpenter To: Greg Kroah-Hartman Cc: Sudip Mukherjee , devel@driverdev.osuosl.org, Benjamin Romer , David Kershner , linux-kernel@vger.kernel.org, sparmaintainer@unisys.com Subject: Re: [PATCH v2 2/4] staging: unisys: dev_t initialization Message-ID: <20150324081422.GO10964@mwanda> References: <1426181412-19112-1-git-send-email-sudipm.mukherjee@gmail.com> <1426181412-19112-2-git-send-email-sudipm.mukherjee@gmail.com> <20150316153613.GC12503@kroah.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150316153613.GC12503@kroah.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-Source-IP: aserv0022.oracle.com [141.146.126.234] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Mar 16, 2015 at 04:36:13PM +0100, Greg Kroah-Hartman wrote: > On Thu, Mar 12, 2015 at 11:00:10PM +0530, Sudip Mukherjee wrote: > > dev_t is defined to be of unsigned int type, no use initializing > > it to -1. > > > > Signed-off-by: Sudip Mukherjee > > --- > > v2: it was not in v1 > > > > drivers/staging/unisys/visorchipset/file.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/staging/unisys/visorchipset/file.c b/drivers/staging/unisys/visorchipset/file.c > > index 9ca7f1e..e9459af 100644 > > --- a/drivers/staging/unisys/visorchipset/file.c > > +++ b/drivers/staging/unisys/visorchipset/file.c > > @@ -30,7 +30,7 @@ > > > > static struct cdev file_cdev; > > static struct visorchannel **file_controlvm_channel; > > -static dev_t majordev = -1; /**< indicates major num for device */ > > +static dev_t majordev; /**< indicates major num for device */ > > I don't like this, please fix this up to handle the major number > properly, no need for this -1 mess. And you just broke the logic with > this change, which isn't allowed in any patch, sorry. The patch description is bad and the patch is not complete, but it doesn't introduce a bug. The -1 is never used. By the time we call visorchipset_file_cleanup() is called then majordev has been initialized to >= 0 so we can delete the (MAJOR(majordev) >= 0) check. We can also delete the "registered" variable because visorchipset_file_cleanup() is never called unless "registered" is true. "registered" is set on successful module_init() and visorchipset_file_cleanup() is only called from module_exit(). There is the problem that visorchipset_init() doesn't release any resources on error. But that's a separate issue and using globals like "registered" is an ugly thing so it doesn't help. regards, dan carpenter