* metag test failure in -next due to commit 'module: relocate module_init from init.h to module.h'
@ 2015-06-05 20:40 Guenter Roeck
2015-06-05 21:39 ` James Hogan
0 siblings, 1 reply; 4+ messages in thread
From: Guenter Roeck @ 2015-06-05 20:40 UTC (permalink / raw)
To: Paul Gortmaker; +Cc: linux-kernel, James Hogan, linux-metag
Hi,
My qemu metag runtime test fails in -next due to commit 5ebbb3badaa8 ("module:
relocate module_init from init.h to module.h"). Bisect log is as follows.
A log of a failed test is available at
http://server.roeck-us.net:8010/builders/qemu-metag-next/builds/173/steps/qemubuildcommand/logs/stdio
Essentially the test just hangs in boot.
Reverting the commit fixes the problem.
Guenter
---
# bad: [94feb25d6fcd34b0d45c18cf0185d83d0c13c60a] Add linux-next specific files for 20150604
# good: [c65b99f046843d2455aa231747b5a07a999a9f3d] Linux 4.1-rc6
git bisect start 'HEAD' 'v4.1-rc6'
# good: [46cb2717b4b827977bccd276096791d0efdb4119] Merge remote-tracking branch 'drm/drm-next'
git bisect good 46cb2717b4b827977bccd276096791d0efdb4119
# good: [37104644ae9384d6fc6574f16dc9782259ab89b1] Merge remote-tracking branch 'kvms390/next'
git bisect good 37104644ae9384d6fc6574f16dc9782259ab89b1
# good: [311942c925377a65157e4b14778a22bb05808314] Merge remote-tracking branch 'staging/staging-next'
git bisect good 311942c925377a65157e4b14778a22bb05808314
# good: [4b40a87efb321750a527aea556337f24b5268783] Merge remote-tracking branch 'clk/clk-next'
git bisect good 4b40a87efb321750a527aea556337f24b5268783
# good: [0cd6ba7205ab368b324d5a5f601aa3f5f89c246f] MAINTAINERS: update sound soc intel patterns
git bisect good 0cd6ba7205ab368b324d5a5f601aa3f5f89c246f
# good: [076edbd2f016f2fb4a80b95625cd65a9aed4e06c] Merge remote-tracking branch 'rtc/rtc-next'
git bisect good 076edbd2f016f2fb4a80b95625cd65a9aed4e06c
# good: [8c169d94c31fced71d907e26b19b4f5f0bd9d7bf] scsi-resolve-sg-buffer-const-ness-issue-fix
git bisect good 8c169d94c31fced71d907e26b19b4f5f0bd9d7bf
# good: [baaf163cd06a517d85dc39a6fa00107e3620b779] Merge branch 'module_init-device_initcall-4.1-rc6' into init-v4.1-rc6
git bisect good baaf163cd06a517d85dc39a6fa00107e3620b779
# good: [8f0b9591c464a9fd783b481b2c9cddf008043ba4] Merge branch 'module-builtin_driver-4.1-rc6' into init-v4.1-rc6
git bisect good 8f0b9591c464a9fd783b481b2c9cddf008043ba4
# bad: [fc3af372b8c176c08e8921d772ca2bff5620f15b] kernel/relay.c: use kvfree() in relay_free_page_array()
git bisect bad fc3af372b8c176c08e8921d772ca2bff5620f15b
# bad: [cdcdbb925bb730624d1312620263c0cf3666da5c] Merge remote-tracking branch 'init/init-v4.1-rc6'
git bisect bad cdcdbb925bb730624d1312620263c0cf3666da5c
# good: [3a283d1794f58a054f247152fb4aa15088aad561] mips: make loongsoon serial driver explicitly modular
git bisect good 3a283d1794f58a054f247152fb4aa15088aad561
# bad: [3491bfd125cd3d2b7654e2244fb1c262c7212049] Merge branch 'module-misc-4.1-rc6' into init-v4.1-rc6
git bisect bad 3491bfd125cd3d2b7654e2244fb1c262c7212049
# bad: [5ebbb3badaa8ffc50558af88cdea27497953356a] module: relocate module_init from init.h to module.h
git bisect bad 5ebbb3badaa8ffc50558af88cdea27497953356a
# first bad commit: [5ebbb3badaa8ffc50558af88cdea27497953356a] module: relocate module_init from init.h to module.h
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: metag test failure in -next due to commit 'module: relocate module_init from init.h to module.h'
2015-06-05 20:40 metag test failure in -next due to commit 'module: relocate module_init from init.h to module.h' Guenter Roeck
@ 2015-06-05 21:39 ` James Hogan
2015-06-06 0:39 ` Guenter Roeck
0 siblings, 1 reply; 4+ messages in thread
From: James Hogan @ 2015-06-05 21:39 UTC (permalink / raw)
To: Guenter Roeck, Paul Gortmaker
Cc: linux-kernel, linux-metag, Greg Kroah-Hartman, Jiri Slaby
[-- Attachment #1: Type: text/plain, Size: 3814 bytes --]
On Fri, Jun 05, 2015 at 01:40:55PM -0700, Guenter Roeck wrote:
> My qemu metag runtime test fails in -next due to commit 5ebbb3badaa8 ("module:
> relocate module_init from init.h to module.h"). Bisect log is as follows.
> A log of a failed test is available at
> http://server.roeck-us.net:8010/builders/qemu-metag-next/builds/173/steps/qemubuildcommand/logs/stdio
>
> Essentially the test just hangs in boot.
>
> Reverting the commit fixes the problem.
Thanks for finding and bisecting Guenter!
Some build warnings from the same commit caught my eye, which made it a
quick one to figure out. Paul, please consider applying the patch below
before the offending commit "module: relocate module_init from init.h to
module.h", so as not to break bisection.
Cheers
James
From e12856c559d7dff2ad4f6497996610e12e7c7e2d Mon Sep 17 00:00:00 2001
From: James Hogan <james.hogan@imgtec.com>
Date: Fri, 5 Jun 2015 22:17:18 +0100
Subject: [PATCH] tty/metag_da: Avoid module_init/module_exit
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
The metag_da TTY driver can't get built as a module at the moment, but
it still uses module_init() and module_exit(). Those macros are moving
to module.h which isn't included by metag_da.c, which will result in the
following build warnings (remarkably no build errors) and an apparent
failure to boot as the TTY driver won't be loaded.
drivers/tty/metag_da.c:660: warning: data definition has no type or storage class
drivers/tty/metag_da.c:660: warning: type defaults to ‘int’ in declaration of ‘module_init’
drivers/tty/metag_da.c:660: warning: parameter names (without types) in function declaration
drivers/tty/metag_da.c:661: warning: data definition has no type or storage class
drivers/tty/metag_da.c:661: warning: type defaults to ‘int’ in declaration of ‘module_exit’
drivers/tty/metag_da.c:661: warning: parameter names (without types) in function declaration
drivers/tty/metag_da.c:572: warning: ‘dashtty_init’ defined but not used
drivers/tty/metag_da.c:645: warning: ‘dashtty_exit’ defined but not used
drivers/tty/metag_da.c In function ‘dash_console_write’:
drivers/tty/metag_da.c:670 : warning: passing argument 4 of ‘chancall’ discards qualifiers from pointer target type
Instead of just adding the module.h include, now would be a good time to
remove the use of these macros, replacing the module_init with
device_initcall, and removing the exit function altogether since it
isn't needed. If module support is added later the code can always be
resurrected.
Reported-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Jiri Slaby <jslaby@suse.cz>
Cc: Paul Gortmaker <paul.gortmaker@windriver.com>
Cc: linux-metag@vger.kernel.org
---
drivers/tty/metag_da.c | 20 +-------------------
1 file changed, 1 insertion(+), 19 deletions(-)
diff --git a/drivers/tty/metag_da.c b/drivers/tty/metag_da.c
index 3774600741d8..9325262289f9 100644
--- a/drivers/tty/metag_da.c
+++ b/drivers/tty/metag_da.c
@@ -640,25 +640,7 @@ err_destroy_ports:
put_tty_driver(channel_driver);
return ret;
}
-
-static void dashtty_exit(void)
-{
- int nport;
- struct dashtty_port *dport;
-
- del_timer_sync(&put_timer);
- kthread_stop(dashtty_thread);
- del_timer_sync(&poll_timer);
- tty_unregister_driver(channel_driver);
- for (nport = 0; nport < NUM_TTY_CHANNELS; nport++) {
- dport = &dashtty_ports[nport];
- tty_port_destroy(&dport->port);
- }
- put_tty_driver(channel_driver);
-}
-
-module_init(dashtty_init);
-module_exit(dashtty_exit);
+device_initcall(dashtty_init);
#ifdef CONFIG_DA_CONSOLE
--
2.3.6
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: metag test failure in -next due to commit 'module: relocate module_init from init.h to module.h'
2015-06-05 21:39 ` James Hogan
@ 2015-06-06 0:39 ` Guenter Roeck
2015-06-07 22:17 ` Paul Gortmaker
0 siblings, 1 reply; 4+ messages in thread
From: Guenter Roeck @ 2015-06-06 0:39 UTC (permalink / raw)
To: James Hogan, Paul Gortmaker
Cc: linux-kernel, linux-metag, Greg Kroah-Hartman, Jiri Slaby
On 06/05/2015 02:39 PM, James Hogan wrote:
[ ... ]
>
> From e12856c559d7dff2ad4f6497996610e12e7c7e2d Mon Sep 17 00:00:00 2001
> From: James Hogan <james.hogan@imgtec.com>
> Date: Fri, 5 Jun 2015 22:17:18 +0100
> Subject: [PATCH] tty/metag_da: Avoid module_init/module_exit
> MIME-Version: 1.0
> Content-Type: text/plain; charset=UTF-8
> Content-Transfer-Encoding: 8bit
>
> The metag_da TTY driver can't get built as a module at the moment, but
> it still uses module_init() and module_exit(). Those macros are moving
> to module.h which isn't included by metag_da.c, which will result in the
> following build warnings (remarkably no build errors) and an apparent
> failure to boot as the TTY driver won't be loaded.
>
> drivers/tty/metag_da.c:660: warning: data definition has no type or storage class
> drivers/tty/metag_da.c:660: warning: type defaults to ‘int’ in declaration of ‘module_init’
> drivers/tty/metag_da.c:660: warning: parameter names (without types) in function declaration
> drivers/tty/metag_da.c:661: warning: data definition has no type or storage class
> drivers/tty/metag_da.c:661: warning: type defaults to ‘int’ in declaration of ‘module_exit’
> drivers/tty/metag_da.c:661: warning: parameter names (without types) in function declaration
> drivers/tty/metag_da.c:572: warning: ‘dashtty_init’ defined but not used
> drivers/tty/metag_da.c:645: warning: ‘dashtty_exit’ defined but not used
> drivers/tty/metag_da.c In function ‘dash_console_write’:
> drivers/tty/metag_da.c:670 : warning: passing argument 4 of ‘chancall’ discards qualifiers from pointer target type
>
> Instead of just adding the module.h include, now would be a good time to
> remove the use of these macros, replacing the module_init with
> device_initcall, and removing the exit function altogether since it
> isn't needed. If module support is added later the code can always be
> resurrected.
>
> Reported-by: Guenter Roeck <linux@roeck-us.net>
> Signed-off-by: James Hogan <james.hogan@imgtec.com>
> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Cc: Jiri Slaby <jslaby@suse.cz>
> Cc: Paul Gortmaker <paul.gortmaker@windriver.com>
> Cc: linux-metag@vger.kernel.org
Yes, that does the trick.
Tested-by: Guenter Roeck <linux@roeck-us.net>
Thanks,
Guenter
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: metag test failure in -next due to commit 'module: relocate module_init from init.h to module.h'
2015-06-06 0:39 ` Guenter Roeck
@ 2015-06-07 22:17 ` Paul Gortmaker
0 siblings, 0 replies; 4+ messages in thread
From: Paul Gortmaker @ 2015-06-07 22:17 UTC (permalink / raw)
To: Guenter Roeck
Cc: James Hogan, linux-kernel, linux-metag, Greg Kroah-Hartman,
Jiri Slaby
[Re: metag test failure in -next due to commit 'module: relocate module_init from init.h to module.h'] On 05/06/2015 (Fri 17:39) Guenter Roeck wrote:
> On 06/05/2015 02:39 PM, James Hogan wrote:
> [ ... ]
> >
> > From e12856c559d7dff2ad4f6497996610e12e7c7e2d Mon Sep 17 00:00:00 2001
> >From: James Hogan <james.hogan@imgtec.com>
> >Date: Fri, 5 Jun 2015 22:17:18 +0100
> >Subject: [PATCH] tty/metag_da: Avoid module_init/module_exit
> >MIME-Version: 1.0
> >Content-Type: text/plain; charset=UTF-8
> >Content-Transfer-Encoding: 8bit
> >
> >The metag_da TTY driver can't get built as a module at the moment, but
> >it still uses module_init() and module_exit(). Those macros are moving
> >to module.h which isn't included by metag_da.c, which will result in the
> >following build warnings (remarkably no build errors) and an apparent
> >failure to boot as the TTY driver won't be loaded.
> >
> >drivers/tty/metag_da.c:660: warning: data definition has no type or storage class
> >drivers/tty/metag_da.c:660: warning: type defaults to ‘int’ in declaration of ‘module_init’
> >drivers/tty/metag_da.c:660: warning: parameter names (without types) in function declaration
> >drivers/tty/metag_da.c:661: warning: data definition has no type or storage class
> >drivers/tty/metag_da.c:661: warning: type defaults to ‘int’ in declaration of ‘module_exit’
> >drivers/tty/metag_da.c:661: warning: parameter names (without types) in function declaration
> >drivers/tty/metag_da.c:572: warning: ‘dashtty_init’ defined but not used
> >drivers/tty/metag_da.c:645: warning: ‘dashtty_exit’ defined but not used
> >drivers/tty/metag_da.c In function ‘dash_console_write’:
> >drivers/tty/metag_da.c:670 : warning: passing argument 4 of ‘chancall’ discards qualifiers from pointer target type
> >
> >Instead of just adding the module.h include, now would be a good time to
> >remove the use of these macros, replacing the module_init with
> >device_initcall, and removing the exit function altogether since it
> >isn't needed. If module support is added later the code can always be
> >resurrected.
> >
> >Reported-by: Guenter Roeck <linux@roeck-us.net>
> >Signed-off-by: James Hogan <james.hogan@imgtec.com>
> >Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> >Cc: Jiri Slaby <jslaby@suse.cz>
> >Cc: Paul Gortmaker <paul.gortmaker@windriver.com>
> >Cc: linux-metag@vger.kernel.org
>
> Yes, that does the trick.
>
> Tested-by: Guenter Roeck <linux@roeck-us.net>
Thanks guys, I'll add that to the module_init-device_initcall conversion
branch, which will put it ahead of the code relocation commit.
I think most other arch run with -Werror-implicit (or whatever it is) so
that these kinds of things would not "leak" past into a silent boot
fail like this.
Paul.
--
>
> Thanks,
> Guenter
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-06-07 22:17 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-05 20:40 metag test failure in -next due to commit 'module: relocate module_init from init.h to module.h' Guenter Roeck
2015-06-05 21:39 ` James Hogan
2015-06-06 0:39 ` Guenter Roeck
2015-06-07 22:17 ` Paul Gortmaker
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox