Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes
* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes: kbuild: finally remove the obsolete variable $TOPDIR gitignore: ignore scripts/ihex2fw Kbuild: Disable the -Wformat-security gcc flag gitignore: ignore gcov output files kbuild: deb-pkg ship changelog Add new __init_task_data macro to be used in arch init_task.c files. asm-generic/vmlinux.lds.h: shuffle INIT_TASK* macro names in vmlinux.lds.h Add new macros for page-aligned data and bss sections. asm-generic/vmlinux.lds.h: Fix up RW_DATA_SECTION definition.
This commit is contained in:
commit
29f31773e0
|
@ -27,6 +27,7 @@
|
||||||
*.gz
|
*.gz
|
||||||
*.lzma
|
*.lzma
|
||||||
*.patch
|
*.patch
|
||||||
|
*.gcno
|
||||||
|
|
||||||
#
|
#
|
||||||
# Top-level generic files
|
# Top-level generic files
|
||||||
|
|
7
Makefile
7
Makefile
|
@ -140,15 +140,13 @@ _all: modules
|
||||||
endif
|
endif
|
||||||
|
|
||||||
srctree := $(if $(KBUILD_SRC),$(KBUILD_SRC),$(CURDIR))
|
srctree := $(if $(KBUILD_SRC),$(KBUILD_SRC),$(CURDIR))
|
||||||
TOPDIR := $(srctree)
|
|
||||||
# FIXME - TOPDIR is obsolete, use srctree/objtree
|
|
||||||
objtree := $(CURDIR)
|
objtree := $(CURDIR)
|
||||||
src := $(srctree)
|
src := $(srctree)
|
||||||
obj := $(objtree)
|
obj := $(objtree)
|
||||||
|
|
||||||
VPATH := $(srctree)$(if $(KBUILD_EXTMOD),:$(KBUILD_EXTMOD))
|
VPATH := $(srctree)$(if $(KBUILD_EXTMOD),:$(KBUILD_EXTMOD))
|
||||||
|
|
||||||
export srctree objtree VPATH TOPDIR
|
export srctree objtree VPATH
|
||||||
|
|
||||||
|
|
||||||
# SUBARCH tells the usermode build what the underlying arch is. That is set
|
# SUBARCH tells the usermode build what the underlying arch is. That is set
|
||||||
|
@ -344,7 +342,8 @@ KBUILD_CPPFLAGS := -D__KERNEL__
|
||||||
|
|
||||||
KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \
|
KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \
|
||||||
-fno-strict-aliasing -fno-common \
|
-fno-strict-aliasing -fno-common \
|
||||||
-Werror-implicit-function-declaration
|
-Werror-implicit-function-declaration \
|
||||||
|
-Wno-format-security
|
||||||
KBUILD_AFLAGS := -D__ASSEMBLY__
|
KBUILD_AFLAGS := -D__ASSEMBLY__
|
||||||
|
|
||||||
# Read KERNELRELEASE from include/config/kernel.release (if it exists)
|
# Read KERNELRELEASE from include/config/kernel.release (if it exists)
|
||||||
|
|
|
@ -61,7 +61,7 @@ SECTIONS
|
||||||
_edata = .; /* End of data section */
|
_edata = .; /* End of data section */
|
||||||
}
|
}
|
||||||
|
|
||||||
.data.init_task : { INIT_TASK(THREAD_SIZE); }
|
.data.init_task : { INIT_TASK_DATA(THREAD_SIZE); }
|
||||||
|
|
||||||
/* might get freed after init */
|
/* might get freed after init */
|
||||||
. = ALIGN(PAGE_SIZE);
|
. = ALIGN(PAGE_SIZE);
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
EXTRA_CFLAGS += -I$(TOPDIR)/drivers/net/cxgb3
|
EXTRA_CFLAGS += -I$(srctree)/drivers/net/cxgb3
|
||||||
|
|
||||||
cxgb3i-y := cxgb3i_init.o cxgb3i_iscsi.o cxgb3i_pdu.o cxgb3i_offload.o cxgb3i_ddp.o
|
cxgb3i-y := cxgb3i_init.o cxgb3i_iscsi.o cxgb3i_pdu.o cxgb3i_offload.o cxgb3i_ddp.o
|
||||||
obj-$(CONFIG_SCSI_CXGB3_ISCSI) += cxgb3i.o
|
obj-$(CONFIG_SCSI_CXGB3_ISCSI) += cxgb3i.o
|
||||||
|
|
|
@ -191,7 +191,7 @@
|
||||||
. = ALIGN(align); \
|
. = ALIGN(align); \
|
||||||
*(.data.cacheline_aligned)
|
*(.data.cacheline_aligned)
|
||||||
|
|
||||||
#define INIT_TASK(align) \
|
#define INIT_TASK_DATA(align) \
|
||||||
. = ALIGN(align); \
|
. = ALIGN(align); \
|
||||||
*(.data.init_task)
|
*(.data.init_task)
|
||||||
|
|
||||||
|
@ -434,10 +434,10 @@
|
||||||
/*
|
/*
|
||||||
* Init task
|
* Init task
|
||||||
*/
|
*/
|
||||||
#define INIT_TASK_DATA(align) \
|
#define INIT_TASK_DATA_SECTION(align) \
|
||||||
. = ALIGN(align); \
|
. = ALIGN(align); \
|
||||||
.data.init_task : { \
|
.data.init_task : { \
|
||||||
INIT_TASK \
|
INIT_TASK_DATA(align) \
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_CONSTRUCTORS
|
#ifdef CONFIG_CONSTRUCTORS
|
||||||
|
@ -705,15 +705,15 @@
|
||||||
* matches the requirment of PAGE_ALIGNED_DATA.
|
* matches the requirment of PAGE_ALIGNED_DATA.
|
||||||
*
|
*
|
||||||
* use 0 as page_align if page_aligned data is not used */
|
* use 0 as page_align if page_aligned data is not used */
|
||||||
#define RW_DATA_SECTION(cacheline, nosave, pagealigned, inittask) \
|
#define RW_DATA_SECTION(cacheline, pagealigned, inittask) \
|
||||||
. = ALIGN(PAGE_SIZE); \
|
. = ALIGN(PAGE_SIZE); \
|
||||||
.data : AT(ADDR(.data) - LOAD_OFFSET) { \
|
.data : AT(ADDR(.data) - LOAD_OFFSET) { \
|
||||||
INIT_TASK(inittask) \
|
INIT_TASK_DATA(inittask) \
|
||||||
CACHELINE_ALIGNED_DATA(cacheline) \
|
CACHELINE_ALIGNED_DATA(cacheline) \
|
||||||
READ_MOSTLY_DATA(cacheline) \
|
READ_MOSTLY_DATA(cacheline) \
|
||||||
DATA_DATA \
|
DATA_DATA \
|
||||||
CONSTRUCTORS \
|
CONSTRUCTORS \
|
||||||
NOSAVE_DATA(nosave) \
|
NOSAVE_DATA \
|
||||||
PAGE_ALIGNED_DATA(pagealigned) \
|
PAGE_ALIGNED_DATA(pagealigned) \
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -183,5 +183,8 @@ extern struct cred init_cred;
|
||||||
LIST_HEAD_INIT(cpu_timers[2]), \
|
LIST_HEAD_INIT(cpu_timers[2]), \
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Attach to the init_task data structure for proper alignment */
|
||||||
|
#define __init_task_data __attribute__((__section__(".data.init_task")))
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -21,6 +21,15 @@
|
||||||
#define __page_aligned_data __section(.data.page_aligned) __aligned(PAGE_SIZE)
|
#define __page_aligned_data __section(.data.page_aligned) __aligned(PAGE_SIZE)
|
||||||
#define __page_aligned_bss __section(.bss.page_aligned) __aligned(PAGE_SIZE)
|
#define __page_aligned_bss __section(.bss.page_aligned) __aligned(PAGE_SIZE)
|
||||||
|
|
||||||
|
/*
|
||||||
|
* For assembly routines.
|
||||||
|
*
|
||||||
|
* Note when using these that you must specify the appropriate
|
||||||
|
* alignment directives yourself
|
||||||
|
*/
|
||||||
|
#define __PAGE_ALIGNED_DATA .section ".data.page_aligned", "aw"
|
||||||
|
#define __PAGE_ALIGNED_BSS .section ".bss.page_aligned", "aw"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* This is used by architectures to keep arguments on the stack
|
* This is used by architectures to keep arguments on the stack
|
||||||
* untouched by the compiler by keeping them live until the end.
|
* untouched by the compiler by keeping them live until the end.
|
||||||
|
|
|
@ -7,3 +7,4 @@ pnmtologo
|
||||||
bin2c
|
bin2c
|
||||||
unifdef
|
unifdef
|
||||||
binoffset
|
binoffset
|
||||||
|
ihex2fw
|
||||||
|
|
|
@ -16,6 +16,8 @@ create_package() {
|
||||||
local pname="$1" pdir="$2"
|
local pname="$1" pdir="$2"
|
||||||
|
|
||||||
cp debian/copyright "$pdir/usr/share/doc/$pname/"
|
cp debian/copyright "$pdir/usr/share/doc/$pname/"
|
||||||
|
cp debian/changelog "$pdir/usr/share/doc/$pname/changelog.Debian"
|
||||||
|
gzip -9 "$pdir/usr/share/doc/$pname/changelog.Debian"
|
||||||
|
|
||||||
# Fix ownership and permissions
|
# Fix ownership and permissions
|
||||||
chown -R root:root "$pdir"
|
chown -R root:root "$pdir"
|
||||||
|
|
Reference in New Issue