From: Peng Haitao <penght@cn.fujitsu.com>
To: Jan Stancek <jstancek@redhat.com>
Cc: alexey.kodanev@oracle.com, ltp-list@lists.sourceforge.net
Subject: Re: [LTP] [PATCH] testcases/kernel/firmware: fix a bug of make install
Date: Tue, 16 Jul 2013 17:33:35 +0800 [thread overview]
Message-ID: <51E5136F.5080103@cn.fujitsu.com> (raw)
In-Reply-To: <1752195557.979708.1373966382515.JavaMail.root@redhat.com>
On 07/16/2013 05:19 PM, Jan Stancek wrote:
>
> how about this?
>
It is very simple:)
> diff --git a/testcases/kernel/firmware/Makefile b/testcases/kernel/firmware/Makefile
> index fbacf8d..dd2c62d 100644
> --- a/testcases/kernel/firmware/Makefile
> +++ b/testcases/kernel/firmware/Makefile
> @@ -38,7 +38,7 @@ endif
>
> ifeq ($(SKIP),0)
> SUBDIRS += fw_load_kernel
> -SUBDIRS += fw_load_user
> endif
> +SUBDIRS += fw_load_user
>
> We always build userspace part. The check for kernel version is
> already in setup(). We just need to make sure userspace bits compile everywhere.
> I tried 2.6.32 based kernel, it builds and runs:
> # ./fw_load_user/fw_load
> fw_load 1 TCONF : Test must be run with kernel 3.7 or newer
> fw_load 2 TCONF : Remaining cases not appropriate for configuration
>
Tested in RHEL5, the result is OK.
<<<test_output>>>
incrementing stop
fw_load 1 TCONF : Test must be run with kernel 3.7 or newer
fw_load 2 TCONF : Remaining cases not appropriate for configuration
<<<execution_status>>>
initiation_status="ok"
duration=0 termination_type=exited termination_id=0 corefile=no
cutime=0 cstime=0
<<<test_end>>>
Thanks.
--
Best Regards,
Peng
> Regards,
> Jan
>
>>
>> diff --git a/include/mk/config.mk.default b/include/mk/config.mk.default
>> index 953747c..ca203cb 100644
>> --- a/include/mk/config.mk.default
>> +++ b/include/mk/config.mk.default
>> @@ -78,5 +78,6 @@ LINUX_DIR :=
>> LINUX_VERSION_MAJOR :=
>> LINUX_VERSION_PATCH :=
>> WITH_MODULES := no
>> +LINUX_VERSION_AFTER := no
>>
>> export datarootdir includedir libdir mandir prefix
>> diff --git a/include/mk/config.mk.in b/include/mk/config.mk.in
>> index 96633f1..24052ff 100644
>> --- a/include/mk/config.mk.in
>> +++ b/include/mk/config.mk.in
>> @@ -80,6 +80,7 @@ LINUX_DIR := @LINUX_DIR@
>> LINUX_VERSION_MAJOR := @LINUX_VERSION_MAJOR@
>> LINUX_VERSION_PATCH := @LINUX_VERSION_PATCH@
>> WITH_MODULES := @WITH_MODULES@
>> +LINUX_VERSION_AFTER := @LINUX_VERSION_AFTER@
>>
>> ifeq ($(strip $(prefix)),)
>> $(error you are using $$(prefix) incorrectly -- set it to $(abs_top_srcdir)
>> if you want to build in the source tree)
>> diff --git a/m4/ltp-kernel_devel.m4 b/m4/ltp-kernel_devel.m4
>> index ba53bc1..febe603 100644
>> --- a/m4/ltp-kernel_devel.m4
>> +++ b/m4/ltp-kernel_devel.m4
>> @@ -25,6 +25,8 @@ dnl requires kernel-devel installed
>> dnl
>>
>> AC_DEFUN([LTP_CHECK_KERNEL_DEVEL],[dnl
>> +AH_TEMPLATE(LINUX_VERSION_AFTER,
>> +[Define to yes if kernel version is after 3.7.])
>>
>> AC_MSG_CHECKING([for kernel-devel])
>> AC_ARG_WITH(
>> @@ -73,4 +75,17 @@ AC_ARG_WITH(
>> [])
>>
>> AC_SUBST(WITH_MODULES)
>> +
>> +REQ_VERSION_MAJOR=3
>> +REQ_VERSION_PATCH=7
>> +if test "x$WITH_MODULES" = "xyes"; then
>> + if test ${LINUX_VERSION_MAJOR} -ge ${REQ_VERSION_MAJOR}; then
>> + if test ${LINUX_VERSION_PATCH} -ge ${REQ_VERSION_PATCH}; then
>> + LINUX_VERSION_AFTER="yes"
>> + AC_DEFINE(LINUX_VERSION_AFTER)
>> + fi
>> + fi
>> +fi
>> +
>> +AC_SUBST(LINUX_VERSION_AFTER)
>> ])
>> diff --git a/testcases/kernel/firmware/Makefile
>> b/testcases/kernel/firmware/Makefile
>> index fbacf8d..03069b8 100644
>> --- a/testcases/kernel/firmware/Makefile
>> +++ b/testcases/kernel/firmware/Makefile
>> @@ -18,27 +18,4 @@ top_srcdir ?= ../../..
>>
>> include $(top_srcdir)/include/mk/env_pre.mk
>>
>> -SUBDIRS =
>> -REQ_VERSION_MAJOR = 3
>> -REQ_VERSION_PATCH = 7
>> -
>> -ifeq ($(MAKECMDGOALS),clean)
>> -SKIP = 0
>> -endif
>> -
>> -ifeq ($(WITH_MODULES),yes)
>> -SKIP ?= $(shell test $(LINUX_VERSION_MAJOR) -gt $(REQ_VERSION_MAJOR); echo
>> $$?)
>> -ifeq ($(SKIP),1)
>> -SKIP = $(shell test $(LINUX_VERSION_MAJOR) -eq $(REQ_VERSION_MAJOR); echo
>> $$?)
>> -ifeq ($(SKIP),0)
>> -SKIP = $(shell test $(LINUX_VERSION_PATCH) -ge $(REQ_VERSION_PATCH); echo
>> $$?)
>> -endif
>> -endif
>> -endif
>> -
>> -ifeq ($(SKIP),0)
>> -SUBDIRS += fw_load_kernel
>> -SUBDIRS += fw_load_user
>> -endif
>> -
>> include $(top_srcdir)/include/mk/generic_trunk_target.mk
>> diff --git a/testcases/kernel/firmware/fw_load_kernel/Makefile
>> b/testcases/kernel/firmware/fw_load_kernel/Makefile
>> index 076d4ed..564501b 100644
>> --- a/testcases/kernel/firmware/fw_load_kernel/Makefile
>> +++ b/testcases/kernel/firmware/fw_load_kernel/Makefile
>> @@ -25,7 +25,11 @@ else
>> top_srcdir ?= ../../../..
>> include $(top_srcdir)/include/mk/env_pre.mk
>>
>> -MAKE_TARGETS := ltp_fw_load.ko
>> +ifeq ($(LINUX_VERSION_AFTER),yes)
>> + MAKE_TARGETS := ltp_fw_load.ko
>> +else
>> + MAKE_TARGETS :=
>> +endif
>>
>> # Ignoring the exit status of commands is done to be forward compatible with
>> # kernel internal API changes. The user-space test will return TCONF, if it
>> diff --git a/testcases/kernel/firmware/fw_load_user/fw_load.c
>> b/testcases/kernel/firmware/fw_load_user/fw_load.c
>> index 880531e..69b6d81 100644
>> --- a/testcases/kernel/firmware/fw_load_user/fw_load.c
>> +++ b/testcases/kernel/firmware/fw_load_user/fw_load.c
>> @@ -28,6 +28,7 @@
>> #include <unistd.h>
>> #include <string.h>
>>
>> +#include "config.h"
>> #include "test.h"
>> #include "usctest.h"
>> #include "safe_macros.h"
>> @@ -84,11 +85,16 @@ static void create_firmware(char *const fw_paths[]);
>>
>> int main(int argc, char *argv[])
>> {
>> +#ifdef LINUX_VERSION_AFTER
>> setup(argc, argv);
>>
>> test_run();
>>
>> cleanup();
>> +#else
>> + tst_resm(TCONF, "This device firmware loading is not supported");
>> + tst_resm(TCONF, "before kernel 3.7");
>> +#endif
>>
>> tst_exit();
>> }
>> --
>> 1.8.3.1
>>
>>
>> ------------------------------------------------------------------------------
>> See everything from the browser to the database with AppDynamics
>> Get end-to-end visibility with application monitoring from AppDynamics
>> Isolate bottlenecks and diagnose root cause in seconds.
>> Start your free trial of AppDynamics Pro today!
>> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
>> _______________________________________________
>> Ltp-list mailing list
>> Ltp-list@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/ltp-list
>>
>
------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list
next prev parent reply other threads:[~2013-07-16 9:34 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-16 8:31 [LTP] [PATCH] testcases/kernel/firmware: fix a bug of make install Peng Haitao
2013-07-16 9:19 ` Jan Stancek
2013-07-16 9:33 ` Peng Haitao [this message]
2013-07-16 9:55 ` alexey.kodanev
2013-07-16 11:12 ` Jan Stancek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=51E5136F.5080103@cn.fujitsu.com \
--to=penght@cn.fujitsu.com \
--cc=alexey.kodanev@oracle.com \
--cc=jstancek@redhat.com \
--cc=ltp-list@lists.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox