Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751274AbbEXORN (ORCPT ); Sun, 24 May 2015 10:17:13 -0400 Received: from www.osadl.org ([62.245.132.105]:51521 "EHLO www.osadl.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751062AbbEXORL (ORCPT ); Sun, 24 May 2015 10:17:11 -0400 From: Nicholas Mc Guire To: Tejun Heo Cc: Li Zefan , cgroups@vger.kernel.org, linux-kernel@vger.kernel.org, Nicholas Mc Guire Subject: [PATCH] cgroup: add explicit cast and comment for return type conversion Date: Sun, 24 May 2015 15:07:52 +0200 Message-Id: <1432472872-3578-1-git-send-email-hofrat@osadl.org> X-Mailer: git-send-email 1.7.10.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1719 Lines: 48 Type-checking coccinelle spatches are being used to locate type mismatches between function signatures and return values in this case this produced: ./kernel/cgroup.c:2525 WARNING: return of wrong type ssize_t != size_t, Returning unsigned types converted to a signed type can be problematic but in this case the size_t is <= PATH_MAX which is less than ulong/2 so the conversion is safe - to make static code checking happy this is resolved by an explicit cast and appropriate comment. Patch was compile tested with x86_64_defconfig (implies CONFIG_CGROUPS=y) Patch is against 4.1-rc4 (localversion-next is -next-20150522) Signed-off-by: Nicholas Mc Guire --- Not sure if "cleanups" like this are acceptable - in this case I did not find any better way to make static code checkers happy though. kernel/cgroup.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/kernel/cgroup.c b/kernel/cgroup.c index b91177f..04de621 100644 --- a/kernel/cgroup.c +++ b/kernel/cgroup.c @@ -2523,7 +2523,11 @@ static ssize_t cgroup_release_agent_write(struct kernfs_open_file *of, sizeof(cgrp->root->release_agent_path)); spin_unlock(&release_agent_path_lock); cgroup_kn_unlock(of->kn); - return nbytes; + + /* the path of the release notifier is <= PATH_MAX + * so "downsizing" to signed long is safe here + */ + return (ssize_t)nbytes; } static int cgroup_release_agent_show(struct seq_file *seq, void *v) -- 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/