lkml.org 
[lkml]   [2009]   [Feb]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] tty: fix bug - kernel can't be pinged through when bootargs console=null
On Fri,  6 Feb 2009 16:27:57 +0800
Bryan Wu <cooloney@kernel.org> wrote:

> From: Sonic Zhang <sonic.zhang@analog.com>
>
> when pass bootargs console=null into kernel from u-boot, the booted up
> kernel can't be pinged through. This happens after the kernel is upgraded
> to 2.6.28.
>
> Should check if tty_driver is NULL before call kref_get() in tty_driver_kref_get().
>
> Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
> Signed-off-by: Bryan Wu <cooloney@kernel.org>
> ---
> include/linux/tty_driver.h | 3 ++-
> 1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/include/linux/tty_driver.h b/include/linux/tty_driver.h
> index 08e0883..2a602a8 100644
> --- a/include/linux/tty_driver.h
> +++ b/include/linux/tty_driver.h
> @@ -312,7 +312,8 @@ extern struct tty_driver *tty_find_polling_driver(char *name, int *line);
> extern void tty_driver_kref_put(struct tty_driver *driver);
> extern inline struct tty_driver *tty_driver_kref_get(struct tty_driver *d)
> {
> - kref_get(&d->kref);
> + if (d)
> + kref_get(&d->kref);
> return d;
> }
>

Did any earlier kernel versions handle this situation OK?

If so, we might need to be back-compatible with buggy userspace :(


\
 
 \ /
  Last update: 2009-02-07 01:09    [from the cache]
©2003-2011 Jasper Spaans