Skip to contentSkip to conversation

Replaces yield() with nicedelay() on

Kernel-janitors Domen Puncer 3 participants 5 messages May 24, 2004 – May 25, 2004 Kernel janitors

lore
Share & tools
lore
#0 lore raw
Quoted 7 lines · Gustavo Franco

Hi,

It's the last REDIFF, but i'm not replacing yield() with schedule_timeout() because there's a nicedelay() (maybe the usecs need to be tuned below) there:

Quoted 6 lines

static inline void nicedelay(unsigned long usecs)

{
        current->state = TASK_INTERRUPTIBLE;
        schedule_timeout(HZ);
        return;
}

And usecs stands for??
Funny thing is that there are actualy uses of this function.

Also, please make -p1 applyable patches.

Quoted 30 lines

Hope that helps,
Gustavo Franco

net/sb1000.c 2004-04-28 20:49:10.000000000 -0300 renamed from net/sb1000.c.orig 2004-04-28 20:50:17.000000000 -0300 +1 -1
@@ -271,7 +271,7 @@
        timeout = jiffies + TimeOutJiffies;
        while (a & 0x80 || a & 0x40) {
                /* a little sleep */
-               yield();
+               nicedelay(10000);
 
 
                a = inb(ioaddr[0] + 7);
                if (time_after_eq(jiffies, timeout)) {
net/sb1000.c 2004-04-28 20:49:10.000000000 -0300 renamed from net/sb1000.c.orig 2004-04-28 20:50:17.000000000 -0300 +1 -1
@@ -295,7 +295,7 @@
        timeout = jiffies + TimeOutJiffies;
        while (a & 0x80 || !(a & 0x40)) {
                /* a little sleep */
-               yield();
+               nicedelay(10000);
 
 
                a = inb(ioaddr[1] + 6);
                if (time_after_eq(jiffies, timeout)) {
Quoted 4 lines

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors

#1 lore raw
Quoted 15 lines · Domen Puncer
Quoted 7 lines · Gustavo Franco

Hi,

It's the last REDIFF, but i'm not replacing yield() with schedule_timeout() because there's a nicedelay() (maybe the usecs need to be tuned below) there:

Quoted 6 lines

static inline void nicedelay(unsigned long usecs)

{
        current->state = TASK_INTERRUPTIBLE;
        schedule_timeout(HZ);
        return;
}
Quoted 2 lines

And usecs stands for??
Funny thing is that there are actualy uses of this function.

Heh, also look at using the msleep function instead of redefining your own function.

thanks,

greg k-h

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors

#2 lore raw
In reply to Domen Puncer
Quoted 17 lines · Greg KH
Quoted 15 lines · Domen Puncer
Quoted 12 lines · Gustavo Franco

Hi,

It's the last REDIFF, but i'm not replacing yield() with schedule_timeout() because there's a nicedelay() (maybe the usecs need to be tuned below) there:

static inline void nicedelay(unsigned long usecs)

{
       current->state = TASK_INTERRUPTIBLE;
       schedule_timeout(HZ);
       return;
}
Quoted 2 lines
Quoted 2 lines

And usecs stands for??
Funny thing is that there are actualy uses of this function.

Yes, it's not my piece of code.

Quoted 3 lines

Heh, also look at using the msleep function instead of redefining your own function.

Are you recommending to use msleep() instead schedule_timeout() to replace yield() ? Only in some cases? What?

Thanks,
Gustavo Franco

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors

#3 lore raw
In reply to Domen Puncer
Quoted 16 lines · Domen Puncer
Quoted 6 lines · Gustavo Franco

Hi,

It's the last REDIFF, but i'm not replacing yield() with schedule_timeout() because there's a nicedelay() (maybe the usecs need to be tuned below) there:

Quoted 6 lines

static inline void nicedelay(unsigned long usecs)

{
       current->state = TASK_INTERRUPTIBLE;
       schedule_timeout(HZ);
       return;
}
Quoted 2 lines

And usecs stands for??
Funny thing is that there are actualy uses of this function.

What do you think about msleep() as greg said?

Quoted 1 line

Also, please make -p1 applyable patches.

I'm preparing my travel to debconf4, i'll be back on 30 May.In early June i'll send rediffied patches.As i said in a previous post it was my error.I was still considering the "old" SubmittingPatches.

Thanks,
Gustavo Franco

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors

#4 lore raw
In reply to Domen Puncer
Quoted 18 lines · Gustavo Franco
Quoted 17 lines · Domen Puncer
Quoted 13 lines · Gustavo Franco

Hi,

It's the last REDIFF, but i'm not replacing yield() with schedule_timeout() because there's a nicedelay() (maybe the usecs need to be tuned below) there:

static inline void nicedelay(unsigned long usecs)

{
      current->state = TASK_INTERRUPTIBLE;
      schedule_timeout(HZ);
      return;
}
Quoted 4 lines
Quoted 2 lines

And usecs stands for??
Funny thing is that there are actualy uses of this function.

What do you think about msleep() as greg said?

msleep is definitely the way to go, it includes set_current_state, and is more readable.

Quoted 7 lines
Quoted 1 line

Also, please make -p1 applyable patches.

I'm preparing my travel to debconf4, i'll be back on 30 May.In early June i'll send rediffied patches.As i said in a previous post it was my error.I was still considering the "old" SubmittingPatches.

Quoted 7 lines

Thanks,
Gustavo Franco

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors

_______________________________________________
Kernel-janitors mailing list
[email protected]
http://lists.osdl.org/mailman/listinfo/kernel-janitors