earlycon: Fix __earlycon_table stride

The compiler and the linker must agree on the alignment of
struct earlycon_id; empirical testing and commit 07fca0e57f
("tracing: Properly align linker defined symbols") suggests
32-byte alignment is the LCD.

Reported-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Peter Hurley <peter@hurleysoftware.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Peter Hurley 2015-04-03 08:57:51 -04:00 committed by Greg Kroah-Hartman
parent b3e3bf2ef2
commit 99492c39f3
2 changed files with 2 additions and 2 deletions

View File

@ -151,7 +151,7 @@
#endif #endif
#ifdef CONFIG_SERIAL_EARLYCON #ifdef CONFIG_SERIAL_EARLYCON
#define EARLYCON_TABLE() . = ALIGN(8); \ #define EARLYCON_TABLE() STRUCT_ALIGN(); \
VMLINUX_SYMBOL(__earlycon_table) = .; \ VMLINUX_SYMBOL(__earlycon_table) = .; \
*(__earlycon_table) \ *(__earlycon_table) \
*(__earlycon_table_end) *(__earlycon_table_end)

View File

@ -342,7 +342,7 @@ struct earlycon_device {
struct earlycon_id { struct earlycon_id {
char name[16]; char name[16];
int (*setup)(struct earlycon_device *, const char *options); int (*setup)(struct earlycon_device *, const char *options);
}; } __aligned(32);
extern int setup_earlycon(char *buf); extern int setup_earlycon(char *buf);
extern int of_setup_earlycon(unsigned long addr, extern int of_setup_earlycon(unsigned long addr,