On Mon, Mar 6, 2023 at 10:01 AM Thomas Zimmermann <tzimmermann@xxxxxxx> wrote: > > Assume that the driver does not own the option string or its substrings > and hence duplicate the option string for the video mode. The driver only > parses the option string once as part of module initialization, so use > a static buffer to store the duplicated mode option. Linux automatically > frees the memory upon releasing the module. So after module_init is finished, mode_option_buf[] no longer exists? > + static char mode_option_buf[256]; > + int ret; > + > + ret = snprintf(mode_option_buf, sizeof(mode_option_buf), "%s", opt); > + if (WARN(ret < 0, "fsl-diu-fb: ignoring invalid option, ret=%d\n", ret)) > + continue; > + if (WARN(ret >= sizeof(mode_option_buf), "fsl-diu-fb: option too long\n")) > + continue; > + fb_mode = mode_option_buf; If so, then I'm not sure that's going to work. fb_mode is used after module_init, in install_fb(), which is called by fsl_diu_probe().