On 3/23/21 6:51 AM, Pavel Begunkov wrote:
> On 23/03/2021 11:31, kernel test robot wrote:
>> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
>> master
>> head:   84196390620ac0e5070ae36af84c137c6216a7dc
>> commit: e5d1bc0a91f16959aa279aa3ee9fdc246d4bb382 io_uring: defer flushing 
>> cached reqs
>> date:   6 weeks ago
>> config: powerpc64-randconfig-r023-20210323 (attached as .config)
>> compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 
>> 14696baaf4c43fe53f738bc292bbe169eed93d5d)
>> reproduce (this is a W=1 build):
>>         wget 
>> https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
>> ~/bin/make.cross
>>         chmod +x ~/bin/make.cross
>>         # install powerpc64 cross compiling tool for clang build
>>         # apt-get install binutils-powerpc64-linux-gnu
>>         # 
>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e5d1bc0a91f16959aa279aa3ee9fdc246d4bb382
>>         git remote add linus 
>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>>         git fetch --no-tags linus master
>>         git checkout e5d1bc0a91f16959aa279aa3ee9fdc246d4bb382
>>         # save the attached .config to linux build tree
>>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross 
>> ARCH=powerpc64 
>>
>> If you fix the issue, kindly add following tag as appropriate
>> Reported-by: kernel test robot <l...@intel.com>
>>
>> All warnings (new ones prefixed by >>):
>>
>>>> fs/io_uring.c:6920:12: warning: stack frame size of 1040 bytes in function 
>>>> 'io_submit_sqes' [-Wframe-larger-than=]
>>    static int io_submit_sqes(struct io_ring_ctx *ctx, unsigned int nr)
>>               ^
>>    1 warning generated. b
> 
> I don't know, for up-to-date code all submission functions are under
> 128 bytes for me, including io_submit_sqes with everything heavily
> inlined into it. I believe it's just a strange config keeping
> everything on stack for some reason (too under optimised?).

Must be the powerpc compiler doing something weird, it's probably
inlining io_submit_sqe() and all opcode handlers. And then you get
there pretty quick, eg io_recvmsg() uses 768 bytes of stack here.

-- 
Jens Axboe

Reply via email to