mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Alan Cox <alan@lxorguk.ukuu.org.uk>
To: linux-kernel@vger.kernel.org, torvalds@linux-foundation.org
Subject: [PATCH 17/24] tty: moxa, fix refcounting in moxa_poll_port
Date: Wed, 01 Apr 2009 15:06:48 +0100	[thread overview]
Message-ID: <20090401140646.22882.17685.stgit@localhost.localdomain> (raw)
In-Reply-To: <20090401140241.22882.93477.stgit@localhost.localdomain>

From: Jiri Slaby <jirislaby@gmail.com>

There is missing tty_kref_put on some paths in moxa_poll_port,
although the reference is always taken. Fix it.

Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Reported-by: Jan 'Yenya' Kasprzak <kas@fi.muni.cz>
Signed-off-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
---

 drivers/char/moxa.c |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)


diff --git a/drivers/char/moxa.c b/drivers/char/moxa.c
index 8b0da97..4a4cab7 100644
--- a/drivers/char/moxa.c
+++ b/drivers/char/moxa.c
@@ -1486,11 +1486,11 @@ static int moxa_poll_port(struct moxa_port *p, unsigned int handle,
 	}
 
 	if (!handle) /* nothing else to do */
-		return 0;
+		goto put;
 
 	intr = readw(ip); /* port irq status */
 	if (intr == 0)
-		return 0;
+		goto put;
 
 	writew(0, ip); /* ACK port */
 	ofsAddr = p->tableAddr;
@@ -1499,16 +1499,17 @@ static int moxa_poll_port(struct moxa_port *p, unsigned int handle,
 				ofsAddr + HostStat);
 
 	if (!inited)
-		return 0;
+		goto put;
 
 	if (tty && (intr & IntrBreak) && !I_IGNBRK(tty)) { /* BREAK */
 		tty_insert_flip_char(tty, 0, TTY_BREAK);
 		tty_schedule_flip(tty);
 	}
-	tty_kref_put(tty);
 
 	if (intr & IntrLine)
 		moxa_new_dcdstate(p, readb(ofsAddr + FlagStat) & DCD_state);
+put:
+	tty_kref_put(tty);
 
 	return 0;
 }


  parent reply	other threads:[~2009-04-01 14:13 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-01 14:04 [PATCH 00/24] Series short description Alan Cox
2009-04-01 14:04 ` [PATCH 01/24] 8250_pnp.c: add another Wacom tablet Alan Cox
2009-04-01 14:04 ` [PATCH 02/24] serial: Update PNP IDs Alan Cox
2009-04-01 14:04 ` [PATCH 03/24] 8250_pci: add support for National Instruments 843x RS232 devices Alan Cox
2009-04-01 14:05 ` [PATCH 04/24] 8250_pci: add support for National Instruments legacy 8420 RS232 boards Alan Cox
2009-04-01 14:05 ` [PATCH 05/24] blackfin: BF538/9 serial uart support Alan Cox
2009-04-01 14:05 ` [PATCH 06/24] blackfin: Use unsigned long for flags with irq functions Alan Cox
2009-04-01 14:05 ` [PATCH 07/24] blackfin: Fix tty compile error in PIO mode Alan Cox
2009-04-01 14:05 ` [PATCH 08/24] Fix DMA rx ring buffer handling Alan Cox
2009-04-01 14:05 ` [PATCH 09/24] blackfin: Subtract ANOMALY_05000230 on quot Alan Cox
2009-04-01 14:05 ` [PATCH 10/24] applicom: Auto-load applicom module when device opened Alan Cox
2009-04-01 14:06 ` [PATCH 11/24] cyclades: Auto-load cyclades " Alan Cox
2009-04-01 14:06 ` [PATCH 12/24] specialix: Auto-load specialix " Alan Cox
2009-04-01 14:06 ` [PATCH 13/24] usb: Auto-load cdc_acm " Alan Cox
2009-04-01 14:06 ` [PATCH 14/24] riscom8: Auto-load riscom8 " Alan Cox
2009-04-01 14:06 ` [PATCH 15/24] ucc: Fix leaky error path Alan Cox
2009-04-01 14:06 ` [PATCH 16/24] isicom: isicom kref leak fix Alan Cox
2009-04-01 14:06 ` Alan Cox [this message]
2009-04-01 14:06 ` [PATCH 18/24] mxser: remove tty_port_tty_get from mxser_check_modem_status Alan Cox
2009-04-01 14:07 ` [PATCH 19/24] jsm: define init function as __devinit Alan Cox
2009-04-01 14:07 ` [PATCH 20/24] jsm: Fix the return variable and removing the unused retval Alan Cox
2009-04-01 14:07 ` [PATCH 21/24] mux: fix build problem Alan Cox
2009-04-01 14:07 ` [PATCH 22/24] icom: remove unused variables Alan Cox
2009-04-01 14:07 ` [PATCH 23/24] PCI: quirks, don't mark one netmos as class other Alan Cox
2009-04-01 14:07 ` [PATCH 24/24] rio: addition has higher precedence than ?: Alan Cox

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=20090401140646.22882.17685.stgit@localhost.localdomain \
    --to=alan@lxorguk.ukuu.org.uk \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@linux-foundation.org \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome