Re: 2.4.17 multiple Oops and file corruption on I845 MB

Andrew Morton (akpm@zip.com.au)
Thu, 24 Jan 2002 12:52:15 -0800


Denis Vlasenko wrote:
>
> Hmm... what about de-inlining __wake_up_common? It is called in several places,
>

The kernel inlines stuff too much, and we're sloshing
vast amounts of stuff across the memory bus needlessly.
I suspect this is a more important issue than all the
stupid FASTCALL, likely() and `goto out_of_line' crud.

I chose to inline __wake_up_common() when I did the
try_to_wake_up() stuff because __wake_up_sync() is almost
never used, and the only other call site was __wake_up().

But now complete() is there too, Its main use will be in
disk driver calls - things like IDE CDROM where `ide_wait'
is used. Also SCSI uses complete() for synchronous operations
such as ioctls, disk spin-up, etc. I don't think scsi
uses complete() on a common path.

So __wake_up() remains the single main user of
__wake_up_common(), so __wake_up_common() should remain inline.

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