mirror of https://gitee.com/openkylin/linux.git
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
|
||||
*.lzma
|
||||
*.patch
|
||||
*.gcno
|
||||
|
||||
#
|
||||
# Top-level generic files
|
||||
|
|
7
Makefile
7
Makefile
|
@ -140,15 +140,13 @@ _all: modules
|
|||
endif
|
||||
|
||||
srctree := $(if $(KBUILD_SRC),$(KBUILD_SRC),$(CURDIR))
|
||||
TOPDIR := $(srctree)
|
||||
# FIXME - TOPDIR is obsolete, use srctree/objtree
|
||||
objtree := $(CURDIR)
|
||||
src := $(srctree)
|
||||
obj := $(objtree)
|
||||
|
||||
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
|
||||
|
@ -344,7 +342,8 @@ KBUILD_CPPFLAGS := -D__KERNEL__
|
|||
|
||||
KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \
|
||||
-fno-strict-aliasing -fno-common \
|
||||
-Werror-implicit-function-declaration
|
||||
-Werror-implicit-function-declaration \
|
||||
-Wno-format-security
|
||||
KBUILD_AFLAGS := -D__ASSEMBLY__
|
||||
|
||||
# Read KERNELRELEASE from include/config/kernel.release (if it exists)
|
||||
|
|
|
@ -61,7 +61,7 @@ SECTIONS
|
|||
_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 */
|
||||
. = 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
|
||||
obj-$(CONFIG_SCSI_CXGB3_ISCSI) += cxgb3i.o
|
||||
|
|
|
@ -191,7 +191,7 @@
|
|||
. = ALIGN(align); \
|
||||
*(.data.cacheline_aligned)
|
||||
|
||||
#define INIT_TASK(align) \
|
||||
#define INIT_TASK_DATA(align) \
|
||||
. = ALIGN(align); \
|
||||
*(.data.init_task)
|
||||
|
||||
|
@ -434,10 +434,10 @@
|
|||
/*
|
||||
* Init task
|
||||
*/
|
||||
#define INIT_TASK_DATA(align) \
|
||||
#define INIT_TASK_DATA_SECTION(align) \
|
||||
. = ALIGN(align); \
|
||||
.data.init_task : { \
|
||||
INIT_TASK \
|
||||
INIT_TASK_DATA(align) \
|
||||
}
|
||||
|
||||
#ifdef CONFIG_CONSTRUCTORS
|
||||
|
@ -705,15 +705,15 @@
|
|||
* matches the requirment of PAGE_ALIGNED_DATA.
|
||||
*
|
||||
* 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); \
|
||||
.data : AT(ADDR(.data) - LOAD_OFFSET) { \
|
||||
INIT_TASK(inittask) \
|
||||
INIT_TASK_DATA(inittask) \
|
||||
CACHELINE_ALIGNED_DATA(cacheline) \
|
||||
READ_MOSTLY_DATA(cacheline) \
|
||||
DATA_DATA \
|
||||
CONSTRUCTORS \
|
||||
NOSAVE_DATA(nosave) \
|
||||
NOSAVE_DATA \
|
||||
PAGE_ALIGNED_DATA(pagealigned) \
|
||||
}
|
||||
|
||||
|
|
|
@ -183,5 +183,8 @@ extern struct cred init_cred;
|
|||
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
|
||||
|
|
|
@ -21,6 +21,15 @@
|
|||
#define __page_aligned_data __section(.data.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
|
||||
* untouched by the compiler by keeping them live until the end.
|
||||
|
|
|
@ -7,3 +7,4 @@ pnmtologo
|
|||
bin2c
|
||||
unifdef
|
||||
binoffset
|
||||
ihex2fw
|
||||
|
|
|
@ -16,6 +16,8 @@ create_package() {
|
|||
local pname="$1" pdir="$2"
|
||||
|
||||
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
|
||||
chown -R root:root "$pdir"
|
||||
|
|
Loading…
Reference in New Issue