linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Andy Shevchenko <andy.shevchenko@gmail.com>
To: Lars Poeschel <poeschel@lemonage.de>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Miguel Ojeda <ojeda@kernel.org>,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Geert Uytterhoeven <geert.uytterhoeven@gmail.com>
Subject: Re: [RFC] auxdisplay: Fix oops on hd44780 module unloading
Date: Thu, 15 Jul 2021 17:11:54 +0300	[thread overview]
Message-ID: <CAHp75VdGnuOPUKYSc0cFvXEY8Vt7LGiP2pS518=890FfV9Fk=g@mail.gmail.com> (raw)
In-Reply-To: <20210714110218.izcop7grykhfyvll@lem-wkst-02.lemonage>

On Wed, Jul 14, 2021 at 2:02 PM Lars Poeschel <poeschel@lemonage.de> wrote:
>
> On Fri, Jul 09, 2021 at 07:10:14PM +0300, Andy Shevchenko wrote:
> > On Fri, Jul 9, 2021 at 5:40 PM Andy Shevchenko
> > <andy.shevchenko@gmail.com> wrote:
> > >
> > > Parallel (4 bits)  panel display stopped working.
> >
> > This part appears to be a configuration issue. So, we have only one
> > left, i.e. oops on remove.

Thanks for the prompt reply!
As usual, rc1 is like after war ruins which needs to be fixed here and
there before doing something useful.

> Could you please test, if this little change fixes the oops ?

I think you meant "RFT" in the subject line.
Anyway, I have tested it and it seems to be working fine.

Reported-and-tested-by: Andy Shevchenko <andy.shevchenko@gmail.com>

> -- >8 --
>
> Fix this oops:

(Note, please, reduce it as much as possible to the bare minimum
required to understand the issue and the cause)


> [  218.825445] kernel tried to execute NX-protected page - exploit
> attempt? (uid: 0)
> [  218.832965] BUG: unable to handle page fault for address: ffff8f8f06559dc0
> [  218.839863] #PF: supervisor instruction fetch in kernel mode
> [  218.845540] #PF: error_code(0x0011) - permissions violation
> [  218.851132] PGD e601067 P4D e601067 PUD e602067 PMD 645a063 PTE
> 8000000006559063
> [  218.858587] Oops: 0011 [#1] SMP PTI
> [  218.862099] CPU: 0 PID: 7 Comm: kworker/u4:0 Tainted: G         C
>      5.13.0+ #23
> [  218.869870] Hardware name: Intel Corporation Merrifield/BODEGA BAY,
> BIOS 542 2015.01.21:18.19.48
> [  218.878681] Workqueue: kacpi_hotplug acpi_device_del_work_fn
> [  218.884380] RIP: 0010:0xffff8f8f06559dc0
> [  218.888328] Code: ff ff d2 2b 21 8c ff ff ff ff 08 00 00 00 00 00
> 00 00 78 34 fa 02 8f 8f ff ff 00 00 00 00 00
> 00 00 00 00 00 00 00 00 00 00 00 <72> 65 67 75 6c 61 74 6f 72 3a 72 65
> 67 75 6c 61 74 6f 72 2e 30 2d
> [  218.907138] RSP: 0000:ffffad36c0043c90 EFLAGS: 00010246
> [  218.912387] RAX: ffff8f8f06559dc0 RBX: ffff8f8f062cbc00 RCX: ffff8f8f01239fc8
> [  218.919542] RDX: 000000002a3cccf8 RSI: 0000000000000001 RDI: ffff8f8f06559480
> [  218.926701] RBP: ffffffffc037e279 R08: 00000000d5832520 R09: 0000000000000001
> [  218.933856] R10: 0000000000000000 R11: 0000000000000001 R12: ffff8f8f062cbc00
> [  218.941010] R13: ffffffffc038e028 R14: ffffffff8c5e0b60 R15: 00000000fffffffd
> [  218.948166] FS:  0000000000000000(0000) GS:ffff8f8f3e200000(0000)
> knlGS:0000000000000000
> [  218.956286] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> [  218.962053] CR2: ffff8f8f06559dc0 CR3: 0000000002ef4000 CR4: 00000000001006f0
> [  218.969208] Call Trace:
> [  218.971678]  ? hd44780_common_clear_display+0x17/0x30 [hd44780_common]
> [  218.978252]  ? charlcd_write_char+0x21a/0x810 [charlcd]
> [  218.983519]  ? charlcd_puts+0x30/0x60 [charlcd]
> [  218.988083]  ? charlcd_unregister+0x24/0x70 [charlcd]
> [  218.993167]  ? hd44780_remove+0x1e/0x30 [hd44780]
> [  218.997901]  ? platform_remove+0x1f/0x40
>
> Reported-By: Andy Shevchenko <andy.shevchenko@gmail.com>
> Signed-off-by: Lars Poeschel <poeschel@lemonage.de>
> ---
>  drivers/auxdisplay/hd44780.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/auxdisplay/hd44780.c b/drivers/auxdisplay/hd44780.c
> index 2e5e7c993933..8b2a0eb3f32a 100644
> --- a/drivers/auxdisplay/hd44780.c
> +++ b/drivers/auxdisplay/hd44780.c
> @@ -323,8 +323,8 @@ static int hd44780_remove(struct platform_device *pdev)
>  {
>         struct charlcd *lcd = platform_get_drvdata(pdev);
>
> -       kfree(lcd->drvdata);
>         charlcd_unregister(lcd);
> +       kfree(lcd->drvdata);
>
>         kfree(lcd);
>         return 0;
> --
> 2.30.2
>


--
With Best Regards,
Andy Shevchenko

  reply	other threads:[~2021-07-15 14:12 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-09 14:40 parallel panel display stopped working Andy Shevchenko
2021-07-09 14:54 ` Andy Shevchenko
2021-07-09 15:45   ` Andy Shevchenko
2021-07-09 16:10 ` Andy Shevchenko
2021-07-14 11:02   ` [RFC] auxdisplay: Fix oops on hd44780 module unloading Lars Poeschel
2021-07-15 14:11     ` Andy Shevchenko [this message]
2021-07-15 23:27       ` Miguel Ojeda

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAHp75VdGnuOPUKYSc0cFvXEY8Vt7LGiP2pS518=890FfV9Fk=g@mail.gmail.com' \
    --to=andy.shevchenko@gmail.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=geert.uytterhoeven@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ojeda@kernel.org \
    --cc=poeschel@lemonage.de \
    --subject='Re: [RFC] auxdisplay: Fix oops on hd44780 module unloading' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).