Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751211AbbEZAFq (ORCPT ); Mon, 25 May 2015 20:05:46 -0400 Received: from mail-qk0-f169.google.com ([209.85.220.169]:33306 "EHLO mail-qk0-f169.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750894AbbEZAFm (ORCPT ); Mon, 25 May 2015 20:05:42 -0400 Date: Mon, 25 May 2015 20:05:38 -0400 From: Tejun Heo To: Nicholas Mc Guire Cc: Nicholas Mc Guire , Li Zefan , cgroups@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] cgroup: add explicit cast and comment for return type conversion Message-ID: <20150526000538.GH7099@htj.duckdns.org> References: <1432472872-3578-1-git-send-email-hofrat@osadl.org> <20150524203528.GB7099@htj.duckdns.org> <20150525055742.GE1397@opentech.at> <20150525114045.GA526@htj.duckdns.org> <20150525115047.GA7413@opentech.at> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150525115047.GA7413@opentech.at> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1611 Lines: 34 Hello, Nicholas. On Mon, May 25, 2015 at 01:50:47PM +0200, Nicholas Mc Guire wrote: > that would be no benefit of course - the goal is not to simply put casts > in but to use casts as last resort if type cleanups are not doable or if > the type missmatch is intended - the cast then should document that it > is intentional and comments explain why it is justified. If that were the > result of type cleanup I think it would benefit the kernel code as I > suspect that quite a few of the type missmatches simply happened. I'm having a bit of hard time agreeing with the utility of this. If you can fix up the variable type to go away, sure, but adding unnecessary explicit cast and comment for something this trivial? I'm not sure. I mean, C is not a language which can propagate param constraints to the return types. e.g. strnlen() will happily return size_t even when the maximum length is e.g. int. We simply aren't writing in a language where these things are easily distinguished and I'm not sure shoehorning explicit constraints all over the source code brings enough benefit to justify the added noise. If you can identify actual problem cases, awesome. If some can easily be removed by tweaking types to match the actual usage, great too, but let's please not do this explicit version of implicit casts and pointless comments. Thanks. -- tejun -- 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/