On 1/26/24 12:34, Nathan Chancellor wrote:
On Fri, Jan 26, 2024 at 10:17:23AM -0800, Guenter Roeck wrote:
On 1/26/24 09:51, Greg Kroah-Hartman wrote:
On Fri, Jan 26, 2024 at 08:46:42AM -0800, Guenter Roeck wrote:
On 1/22/24 15:55, Greg Kroah-Hartman wrote:
This is the start of the stable review cycle for the 5.10.209 release. There are 286 patches in this series, all will be posted as a response to this one. If anyone has any issues with these being applied, please let me know.
Responses should be made by Wed, 24 Jan 2024 23:56:49 +0000. Anything received after that time might be too late.
[ ... ]
zhenwei pi pizhenwei@bytedance.com virtio-crypto: implement RSA algorithm
Curious: Why was this (and its subsequent fixes) backported to v5.10.y ? It is quite beyond a bug fix. Also, unless I am really missing something, the series (or at least this patch) was not applied to v5.15.y, so we now have functionality in v5.10.y which is not in v5.15.y.
See the commit text, it was a dependency of a later fix and documented as such.
Having it in 5.10 and not 5.15 is a bit odd, I agree, so patches are gladly accepted :)
We reverted the entire series from the merge because it results in a build failure for us.
In file included from /home/groeck/src/linux-chromeos/drivers/crypto/virtio/virtio_crypto_akcipher_algs.c:10: In file included from /home/groeck/src/linux-chromeos/include/linux/mpi.h:21: In file included from /home/groeck/src/linux-chromeos/include/linux/scatterlist.h:5: In file included from /home/groeck/src/linux-chromeos/include/linux/string.h:293: /home/groeck/src/linux-chromeos/include/linux/fortify-string.h:512:4: error: call to __read_overflow2_field declared with 'warning' attribute: detected read beyond size of field (2nd parameter); maybe use struct_group()? [-Werror,-Wattribute-warning] __read_overflow2_field(q_size_field, size);
For what it's worth, this is likely self inflicted for chromeos-5.10, which carries a revert of commit eaafc590053b ("fortify: Explicitly disable Clang support") as commit c19861d34c003 ("CHROMIUM: Revert "fortify: Explicitly disable Clang support""). I don't see the series that added proper support for clang to fortify in 5.18 that ended with commit 281d0c962752 ("fortify: Add Clang support") in that ChromeOS branch, so this seems somewhat expected.
That explains that ;-). I don't mind if the patches stay in v5.10.y, we have them reverted anyway.
The revert was a pure process issue, as you may see when looking into commit c19861d34c003, so, yes, I agree that it is self-inflicted damage. Still, that doesn't explain why the problem exists in 5.18+.
I also see that upstream (starting with 6.1) when trying to build it with clang, so I guess it is one of those bug-for-bug compatibility things. I really have no idea what causes it, or why we don't see the problem when building chromeos-6.1 or chromeos-6.6, but (so far) only with chromeos-5.10 after merging 5.10.209 into it. Making things worse, the problem isn't _always_ seen. Sometimes I can compile the file in 6.1.y without error, sometimes not. I have no idea what triggers the problem.
Have a .config that reproduces it on upstream? I have not personally seen this warning in my build matrix nor has our continuous-integration matrix (I don't see it in the warning output at the bottom but that could have missed something for some reason) in 6.1:
The following command sequence reproduces the problem for me with all stable branches starting with 5.18.y (plus mainline).
rm -rf /tmp/crypto-build mkdir /tmp/crypto-build make -j CC=clang-15 mrproper >/dev/null 2>&1 make -j O=/tmp/crypto-build CC=clang-15 allmodconfig >/dev/null 2>&1 make -j O=/tmp/crypto-build W=1 CC=clang-15 drivers/crypto/virtio/virtio_crypto_akcipher_algs.o
I tried clang versions 14, 15, and 16. This is with my home system running Ubuntu 22.04, no ChromeOS or Google specifics/internals involved. For clang-15, the version is
Ubuntu clang version 15.0.7 Target: x86_64-pc-linux-gnu Thread model: posix InstalledDir: /usr/bin
Guenter