* Re: [Patch] um: fix a build error
@ 2008-07-22 10:58 Eric Sesterhenn
2008-07-22 10:53 ` Alan Cox
0 siblings, 1 reply; 7+ messages in thread
From: Eric Sesterhenn @ 2008-07-22 10:58 UTC (permalink / raw)
To: xiyou.wangcong; +Cc: alan, linux-kernel, user-mode-linux-devel, jdike
I just ran across the same build error, does
something like this look reasonable? Only build
and boot tested.
This fixes the following build error:
CC arch/um/drivers/line.o
arch/um/drivers/line.c: In function ‘line_write_interrupt’:
arch/um/drivers/line.c:366: error: ‘struct tty_ldisc’ has no member
named ‘write_wakeup’
arch/um/drivers/line.c:367: error: ‘struct tty_ldisc’ has no member
named ‘write_wakeup’
make[1]: *** [arch/um/drivers/line.o] Error 1
make: *** [arch/um/drivers] Error 2
Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
--- linux-2.6/arch/um/drivers/line.c.orig 2008-07-22 12:06:17.000000000 +0200
+++ linux-2.6/arch/um/drivers/line.c 2008-07-22 12:06:49.000000000 +0200
@@ -362,10 +362,8 @@ static irqreturn_t line_write_interrupt(
if (tty == NULL)
return IRQ_NONE;
- if (test_bit(TTY_DO_WRITE_WAKEUP, &tty->flags) &&
- (tty->ldisc.write_wakeup != NULL))
- (tty->ldisc.write_wakeup)(tty);
-
+ if (test_bit(TTY_DO_WRITE_WAKEUP, &tty->flags))
+ tty_wakeup(tty);
/*
* BLOCKING mode
* In blocking mode, everything sleeps on tty->write_wait.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Patch] um: fix a build error
2008-07-22 10:58 [Patch] um: fix a build error Eric Sesterhenn
@ 2008-07-22 10:53 ` Alan Cox
2008-07-22 11:25 ` WANG Cong
2008-07-22 17:35 ` WANG Cong
0 siblings, 2 replies; 7+ messages in thread
From: Alan Cox @ 2008-07-22 10:53 UTC (permalink / raw)
To: Eric Sesterhenn
Cc: xiyou.wangcong, linux-kernel, user-mode-linux-devel, jdike
> Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
>
> --- linux-2.6/arch/um/drivers/line.c.orig 2008-07-22 12:06:17.000000000 +0200
> +++ linux-2.6/arch/um/drivers/line.c 2008-07-22 12:06:49.000000000 +0200
> @@ -362,10 +362,8 @@ static irqreturn_t line_write_interrupt(
> if (tty == NULL)
> return IRQ_NONE;
>
> - if (test_bit(TTY_DO_WRITE_WAKEUP, &tty->flags) &&
> - (tty->ldisc.write_wakeup != NULL))
> - (tty->ldisc.write_wakeup)(tty);
> -
> + if (test_bit(TTY_DO_WRITE_WAKEUP, &tty->flags))
> + tty_wakeup(tty);
Sorry I should have been clearer - you don't want the test_bit either.
Acked-by: Alan Cox <alan@redhat.com>
however as it is still right but you can stick my Ack on a version
without the if too.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Patch] um: fix a build error
2008-07-22 10:53 ` Alan Cox
@ 2008-07-22 11:25 ` WANG Cong
2008-07-22 17:35 ` WANG Cong
1 sibling, 0 replies; 7+ messages in thread
From: WANG Cong @ 2008-07-22 11:25 UTC (permalink / raw)
To: Alan Cox
Cc: Eric Sesterhenn, xiyou.wangcong, linux-kernel,
user-mode-linux-devel, jdike
On Tue, Jul 22, 2008 at 11:53:54AM +0100, Alan Cox wrote:
>> Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
>>
>> --- linux-2.6/arch/um/drivers/line.c.orig 2008-07-22 12:06:17.000000000 +0200
>> +++ linux-2.6/arch/um/drivers/line.c 2008-07-22 12:06:49.000000000 +0200
>> @@ -362,10 +362,8 @@ static irqreturn_t line_write_interrupt(
>> if (tty == NULL)
>> return IRQ_NONE;
>>
>> - if (test_bit(TTY_DO_WRITE_WAKEUP, &tty->flags) &&
>> - (tty->ldisc.write_wakeup != NULL))
>> - (tty->ldisc.write_wakeup)(tty);
>> -
>> + if (test_bit(TTY_DO_WRITE_WAKEUP, &tty->flags))
>> + tty_wakeup(tty);
>
>Sorry I should have been clearer - you don't want the test_bit either.
>
Sure, tty_wakeup() already does that test.
And, tty_wakeup() also does wake_up_interruptible(), so I think
the wake_up_interruptible() below can also be removed, probably.
Thanks.
--
The opposite of love is not hate, but indifference.
--Elie Wiesel
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Patch] um: fix a build error
2008-07-22 10:53 ` Alan Cox
2008-07-22 11:25 ` WANG Cong
@ 2008-07-22 17:35 ` WANG Cong
2008-07-22 17:42 ` Alan Cox
1 sibling, 1 reply; 7+ messages in thread
From: WANG Cong @ 2008-07-22 17:35 UTC (permalink / raw)
To: Alan Cox
Cc: Eric Sesterhenn, xiyou.wangcong, linux-kernel,
user-mode-linux-devel, jdike
On Tue, Jul 22, 2008 at 11:53:54AM +0100, Alan Cox wrote:
>> Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
>>
>> --- linux-2.6/arch/um/drivers/line.c.orig 2008-07-22 12:06:17.000000000 +0200
>> +++ linux-2.6/arch/um/drivers/line.c 2008-07-22 12:06:49.000000000 +0200
>> @@ -362,10 +362,8 @@ static irqreturn_t line_write_interrupt(
>> if (tty == NULL)
>> return IRQ_NONE;
>>
>> - if (test_bit(TTY_DO_WRITE_WAKEUP, &tty->flags) &&
>> - (tty->ldisc.write_wakeup != NULL))
>> - (tty->ldisc.write_wakeup)(tty);
>> -
>> + if (test_bit(TTY_DO_WRITE_WAKEUP, &tty->flags))
>> + tty_wakeup(tty);
>
>Sorry I should have been clearer - you don't want the test_bit either.
>
What about the below one?
Signed-off-by: WANG Cong <wangcong@zeuux.org>
---
diff --git a/arch/um/drivers/line.c b/arch/um/drivers/line.c
index 5047490..d741f35 100644
--- a/arch/um/drivers/line.c
+++ b/arch/um/drivers/line.c
@@ -362,19 +362,7 @@ static irqreturn_t line_write_interrupt(int irq, void *data)
if (tty == NULL)
return IRQ_NONE;
- if (test_bit(TTY_DO_WRITE_WAKEUP, &tty->flags) &&
- (tty->ldisc.write_wakeup != NULL))
- (tty->ldisc.write_wakeup)(tty);
-
- /*
- * BLOCKING mode
- * In blocking mode, everything sleeps on tty->write_wait.
- * Sleeping in the console driver would break non-blocking
- * writes.
- */
-
- if (waitqueue_active(&tty->write_wait))
- wake_up_interruptible(&tty->write_wait);
+ tty_wakeup(tty);
return IRQ_HANDLED;
}
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [Patch] um: fix a build error
2008-07-22 17:35 ` WANG Cong
@ 2008-07-22 17:42 ` Alan Cox
0 siblings, 0 replies; 7+ messages in thread
From: Alan Cox @ 2008-07-22 17:42 UTC (permalink / raw)
To: WANG Cong
Cc: Eric Sesterhenn, xiyou.wangcong, linux-kernel,
user-mode-linux-devel, jdike
On Tue, 22 Jul 2008 18:35:09 +0100
WANG Cong <xiyou.wangcong@gmail.com> wrote:
> On Tue, Jul 22, 2008 at 11:53:54AM +0100, Alan Cox wrote:
> >> Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
> >>
> >> --- linux-2.6/arch/um/drivers/line.c.orig 2008-07-22 12:06:17.000000000 +0200
> >> +++ linux-2.6/arch/um/drivers/line.c 2008-07-22 12:06:49.000000000 +0200
> >> @@ -362,10 +362,8 @@ static irqreturn_t line_write_interrupt(
> >> if (tty == NULL)
> >> return IRQ_NONE;
> >>
> >> - if (test_bit(TTY_DO_WRITE_WAKEUP, &tty->flags) &&
> >> - (tty->ldisc.write_wakeup != NULL))
> >> - (tty->ldisc.write_wakeup)(tty);
> >> -
> >> + if (test_bit(TTY_DO_WRITE_WAKEUP, &tty->flags))
> >> + tty_wakeup(tty);
> >
> >Sorry I should have been clearer - you don't want the test_bit either.
> >
>
> What about the below one?
>
> Signed-off-by: WANG Cong <wangcong@zeuux.org>
Acked-by: Alan Cox <alan@redhat.com>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Patch] um: fix a build error
@ 2008-07-21 16:54 WANG Cong
2008-07-21 16:32 ` Alan Cox
0 siblings, 1 reply; 7+ messages in thread
From: WANG Cong @ 2008-07-21 16:54 UTC (permalink / raw)
To: LKML; +Cc: user-mode-linux-devel, jdike
Fixed this build error:
/home/wangcong/Projects/linux-2.6/arch/um/drivers/line.c: In function
‘line_write_interrupt’:
/home/wangcong/Projects/linux-2.6/arch/um/drivers/line.c:366: error:
‘struct tty_ldisc’ has no member named ‘write_wakeup’
/home/wangcong/Projects/linux-2.6/arch/um/drivers/line.c:367: error:
‘struct tty_ldisc’ has no member named ‘write_wakeup’
make[2]: *** [arch/um/drivers/line.o] Error 1
make[1]: *** [arch/um/drivers] Error 2
make: *** [sub-make] Error 2
Sigend-off-by: WANG Cong <wangcong@zeuux.org>
Cc: jdike@addtoit.com
---
diff --git a/arch/um/drivers/line.c b/arch/um/drivers/line.c
index 5047490..c872dad 100644
--- a/arch/um/drivers/line.c
+++ b/arch/um/drivers/line.c
@@ -363,8 +363,8 @@ static irqreturn_t line_write_interrupt(int irq, void *data)
return IRQ_NONE;
if (test_bit(TTY_DO_WRITE_WAKEUP, &tty->flags) &&
- (tty->ldisc.write_wakeup != NULL))
- (tty->ldisc.write_wakeup)(tty);
+ (tty->ldisc.ops->write_wakeup != NULL))
+ (tty->ldisc.ops->write_wakeup)(tty);
/*
* BLOCKING mode
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [Patch] um: fix a build error
2008-07-21 16:54 WANG Cong
@ 2008-07-21 16:32 ` Alan Cox
0 siblings, 0 replies; 7+ messages in thread
From: Alan Cox @ 2008-07-21 16:32 UTC (permalink / raw)
To: WANG Cong; +Cc: LKML, user-mode-linux-devel, jdike
On Mon, 21 Jul 2008 17:54:09 +0100
WANG Cong <xiyou.wangcong@gmail.com> wrote:
>
> Fixed this build error:
>
> /home/wangcong/Projects/linux-2.6/arch/um/drivers/line.c: In function
> ‘line_write_interrupt’:
> /home/wangcong/Projects/linux-2.6/arch/um/drivers/line.c:366: error:
> ‘struct tty_ldisc’ has no member named ‘write_wakeup’
> /home/wangcong/Projects/linux-2.6/arch/um/drivers/line.c:367: error:
> ‘struct tty_ldisc’ has no member named ‘write_wakeup’
> make[2]: *** [arch/um/drivers/line.o] Error 1
> make[1]: *** [arch/um/drivers] Error 2
> make: *** [sub-make] Error 2
>
> Sigend-off-by: WANG Cong <wangcong@zeuux.org>
NAK - drivers shouldn't be poking around in tty innards in the first
place then this wouldn't break. Use tty_wakeup(tty); insteaad
Alan
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2008-07-22 18:00 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-22 10:58 [Patch] um: fix a build error Eric Sesterhenn
2008-07-22 10:53 ` Alan Cox
2008-07-22 11:25 ` WANG Cong
2008-07-22 17:35 ` WANG Cong
2008-07-22 17:42 ` Alan Cox
-- strict thread matches above, loose matches on Subject: below --
2008-07-21 16:54 WANG Cong
2008-07-21 16:32 ` Alan Cox
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox