From: <Conor.Dooley@microchip.com>
To: <palmer@dabbelt.com>
Cc: <ben.dooks@sifive.com>, <linux-riscv@lists.infradead.org>,
<paul.walmsley@sifive.com>, <aou@eecs.berkeley.edu>,
<sudip.mukherjee@sifive.com>, <jude.onyenegecha@sifive.com>
Subject: Re: [PATCH] riscv/vdso: fix missing vdso_data declaration
Date: Thu, 11 Aug 2022 21:26:00 +0000 [thread overview]
Message-ID: <ddf6dc4a-eaa1-7fdb-62d3-9f25bd1da9a5@microchip.com> (raw)
In-Reply-To: <mhng-66872b72-36b1-42f8-abde-3af0af59298e@palmer-ri-x1c9>
On 11/08/2022 22:06, Palmer Dabbelt wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>
> On Wed, 13 Jul 2022 23:34:36 PDT (-0700), Conor.Dooley@microchip.com wrote:
>> On 13/07/2022 23:06, Ben Dooks wrote:
>>> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>>>
>>> The vdso_data is defined by has no declaration as the
>>> arch/riscv/kernel/vdso.c does not include asm/vdso/vsyscall.h
>>> for the definition. Fix the following sparse warning by
>>> adding in the asm/vdso/vsyscall.h
>>>
>>> arch/riscv/kernel/vdso.c:42:18: warning: symbol 'vdso_data' was not declared. Should it be static?
>>>
>>> Signed-off-by: Ben Dooks <ben.dooks@sifive.com>
>>
>> Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
>
> This one gives me a bunch of build errors, things like
Hmm, what's your defconfig for this?
I tested with my dev defconfig and riscv's default one at the time but
saw nothing. Tried both again now & no errors.
>
> In file included from /scratch/merges/ko-linux-next/linux/include/vdso/datapage.h:137,
> from /scratch/merges/ko-linux-next/linux/arch/riscv/include/asm/vdso/vsyscall.h:8,
> from /scratch/merges/ko-linux-next/linux/arch/riscv/kernel/vdso.c:16:
> /scratch/merges/ko-linux-next/linux/arch/riscv/include/asm/vdso/gettimeofday.h: In function 'gettimeofday_fallback':
> /scratch/merges/ko-linux-next/linux/arch/riscv/include/asm/vdso/gettimeofday.h:21:38: error: '__NR_gettimeofday' undeclared (first use in this function)
> 21 | register long nr asm("a7") = __NR_gettimeofday;
> | ^~~~~~~~~~~~~~~~~
> /scratch/merges/ko-linux-next/linux/arch/riscv/include/asm/vdso/gettimeofday.h:21:38: note: each undeclared identifier is reported only once for each function it appears in
> /scratch/merges/ko-linux-next/linux/arch/riscv/include/asm/vdso/gettimeofday.h: In function 'clock_gettime_fallback':
> /scratch/merges/ko-linux-next/linux/arch/riscv/include/asm/vdso/gettimeofday.h:37:38: error: '__NR_clock_gettime' undeclared (first use in this function)
> 37 | register long nr asm("a7") = __NR_clock_gettime;
> | ^~~~~~~~~~~~~~~~~~
> /scratch/merges/ko-linux-next/linux/arch/riscv/include/asm/vdso/gettimeofday.h: In function 'clock_getres_fallback':
> /scratch/merges/ko-linux-next/linux/arch/riscv/include/asm/vdso/gettimeofday.h:53:38: error: '__NR_clock_getres' undeclared (first use in this function)
> 53 | register long nr asm("a7") = __NR_clock_getres;
> | ^~~~~~~~~~~~~~~~~
> /scratch/merges/ko-linux-next/linux/arch/riscv/kernel/vdso.c: At top level:
> /scratch/merges/ko-linux-next/linux/arch/riscv/kernel/vdso.c:22:8: error: redefinition of 'struct vdso_data'
> 22 | struct vdso_data {
> | ^~~~~~~~~
> /scratch/merges/ko-linux-next/linux/include/vdso/datapage.h:90:8: note: originally defined here
> 90 | struct vdso_data {
> | ^~~~~~~~~
> /scratch/merges/ko-linux-next/linux/arch/riscv/kernel/vdso.c:51:19: error: conflicting types for 'vdso_data'; have 'struct vdso_data *'
> 51 | struct vdso_data *vdso_data = &vdso_data_store.data;
> | ^~~~~~~~~
> /scratch/merges/ko-linux-next/linux/arch/riscv/include/asm/vdso/vsyscall.h:10:26: note: previous declaration of 'vdso_data' with type 'struct vdso_data *'
> 10 | extern struct vdso_data *vdso_data;
> | ^~~~~~~~~
>
>>
>>> ---
>>> arch/riscv/kernel/vdso.c | 1 +
>>> 1 file changed, 1 insertion(+)
>>>
>>> diff --git a/arch/riscv/kernel/vdso.c b/arch/riscv/kernel/vdso.c
>>> index 69b05b6c181b..7564f0208957 100644
>>> --- a/arch/riscv/kernel/vdso.c
>>> +++ b/arch/riscv/kernel/vdso.c
>>> @@ -13,6 +13,7 @@
>>> #include <linux/err.h>
>>> #include <asm/page.h>
>>> #include <asm/vdso.h>
>>> +#include <asm/vdso/vsyscall.h>
>>> #include <linux/time_namespace.h>
>>>
>>> #ifdef CONFIG_GENERIC_TIME_VSYSCALL
>>> --
>>> 2.35.1
>>>
>>>
>>> _______________________________________________
>>> linux-riscv mailing list
>>> linux-riscv@lists.infradead.org
>>> http://lists.infradead.org/mailman/listinfo/linux-riscv
>>
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
next prev parent reply other threads:[~2022-08-11 21:26 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-13 22:06 [PATCH] riscv/vdso: fix missing vdso_data declaration Ben Dooks
2022-07-14 6:34 ` Conor.Dooley
2022-08-11 21:06 ` Palmer Dabbelt
2022-08-11 21:26 ` Conor.Dooley [this message]
2022-08-14 16:10 ` Conor.Dooley
2022-08-18 23:01 ` Palmer Dabbelt
2022-08-19 7:08 ` Conor.Dooley
2022-09-15 18:51 ` Conor.Dooley
2022-10-05 14:13 ` Ben Dooks
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=ddf6dc4a-eaa1-7fdb-62d3-9f25bd1da9a5@microchip.com \
--to=conor.dooley@microchip.com \
--cc=aou@eecs.berkeley.edu \
--cc=ben.dooks@sifive.com \
--cc=jude.onyenegecha@sifive.com \
--cc=linux-riscv@lists.infradead.org \
--cc=palmer@dabbelt.com \
--cc=paul.walmsley@sifive.com \
--cc=sudip.mukherjee@sifive.com \
/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