From: "'Jan Kiszka' via isar-users" <isar-users@googlegroups.com>
To: Uladzimir Bely <ubely@ilbers.de>, isar-users@googlegroups.com
Subject: Re: [PATCH v2] Fix linux-starfive build under sid
Date: Fri, 4 Oct 2024 12:45:36 +0200 [thread overview]
Message-ID: <8e2696ba-1311-4e0c-89dc-8c29e84ac0c6@siemens.com> (raw)
In-Reply-To: <8a2e073548325768f995620c6d6dc5dda36bf0a5.camel@ilbers.de>
On 04.10.24 12:37, Uladzimir Bely wrote:
> On Fri, 2024-10-04 at 12:27 +0200, Jan Kiszka wrote:
>> On 04.10.24 12:22, 'Jan Kiszka' via isar-users wrote:
>>> On 04.10.24 11:43, Uladzimir Bely wrote:
>>>> On Fri, 2024-10-04 at 10:38 +0200, Jan Kiszka wrote:
>>>>> On 04.10.24 10:17, Uladzimir Bely wrote:
>>>>>> The patch is taken from the linux kernel upstream >= 6.8.
>>>>>>
>>>>>> Signed-off-by: Uladzimir Bely <ubely@ilbers.de>
>>>>>> ---
>>>>>> ...oc-arguments-order-in-btrfs_ioctl_se.patch | 43
>>>>>> +++++++++++++++++++
>>>>>> .../linux/linux-starfive_6.6-visionfive2.bb | 1 +
>>>>>> 2 files changed, 44 insertions(+)
>>>>>> create mode 100644 meta-isar/recipes-
>>>>>> kernel/linux/files/0001-
>>>>>> btrfs-fix-kvcalloc-arguments-order-in-btrfs_ioctl_se.patch
>>>>>>
>>>>>> Changes since v1 (Fix linux build under sid and trixie):
>>>>>>
>>>>>> - Since we don't build linux-mainline/linux-phy kernels for
>>>>>> trixie/sid
>>>>>> apply kernel patch only for linux-starfive_6.6-visionfive2
>>>>>> target.
>>>>>>
>>>>>> I additionally checked [1] for existing branches and can
>>>>>> conclude:
>>>>>> - recent 6.6-based branch "JH7110_VisionFive2_upstream" is
>>>>>> still
>>>>>> affected and requires the patch
>>>>>> - recent "starfive-tech/visionfive" is 6.10-based already
>>>>>> includes
>>>>>> the fix, but using it leads to different build errors. Also,
>>>>>> I'm
>>>>>> not
>>>>>> sure if it properly supports "VisionFive2" board.
>>>>>>
>>>>>> So, for now, the simplest way to fix build error we have in
>>>>>> CI is
>>>>>> to
>>>>>> just apply upstream patch.
>>>>>>
>>>>>> [1] https://github.com/starfive-tech/linux
>>>>>>
>>>>>> diff --git a/meta-isar/recipes-kernel/linux/files/0001-btrfs-
>>>>>> fix-
>>>>>> kvcalloc-arguments-order-in-btrfs_ioctl_se.patch b/meta-
>>>>>> isar/recipes-kernel/linux/files/0001-btrfs-fix-kvcalloc-
>>>>>> arguments-
>>>>>> order-in-btrfs_ioctl_se.patch
>>>>>> new file mode 100644
>>>>>> index 00000000..afe09eab
>>>>>> --- /dev/null
>>>>>> +++ b/meta-isar/recipes-kernel/linux/files/0001-btrfs-fix-
>>>>>> kvcalloc-
>>>>>> arguments-order-in-btrfs_ioctl_se.patch
>>>>>> @@ -0,0 +1,43 @@
>>>>>> +From 6ff09b6b8c2fb6b3edda4ffaa173153a40653067 Mon Sep 17
>>>>>> 00:00:00
>>>>>> 2001
>>>>>> +From: Dmitry Antipov <dmantipov@yandex.ru>
>>>>>> +Date: Thu, 21 Dec 2023 11:47:45 +0300
>>>>>> +Subject: [PATCH] btrfs: fix kvcalloc() arguments order in
>>>>>> btrfs_ioctl_send()
>>>>>> +
>>>>>> +When compiling with gcc version 14.0.0 20231220
>>>>>> (experimental)
>>>>>> +and W=1, I've noticed the following warning:
>>>>>> +
>>>>>> +fs/btrfs/send.c: In function 'btrfs_ioctl_send':
>>>>>> +fs/btrfs/send.c:8208:44: warning: 'kvcalloc' sizes specified
>>>>>> with
>>>>>> 'sizeof'
>>>>>> +in the earlier argument and not in the later argument [-
>>>>>> Wcalloc-
>>>>>> transposed-args]
>>>>>> + 8208 | sctx->clone_roots = kvcalloc(sizeof(*sctx-
>>>>>>> clone_roots),
>>>>>> + | ^
>>>>>> +
>>>>>> +Since 'n' and 'size' arguments of 'kvcalloc()' are
>>>>>> multiplied to
>>>>>> +calculate the final size, their actual order doesn't affect
>>>>>> the
>>>>>> result
>>>>>> +and so this is not a bug. But it's still worth to fix it.
>>>>>> +
>>>>>> +Signed-off-by: Dmitry Antipov <dmantipov@yandex.ru>
>>>>>> +Reviewed-by: David Sterba <dsterba@suse.com>
>>>>>> +Signed-off-by: David Sterba <dsterba@suse.com>
>>>>>> +---
>>>>>> + fs/btrfs/send.c | 4 ++--
>>>>>> + 1 file changed, 2 insertions(+), 2 deletions(-)
>>>>>> +
>>>>>> +diff --git a/fs/btrfs/send.c b/fs/btrfs/send.c
>>>>>> +index 4e36550618e5..2d7519a6ce72 100644
>>>>>> +--- a/fs/btrfs/send.c
>>>>>> ++++ b/fs/btrfs/send.c
>>>>>> +@@ -8205,8 +8205,8 @@ long btrfs_ioctl_send(struct inode
>>>>>> *inode,
>>>>>> struct btrfs_ioctl_send_args *arg)
>>>>>> + goto out;
>>>>>> + }
>>>>>> +
>>>>>> +- sctx->clone_roots = kvcalloc(sizeof(*sctx-
>>>>>>> clone_roots),
>>>>>> +- arg-
>>>>>>> clone_sources_count + 1,
>>>>>> ++ sctx->clone_roots = kvcalloc(arg-
>>>>>>> clone_sources_count + 1,
>>>>>> ++ sizeof(*sctx-
>>>>>>> clone_roots),
>>>>>> + GFP_KERNEL);
>>>>>> + if (!sctx->clone_roots) {
>>>>>> + ret = -ENOMEM;
>>>>>> +--
>>>>>> +2.45.2
>>>>>> +
>>>>>> diff --git a/meta-isar/recipes-kernel/linux/linux-
>>>>>> starfive_6.6-
>>>>>> visionfive2.bb b/meta-isar/recipes-kernel/linux/linux-
>>>>>> starfive_6.6-
>>>>>> visionfive2.bb
>>>>>> index f4dd5c9a..a267241f 100644
>>>>>> --- a/meta-isar/recipes-kernel/linux/linux-starfive_6.6-
>>>>>> visionfive2.bb
>>>>>> +++ b/meta-isar/recipes-kernel/linux/linux-starfive_6.6-
>>>>>> visionfive2.bb
>>>>>> @@ -8,6 +8,7 @@ require recipes-kernel/linux/linux-custom.inc
>>>>>> SRC_URI += " \
>>>>>>
>>>>>> https://github.com/starfive-tech/linux/archive/${SRCREV}.tar.gz;downloadfilename=linux-starfive-${SRCREV}.tar.gz
>>>>>> \
>>>>>>
>>>>>> file://0001-riscv-efistub-Ensure-GP-relative-addressing-is-not-u.patch
>>>>>> \
>>>>>> +
>>>>>> file://0001-btrfs-fix-kvcalloc-arguments-order-in-btrfs_ioctl_se.patch
>>>>>> \
>>>>>> file://starfive2_extra.cfg"
>>>>>> SRCREV = "9fe004eaf1aa5b23bd5d03b4cfe9c3858bd884c4"
>>>>>> SRC_URI[sha256sum] =
>>>>>> "9eaf7659aa57e2c5b399b7b33076f1376ec43ef343680e0a57e0a2a9bef6
>>>>>> c0ae"
>>>>>
>>>>> NACK, update the kernel. I think I already told you. May even
>>>>> obsolete
>>>>> the other patch.
>>>>
>>>> Yes, I tried this (see the text above the diff starts). Updated
>>>> 6.6-
>>>> based branch still requires both patches.
>>>>
>>>
>>> https://github.com/starfive-tech/linux/commits/starfive-6.6.31-dubhe
>>>
>>> As I told you.
>>>
>>> I'm sending the proper patch in a minute.
>>>
>>
>> Sorry, seems that's the wrong tree, and
>> JH7110_VisionFive2_6.6.y_devel
>> was not updated properly.
>>
>> But there is no way to build against sid except for using an older
>> snapshot. How did you test this?
>>
>> Jan
>>
>
> I tested few branches:
> - JH7110_VisionFive2_upstream - this seems to be a proper tree (at
> least, it includes starfive_visionfive2_defconfig, and appropriate
> devicetree files look complete). But this still has now a fix and
> requires both patches
Yes, it is. I've created
https://github.com/starfive-tech/linux/issues/140 to resolve the problem
"upstream" eventually.
> - starfive-tech/visionfive - this is based on linux-6.10, includes
> both patches. But there are different build errors here and no
> starfive_visionfive2_defconfig present. Also, board devicetree files
> has less stuff.
That's version 1 of the VisionFive, a different board.
> - starfive-6.6.31-dubhe - this includes the patch (but not the other
> one). But there is also no proper defconfig and board deficetrees are
> not looking full enough.
Even a different SoC that may lack patches we need. I was misled.
>
> Some tests were done in one of our CI instances where we already have
> an updated version of debootstrap installed. Manual check of the build
> can be also done under kas-container shell, but some additional steps
> (e.g., adding bookworm-backports to source list and installing
> "debootstrap/bookworm-backports") are required before running bitbake.
>
You must be natively building - I don't have that much time. Crossbuild
is borken once again, but the snapshot we also use in isar-cip-core is
fine (but not affected by the compiler update), see my kas menu patch.
Anyway, ACK for this patch until upstream updated their branch.
Jan
--
Siemens AG, Technology
Linux Expert Center
--
You received this message because you are subscribed to the Google Groups "isar-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/isar-users/8e2696ba-1311-4e0c-89dc-8c29e84ac0c6%40siemens.com.
next prev parent reply other threads:[~2024-10-04 10:45 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-04 8:17 Uladzimir Bely
2024-10-04 8:36 ` Uladzimir Bely
2024-10-04 8:38 ` 'Jan Kiszka' via isar-users
2024-10-04 9:43 ` Uladzimir Bely
2024-10-04 10:22 ` 'Jan Kiszka' via isar-users
2024-10-04 10:27 ` 'Jan Kiszka' via isar-users
2024-10-04 10:37 ` Uladzimir Bely
2024-10-04 10:45 ` 'Jan Kiszka' via isar-users [this message]
2024-10-04 10:49 ` Uladzimir Bely
2024-10-04 10:53 ` 'Jan Kiszka' via isar-users
2024-10-08 5:16 ` Uladzimir Bely
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=8e2696ba-1311-4e0c-89dc-8c29e84ac0c6@siemens.com \
--to=isar-users@googlegroups.com \
--cc=jan.kiszka@siemens.com \
--cc=ubely@ilbers.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