> On Dec 16, 2020, at 10:50 AM, David Sterba <dste...@suse.cz> wrote:
> 
> On Wed, Dec 16, 2020 at 11:58:07AM +1100, Herbert Xu wrote:
>> On Wed, Dec 16, 2020 at 12:48:51AM +0000, Nick Terrell wrote:
>>> 
>>> Thanks for the advice! The first zstd patches went through Herbert’s tree, 
>>> which is
>>> why I’ve sent them this way.
>> 
>> Sorry, but I'm not touch these patches as Christoph's objections
>> don't seem to have been addressed.
> 
> I have objections to the current patchset as well, the build bot has
> found that some of the function frames are overly large (up to 3800
> bytes) [1],

Sorry I missed your reply David, it didn’t make it to my inbox.

Compiled with x86-64, arm, and aarch64 that function does not trigger any
-Wframe-larger-than= warnings during the kernel build. It seems like the
compiler backend for the parisc architecture (the architecture that the build
bot used) is doing a particularly bad job at optimizing this function, because
there is nothing in there that should be using that much stack space.

I have a test in upstream zstd that measures the stack high water mark for
all usage of zstd compression currently in-use the kernel. It says that zstd
uses 2KB of stack space in total on x86-64. I used this test to remove 1KB of
stack usage from upstream zstd. But, this is still 400 bytes more than the
current version of zstd in the kernel. I will look into squeezing out those last
400 bytes of stack usage.

> besides the original complaint that the patch 3/3 is 1.5MiB.
> 
> [1] https://lore.kernel.org/lkml/20201204140314.gs6...@twin.jikos.cz/

It is very large. If it helps, in the commit message I’ve provided this link 
[0],
which provides the diff between upstream zstd as-is and the imported zstd,
which has been modified by the automated tooling to work in the kernel.

[0] 
https://github.com/terrelln/linux/commit/ac2ee65dcb7318afe426ad08f6a844faf3aebb41

Best,
Nick

Reply via email to