From 4d9829dea12c504d6c0c53efed5830d6f75b3f27 Mon Sep 17 00:00:00 2001 From: "Luis R. Rodriguez" Date: Mon, 17 May 2010 14:18:39 -0700 Subject: [PATCH] Add the COMPAT_BASE_TREE and COMPAT_BASE_TREE_VERSION These are to be used by projects using this tree for their own backport projects. Signed-off-by: Luis R. Rodriguez --- Makefile | 9 +++++++++ compat/main.c | 26 ++++++++++++++++++++++++-- 2 files changed, 33 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 0f583bb..838bf82 100644 --- a/Makefile +++ b/Makefile @@ -10,6 +10,13 @@ export KLIB_BUILD ?= $(KLIB)/build export PWD := $(shell pwd) ifeq ($(KERNELRELEASE),) +export COMPAT_BASE_TREE := "linux-next.git" +# For this specific tree this is only relevant in +# terms of the last time we synched code up with upstream +# for internal stuff. For other compatability projects this +# would be the git describe of the base tree you are +# working with. +export COMPAT_BASE_TREE_VERSION := "next-20100517" export COMPAT_VERSION := $(shell git describe) endif @@ -36,6 +43,8 @@ obj-y += compat/ NOSTDINC_FLAGS := -I$(M)/include/ \ -include $(M)/include/linux/compat-2.6.h \ $(CFLAGS) \ + -DCOMPAT_BASE_TREE=\"$(COMPAT_BASE_TREE)\" \ + -DCOMPAT_BASE_TREE_VERSION=\"$(COMPAT_BASE_TREE_VERSION)\" \ -DCOMPAT_VERSION=\"$(COMPAT_VERSION)\" modules: diff --git a/compat/main.c b/compat/main.c index 1a4ad6d..ef18516 100644 --- a/compat/main.c +++ b/compat/main.c @@ -4,23 +4,45 @@ MODULE_AUTHOR("Luis R. Rodriguez"); MODULE_DESCRIPTION("Kernel compatibility module"); MODULE_LICENSE("GPL"); +#ifndef COMPAT_BASE_TREE +#error "You need a COMPAT_BASE_TREE" +#endif + +#ifndef COMPAT_BASE_TREE_VERSION +#error "You need a COMPAT_BASE_TREE_VERSION" +#endif + #ifndef COMPAT_VERSION #error "You need a COMPAT_VERSION" #endif +static char *compat_base_tree = COMPAT_BASE_TREE; +static char *compat_base_tree_version = COMPAT_BASE_TREE_VERSION; static char *compat_version = COMPAT_VERSION; +module_param(compat_base_tree, charp, 0400); +MODULE_PARM_DESC(compat_base_tree, + "The upstream tree used as base for this backport"); + +module_param(compat_base_tree_version, charp, 0400); +MODULE_PARM_DESC(compat_base_tree_version, + "The git-describe of the upstream base tree"); + module_param(compat_version, charp, 0400); -MODULE_PARM_DESC(compat_version, "Version of the kernel compat backport"); +MODULE_PARM_DESC(compat_version, + "Version of the kernel compat backport work"); static int __init compat_init(void) { /* pm-qos for kernels <= 2.6.24, this is a no-op on newer kernels */ compat_pm_qos_power_init(); - printk(KERN_INFO "Generic kernel compatibility enabled based on " + printk(KERN_INFO "Kernel backport release: " COMPAT_VERSION "\n"); + printk(KERN_INFO "Backport based on " + COMPAT_BASE_TREE " " COMPAT_BASE_TREE_VERSION + "\n"); return 0; } -- 2.41.0