Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1734024

Re: [PATCH] tty fix oops when rmmod 8250

From Jiri Slaby <jslaby@suse.cz>
Newsgroups linux.kernel
Subject Re: [PATCH] tty fix oops when rmmod 8250
Date 2017-09-18 13:00 +0200
Message-ID <ur1Wq-5gk-15@gated-at.bofh.it> (permalink)
References <upVJo-1me-13@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On 09/15/2017, 11:45 AM, nixiaoming wrote:
> After rmmod 8250.ko
> tty_kref_put starts kwork (release_one_tty) to release proc interface

I believe you wanted to add a period here.

> oops when accessing driver->driver_name in proc_tty_unregister_driver

"The kernel oopses when"... ?

> Use jprobe, found driver->driver_name point to 8250.ko
> static static struct uart_driver serial8250_reg
> .driver_name= serial,
> 
> Use name in proc_dir_entry instead of driver->driver_name to fix oops
> 
> test on linux 4.1.12:
...
> @@ -164,7 +165,7 @@ void proc_tty_unregister_driver(struct tty_driver *driver)
>  	if (!ent)
>  		return;
>  		
> -	remove_proc_entry(driver->driver_name, proc_tty_driver);
> +	remove_proc_entry(ent->name, proc_tty_driver);

Yes, that makes sense. Using possibly stale driver_name cannot really
work out. I only wonder why nobody noticed until now...

So, can you reproduce also on 4.13 or something newer like that?

thanks,
-- 
js
suse labs

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

[PATCH] tty fix oops when rmmod 8250 nixiaoming <nixiaoming@huawei.com> - 2017-09-15 12:10 +0200
  Re: [PATCH] tty fix oops when rmmod 8250 Jiri Slaby <jslaby@suse.cz> - 2017-09-18 13:00 +0200

csiph-web