Messages in this thread |  | | Date | Thu, 24 Jan 2002 12:52:15 -0800 | From | Andrew Morton <> | Subject | Re: 2.4.17 multiple Oops and file corruption on I845 MB |
| |
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/
|  |