lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <463AABD7.7090903@acm.org>
Date:	Thu, 03 May 2007 22:43:19 -0500
From:	Corey Minyard <minyard@....org>
To:	Russell King <rmk+lkml@....linux.org.uk>,
	Linux Kernel <linux-kernel@...r.kernel.org>,
	linux-serial@...r.kernel.org
Subject: Re: Serial 8250: clear the lsr_break_flag at open

Russell King wrote:
>
> The backup code is something I never properly reviewed, so no comments
> there.  The tx_empty code I assumed would be a relatively rare event,
> except when closing the port (at which point you don't particularly care
> about errors anyway, not even the break flag since chances are you'll
> miss the following character.)
>   
That "if" statement in the backup code does look a little dodgy, more
than is perhaps required.  I think it's correct, but I need to add
a lock there in my patch to protect the LSR check.
> Given that people might want to poll it for various reasons, I guess
> saving the status away should be done.  However, there's a slight issue
> with working out which character the error is associated with.  Careful
> locking may be the answer to that though.
>   
I think as long as you hold the port lock while you grab the LSR and
set the saved flags it will work.
> As for start_tx, yes, though slightly harder to check.  Maybe the code
> should be modified to reduce the number of potential LSR reads by reading
> the IIR first, and only if that shows no interrupt pending should the LSR
> be read (and the error flags remembered.)
>   
The version of start_tx in 2.6.21 does check IIR first, and it only
checks the LSR if UART_BUG_TXEN is set, so I assume that's not
a big deal.

I'll sleep on it tonight, look it over tomorrow morning, and resend the
patch.

Thanks,

-corey
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ