Re: [RFD] swsusp problem: Drivers allocate much memory during suspend

Chuck Ebbert
2007-04-13T21:40:53Z

Rafael J. Wysocki wrote:
>
> IMO to really fix the problem, we should let the drivers that need much memory
> for suspending allocate it _before_ the memory shrinker is called. For this
> purpose we can use notifiers that will be called before we start the shrinking
> of memory. Namely, if a driver needs to allocate substantial amount of memory
> for suspending, it can register a notifier that will be called before we try to
> shrink memory. Then, the memory needed by the driver may be allocated in
> this notifier (of course, in that case it will also have to be called if the
> shrinking of memory fails, so that the memory allocated by the driver for
> suspending can be freed) and used in the driver's .suspend() routine.
>

Can't you just put a "prepare to suspend" function pointer in the
bus_type and device_driver structs?