Re: [PATCH] CRIS v10 serial driver rewrite take two

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/05/2007 02:11 PM, Jesper Nilsson wrote:
> New and improved serial driver for CRISv10, take two, with improvements
> suggested by Jiri Slaby.
> 
> - Call wait_event_interruptible with a sensible condition.
> - Moved common code for deregistering DMA and IRQ to deinit_port function.
> - Use setup_timer when initializing flush_timer.
> - Convert bitfield for uses_dma_in and uses_dma_out to regular bytes.
> - Removed CVS tags.
> - Removed defines and comments for CRIS_BUF_SIZE and TTY_THRESHOLD_THROTTLE
>   (no longer used).
> - Cleaned up code to pass checkpatch.
> - Add crisv10.h header file.
> - Merge of CRISv10 from Axis internal CVS.
> 
> Signed-off-by: Jesper Nilsson <[email protected]>
> 
> ---
>  drivers/serial/crisv10.c         | 1291 ++++++++++++-------------------------
>  drivers/serial/crisv10.h         |  146 ++++
>  2 files changed, 580 insertions(+), 857 deletions(-)
> 
> diff --git a/drivers/serial/crisv10.c b/drivers/serial/crisv10.c
> index f523cdf..ff9634d 100644
> --- a/drivers/serial/crisv10.c
> +++ b/drivers/serial/crisv10.c
[...]
> @@ -4434,7 +3939,8 @@ block_til_ready(struct tty_struct *tty, struct file * filp,
>  	if (tty_hung_up_p(filp) ||
>  	    (info->flags & ASYNC_CLOSING)) {
>  		if (info->flags & ASYNC_CLOSING)

You can remove this (__^) line now, the test itself is inside
wait_event_interruptible macro yet.

> -			interruptible_sleep_on(&info->close_wait);
> +			wait_event_interruptible(info->close_wait,
> +				!info->flags & ASYNC_CLOSING);

This is still buggy, I intentionally put the parenthesis around "info->flags &
ASYNC_CLOSING" in my previous mail. This way it will ever evaluate to 0 (since
it is as same as (!info->flags) & ASYNC_CLOSING now).

>  #ifdef SERIAL_DO_RESTART
>  		if (info->flags & ASYNC_HUP_NOTIFY)
>  			return -EAGAIN;

regards,
-- 
Jiri Slaby ([email protected])
Faculty of Informatics, Masaryk University
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux