mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Shuah Khan <shuahkh@osg.samsung.com>
To: Michael Ellerman <mpe@ellerman.id.au>, bamvor.zhangjian@huawei.com
Cc: linuxppc-dev@ozlabs.org, linux-kernel@vger.kernel.org,
	linux-kselftest@vger.kernel.org, linux-api@vger.kernel.org,
	Ingo Molnar <mingo@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	hpa@zytor.com, Shuah Khan <shuahkh@osg.samsung.com>
Subject: Re: [PATCH 1/5] selftests: Fix selftests build to just build, not run tests
Date: Thu, 2 Mar 2017 07:41:34 -0700	[thread overview]
Message-ID: <f17b4da1-7590-4f28-922f-0b8722d03034@osg.samsung.com> (raw)
In-Reply-To: <874lzckwl4.fsf@concordia.ellerman.id.au>

Hi Michael and Bamovar,

On 03/01/2017 11:43 PM, Michael Ellerman wrote:
> Shuah Khan <shuahkh@osg.samsung.com> writes:
>> Hi Bamovar,
>>
>> Your original series badly broke the selftest build. I can no longer
>> build individual tests. For example:
>>
>> cd breakpoints/
>> shuah@shuah-XPS-13-9350:/lkml/linux_4.11/tools/testing/selftests/breakpoints$ make
>> gcc     breakpoint_test.c  -o /breakpoint_test
>> /usr/bin/ld: cannot open output file /breakpoint_test: Permission denied
>> collect2: error: ld returned 1 exit status
>> ../lib.mk:54: recipe for target '/breakpoint_test' failed
>> make: *** [/breakpoint_test] Error 1
> 
> I also got a report of that just yesterday.
> 
> You can do:
> 
> $ cd tools/testing/selftests ; make TARGETS=breakpoints
> 
> But it's not ideal.
> 
>> commit a8ba798bc8ec663cf02e80b0dd770324de9bafd9
>> Author: bamvor.zhangjian@huawei.com <bamvor.zhangjian@huawei.com>
>> Date:   Tue Nov 29 19:55:52 2016 +0800
>>
>>     selftests: enable O and KBUILD_OUTPUT
>>
>> I believe the above patch is one of the suspects. Michael fixed
>> some of the problems in this patch and others he sent.
> 
> It is that patch which caused it yes.
> 
>> At the moment individual tests will not build.
>> tools/testing/selftests/x86$ make
>> Makefile:44: warning: overriding recipe for target 'clean'
>> ../lib.mk:51: warning: ignoring old recipe for target 'clean'
>> gcc -m64 -o /single_step_syscall_64 -O2 -g -std=gnu99 -pthread -Wall  single_step_syscall.c -lrt -ldl
>> /usr/bin/ld: cannot open output file /single_step_syscall_64: Permission denied
>> collect2: error: ld returned 1 exit status
>> Makefile:50: recipe for target '/single_step_syscall_64' failed
>> make: *** [/single_step_syscall_64] Error 1
>>
>>
>> My guess is OUTPUT doesn't resolve in individual builds from the test directory.
>> We have to get this fixed for 4.11-rc1
> 
> Yeah, OUTPUT is passed down from the top-level Makefile.
> 
>> Simply Reverting a8ba798bc8ec663cf02e80b0dd770324de9bafd9 doesn't work.
>> Michael's patches depend on this. So anyway, please let me know if you
>> can fix this quickly. I am going to be trying a few things today as well.
> 
> This seems to work, but needs some testing with and without OUTPUT set.
> 
> Basically if OUTPUT is not set, assume the current directory. It should
> only take effect when someone builds from an individual directory,
> because if you build from the top level OUTPUT is already set.
> 
> 
> diff --git a/tools/testing/selftests/lib.mk b/tools/testing/selftests/lib.mk
> index ce96d80ad64f..9087fa949e82 100644
> --- a/tools/testing/selftests/lib.mk
> +++ b/tools/testing/selftests/lib.mk
> @@ -2,6 +2,8 @@
>  # Makefile can operate with or without the kbuild infrastructure.
>  CC := $(CROSS_COMPILE)gcc
>  
> +OUTPUT ?= $(PWD)
> +
>  TEST_GEN_PROGS := $(patsubst %,$(OUTPUT)/%,$(TEST_GEN_PROGS))
>  TEST_GEN_FILES := $(patsubst %,$(OUTPUT)/%,$(TEST_GEN_FILES))
>  
> 
> 
> cheers
> 

I sent a fix to lib.mk to set the OUTPUT. Please review. I can request
Linus to merge it in before 4.11-rc1 comes out.

thanks,
-- Shuah

  reply	other threads:[~2017-03-02 14:42 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-02-09  8:56 Michael Ellerman
2017-02-09  8:56 ` [PATCH 2/5] selftests: Fix the .c linking rule Michael Ellerman
2017-02-14  3:07   ` Bamvor Zhang Jian
2017-02-09  8:56 ` [PATCH 3/5] selftests: Fix the .S and .S -> .o rules Michael Ellerman
2017-02-14  3:07   ` Bamvor Zhang Jian
2017-02-09  8:56 ` [PATCH 4/5] selftests/powerpc: Fix the clean rule since recent changes Michael Ellerman
2017-02-09  8:56 ` [PATCH 5/5] selftests/powerpc: Fix remaining fallout from " Michael Ellerman
2017-02-14  2:09 ` [PATCH 1/5] selftests: Fix selftests build to just build, not run tests Michael Ellerman
2017-02-14 16:14   ` Shuah Khan
2017-02-14 20:33     ` Michael Ellerman
2017-03-01 19:00   ` Shuah Khan
2017-03-02  6:43     ` Michael Ellerman
2017-03-02 14:41       ` Shuah Khan [this message]
2017-02-14  3:06 ` Bamvor Zhang Jian

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=f17b4da1-7590-4f28-922f-0b8722d03034@osg.samsung.com \
    --to=shuahkh@osg.samsung.com \
    --cc=bamvor.zhangjian@huawei.com \
    --cc=hpa@zytor.com \
    --cc=linux-api@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=mingo@kernel.org \
    --cc=mpe@ellerman.id.au \
    --cc=tglx@linutronix.de \
    /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

all inboxes | Powered by JetHome®