Il Mon, Apr 16, 2007 at 10:35:25PM +0200, Tim Dijkstra ha scritto: > On Sun, 15 Apr 2007 02:36:12 +0200 > Luca Tettamanti <[EMAIL PROTECTED]> wrote: > > > > @@ -27,7 +27,16 @@ > > > int s2ram_do(void) > > > { > > > int ret = 0; > > > - FILE *f = fopen("/sys/power/state", "w"); > > > + FILE *f; > > > + > > > + /* If this works we're done. Else we just continue as if nothing > > > + * happened, future kernels will work with /s/p/s. */ > > > + ret = s2ram_do_pmu(); > > > + if (!ret) > > > + return ret; > > > + ret = 0; > > > + > > > + f = fopen("/sys/power/state", "w"); > > > if (!f) { > > > printf("/sys/power/state does not exist; what kind of ninja > > > mutant machine is this?\n"); > > > return ENODEV; > > > > This is what I was trying to avoid. PMU in generic code is not nice. > > I've corrected the 'ARCH' bug above and added headers as per Pavel's > > comment. > > > > Anyway, since PPC actually wants to override (as in "do something > > different") s2ram_do it's also possibile to make it a weak symbol so > > that s2ram-ppc.c can provides its own implementation, will generic code > > contains a sensitive default. I'm attacching a patch with the weak > > symbol version. > > I don't think the s2ram_do_pmu call is that problematic to have in the > generic code. > > The trade of have to make is, do we want to duplicate > the /sys/power/state stuff or do we want an empty function in x86 piece > of the code. > > I think the latter is better choice.
Well, it's possible to do something like this: int s2ram_default_do(void) { use /s/p/s } __attribute__((weak)) int s2ram_do(void) { return s2ram_default_do(); } and then in PPC code: int s2ram_do(void) { poke PMU; return s2ram_default_do(); } Luca -- Se non sei parte della soluzione, allora sei parte del problema. ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Suspend-devel mailing list Suspend-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/suspend-devel