Re: [PATCH v2 1/1] mtd: cfi_cmdset_0001: Factor out do_write_buffer_locked() to reduce stack frame

Vignesh Raghavendra
2026-02-06T05:56:31Z

On 05/02/26 23:04, Miquel Raynal wrote:
> On 05/02/2026 at 17:57:17 +02, Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote:
>
>> On Thu, Feb 05, 2026 at 09:51:56AM +0100, Miquel Raynal wrote:
>>> On 04/02/2026 at 23:12:00 +02, Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote:
>>>> On Wed, Feb 04, 2026 at 02:25:27AM +0100, Andy Shevchenko wrote:
>>>>> Compiler is not happy about used stack frame:
>>>>>
>>>>> drivers/mtd/chips/cfi_cmdset_0001.c: In function 'do_write_buffer':
>>>>> drivers/mtd/chips/cfi_cmdset_0001.c:1887:1: error: the frame size of 1296 bytes is larger than 1280 bytes [-Werror=frame-larger-than=]
>>>>>
>>>>> Fix this by factoring out do_write_buffer_locked().
>>>>
>>>> My gosh, I already sent a v2 earlier and there were some replies,
>>>> I need to check...
>>>
>>> I'm not sure I get what you mean here? I got no reply (in my inbox) to
>>> your v2. I am letting a bit of time for Vignesh to take a look, but I
>>> know he's busy so I might take it nevertheless by the end of the week as
>>> we are approaching the merge window.
>>
>> I got some strange LKP reports, I need to check them.
>> Please, discard this email thread as we have it there
>>
>> https://lore.kernel.org/r/20260124133730.3454241-1-andriy.shevchenko@linux.intel.com
>
> Ah, this did not reach my inbox, marked SPAM... I'll discard this patch
> for this cycle, feel free to resend once the report has been figured
> out.
>

Yeah, things become tricky with CONFIG_MTD_XIP enabled. With
XIP_INVAL_CACHED_RANGE() moved to caller, initial_adr becomes unused
when CONFIG_MTD_XIP=y

One solution maybe to move calls to XIP_INVAL_CACHED_RANGE(),
ENABLE_VPP(map) and xip_disable() and their complementary functions to
do_write_buffer_locked() as these calls need to repeated for every
writes (if and when we find need to reuse do_write_buffer_locked())

Alternately move INVAL_CACHE_AND_WAIT() and everything after that to caller

--
Regards
Vignesh