From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754347Ab1HVXsO (ORCPT ); Mon, 22 Aug 2011 19:48:14 -0400 Received: from mail-gy0-f174.google.com ([209.85.160.174]:34505 "EHLO mail-gy0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753814Ab1HVXsJ (ORCPT ); Mon, 22 Aug 2011 19:48:09 -0400 Message-ID: <4E52EAB3.4090201@gmail.com> Date: Tue, 23 Aug 2011 09:48:03 +1000 From: Ryan Mallon User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.18) Gecko/20110617 Lightning/1.0b2 Thunderbird/3.1.11 MIME-Version: 1.0 To: H Hartley Sweeten CC: "axel.lin@gmail.com" , "linux-kernel@vger.kernel.org" , Paul Mundt , "linux-fbdev@vger.kernel.org" , Paul Gortmaker Subject: Re: [PATCH] video: ep93xx-fb: add missing include of linux/module.h References: <1313937545.13671.5.camel@phoenix> <4E5197B8.8020608@gmail.com> <4E519AC7.3030001@gmail.com> <4E51A34C.6060207@gmail.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 23/08/11 02:40, H Hartley Sweeten wrote: > On Sunday, August 21, 2011 5:31 PM, Ryan Mallon wrote: >> On 22/08/11 10:06, Axel Lin wrote: >>> 2011/8/22 Ryan Mallon: >>>> On 22/08/11 09:41, Ryan Mallon wrote: >>>>> On 22/08/11 00:39, Axel Lin wrote: >>>>>> ep93xx-fb.c uses interfaces from linux/module.h, >>>>>> so it should include that file. This patch fixes below build errors. >>>>> What actually changed to make these files broken? Did some other header >>>>> previously include module.h for us? How many other drivers are broken? >>>>> >>>>> Anyway, the change is okay. >>>>> >>>>> Acked-by: Ryan Mallon >>>> Actually, having a second look at this it does not look right. >>>> >>>> drivers/video/ep93xx-fb.c includes linux/platform.h (as its first include), >>>> which includes linux/driver.h, which includes linux/module.h. >>>> >>>> Just tested on Linus' latest tree and both this driver and the ep93xx >>>> backlight driver build fine. What kernel version are you using? >>>> >>>> ~Ryan >>> hi Ryan, >>> >>> The patch is against linux-next tree. >>> I got build error for ep93xx-fb.c and ep93xx_bl.c on linux-next tree. >>> ( next-20110819 ) >> Ok, I see now. The change which caused the breakage is fdb697c: >> "include: replace linux/module.h with "struct module" wherever >> possible". How many other drivers got broken now that device.h does not >> include module.h? > Probably a lot... Which is one of the reasons linux-next exists.. . ;-) Does anybody know how we can quickly determine which drivers are broken short of doing an allyesconfig? I tried to do some quick tricks by passing files which contain THIS_MODULE/MODULE_* through cpp, but I get loads of errors in headers files because I'm missing some config includes. Is there an easy way to get the kbuild arguments for the current .config so I can pass them to cpp? > Actually, Paul Gortmaker caused this breakage with the commit. He should > take a deeper look and see what it broke. From his commit: > > Most of the implicit dependencies on module.h being present by > these headers pulling it in have been now weeded out, so we can > finally make this change with hopefully minimal breakage. Quick glance: ryanm@kiwi:linux-2.6$ grep -lR "^MODULE_" drivers/ | xargs grep -L "linux/module.h\|linux/moduleloader.h\|linux/miscdevice.h\|linux/regmap.h\|linux/irq.h" | wc -l 579 ryanm@kiwi:linux-2.6$ grep -lR "THIS_MODULE" drivers/ | xargs grep -L "linux/module.h\|linux/moduleloader.h\|linux/miscdevice.h\|linux/regmap.h\|linux/irq.h\|linux/export.h\|acpi/platform/aclinux.h\|xen/xenbus.h" | wc -l 399 Not sure how many of those are really broken though since there may be a few other ways to include module.h/export.h. I would also think there would be a lot more build failure reports if all of those were broken :-). ~Ryan