Re: [patch 16/16] block/ps2esdi: replace sleep_on() with wait_event()

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

 



[email protected] wrote:
>
>  Use wait_event() instead of the deprecated sleep_on(). In all
>  replacements, wait_event() expects the condition to *stop* on, so the existing
>  conditional is negated and passed as the parameter. I am not sure if these
>  changes are appropriate, as the condition to pass to wait_event() to guarantee
>  the same behavior; I think this is the best choice, though.
> 
>  Signed-off-by: Nishanth Aravamudan <[email protected]>
>  Signed-off-by: Domen Puncer <[email protected]>
>  ---
>   ps2esdi.c |    7 +++----
>   1 files changed, 3 insertions(+), 4 deletions(-)
> 
>  Index: quilt/drivers/block/ps2esdi.c
>  ===================================================================
>  --- quilt.orig/drivers/block/ps2esdi.c
>  +++ quilt/drivers/block/ps2esdi.c
>  @@ -43,6 +43,7 @@
>   #include <linux/init.h>
>   #include <linux/ioport.h>
>   #include <linux/module.h>
>  +#include <linux/delay.h>
>   
>   #include <asm/system.h>
>   #include <asm/io.h>
>  @@ -461,8 +462,7 @@ static void __init ps2esdi_get_device_cf
>   	cmd_blk[1] = 0;
>   	no_int_yet = TRUE;
>   	ps2esdi_out_cmd_blk(cmd_blk);
>  -	if (no_int_yet)
>  -		sleep_on(&ps2esdi_int);
>  +	wait_event(ps2esdi_int, !no_int_yet);
>   
>   	if (ps2esdi_drives > 1) {
>   		printk("%s: Drive 1\n", DEVICE_NAME);	/*BA */
>  @@ -470,8 +470,7 @@ static void __init ps2esdi_get_device_cf
>   		cmd_blk[1] = 0;
>   		no_int_yet = TRUE;
>   		ps2esdi_out_cmd_blk(cmd_blk);
>  -		if (no_int_yet)
>  -			sleep_on(&ps2esdi_int);
>  +		wait_event(ps2esdi_int, !no_int_yet);
>   	}			/* if second physical drive is present */
>   	return;
>   }

hm, what a racy driver.

	wake_up(&ps2esdi_int);
	no_int_yet = FALSE;

these should be in the other order, no?

Anyway, I think I'll duck this patch until someone can say "it works".

-
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]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux