From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2992600AbXDFA7J (ORCPT ); Thu, 5 Apr 2007 20:59:09 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S2992796AbXDFA7J (ORCPT ); Thu, 5 Apr 2007 20:59:09 -0400 Received: from smtp.osdl.org ([65.172.181.24]:59789 "EHLO smtp.osdl.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2992600AbXDFA7H (ORCPT ); Thu, 5 Apr 2007 20:59:07 -0400 Date: Thu, 5 Apr 2007 17:59:05 -0700 From: Andrew Morton To: Davide Libenzi Cc: Linux Kernel Mailing List Subject: Re: [patch 1/3] epoll cleanups - epoll include diet ... Message-Id: <20070405175905.733705cf.akpm@linux-foundation.org> In-Reply-To: References: X-Mailer: Sylpheed version 2.2.7 (GTK+ 2.8.6; i686-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 03 Apr 2007 18:35:06 -0700 Davide Libenzi wrote: > Remove some unneeded include files from epoll code. > Our definitions of "unneeded" might differ. > > Signed-off-by: Davide Libenzi > > > - Davide > > > > Index: linux-2.6.21-rc5.mm4/fs/eventpoll.c > =================================================================== > --- linux-2.6.21-rc5.mm4.orig/fs/eventpoll.c 2007-04-03 17:59:54.000000000 -0700 > +++ linux-2.6.21-rc5.mm4/fs/eventpoll.c 2007-04-03 18:33:30.000000000 -0700 > @@ -1,6 +1,6 @@ > /* > - * fs/eventpoll.c ( Efficent event polling implementation ) > - * Copyright (C) 2001,...,2006 Davide Libenzi > + * fs/eventpoll.c (Efficent event notification implementation) > + * Copyright (C) 2001,...,2007 Davide Libenzi > * > * This program is free software; you can redistribute it and/or modify > * it under the terms of the GNU General Public License as published by > @@ -17,30 +17,21 @@ > #include > #include > #include > -#include > #include > -#include > #include > #include > #include > #include > #include > #include > -#include > #include > #include > #include > #include > -#include > -#include > #include > #include > #include > -#include > -#include > -#include > #include > -#include epoll uses signal stuff and might need signal.h. It implements syscalls and it certainly needs to have those syscall's prototypes in scope. It surely uses stuff from mm.h (doesn't everything??) I am suspecting that this patch relies upon accidental nested inclusions from within other headers. But that is super-fragile: change a config item, switch to a different architecture and whoops, it doesn't compile any more. Maybe I'm wrong, and you somehow worked out that none of these things which these headers define, and none the things which these headers' includees define is used in epoll.c or in the headers which are included after these headers, or in those headers' includees. If so, how the heck did you do that?