On Mon, Jun 11, 2012 at 12:32 PM, Shane McDonald <mcdonald.shane@xxxxxxxxx> wrote: > There is a line: > > __setup("cca=", cca_setup); > > that seems to be used to call cca_setup(). I don't know how > the __setup() works, so I'm a little lost on the solution myself. > > Note that, besides the cca_setup(), there is also a routine > setcoherentio() that is defined the same way as cca_setup(). > I suspect that suffers from the same problem as cca_setup(). I've been doing a little learning on how the __setup() macro works. A proposed solution I have is to change from using the __setup() macro to using early_param() to mark the call to cca_setup(). Functions marked with __setup() are executed late in the boot process, whereas those marked with early_param() occur very early in the process. I have tried this out, and it solves my problem, but I'm looking for feedback on whether this is the correct solution. Unless I get any different feedback, I'll send out a patch with my change later today. Shane McDonald