From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dan Carpenter Subject: [patch] fs/file.c: silence a static checker warning Date: Tue, 21 Oct 2014 17:22:49 +0300 Message-ID: <20141021142249.GA29255@mwanda> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: linux-fsdevel@vger.kernel.org, kernel-janitors@vger.kernel.org To: Alexander Viro Return-path: Content-Disposition: inline Sender: kernel-janitors-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org This doesn't matter because all the callers verify "nr" before calling but really "nr" should be unsigned. Otherwise, if we could get a negative here then it would be able to go around our tests. 193 /* Do we need to expand? */ 194 if (nr < fdt->max_fds) ^^^^^^^^^^^^^^^^^ For this test "nr" is type promoted to a high positive so we continue. 195 return 0; 196 197 /* Can we expand? */ 198 if (nr >= sysctl_nr_open) ^^^^^^^^^^^^^^^^^^^^ For this test it's treated as a negative so it's less than the max. 199 return -EMFILE; 200 Signed-off-by: Dan Carpenter diff --git a/fs/file.c b/fs/file.c index ee738ea..029b19b 100644 --- a/fs/file.c +++ b/fs/file.c @@ -184,7 +184,7 @@ static int expand_fdtable(struct files_struct *files, int nr) * expanded and execution may have blocked. * The files->file_lock should be held on entry, and will be held on exit. */ -static int expand_files(struct files_struct *files, int nr) +static int expand_files(struct files_struct *files, unsigned int nr) { struct fdtable *fdt;