[linux-pm] Re: [RFC/RFT][PATCH 0/2] swsusp: improve freeing of memory

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi!

> > Remove, I need something to encourage people to move reading/writing
> > of image to userland ;-).
> 
> OK
> I'll do it in a separate patch if you don't mind.

Ok, of course.

> > > > int swsusp_save(struct pbe **pblist, int *nr_pages)
> > > 
> > > Then I'll have to mess up with the assembly parts, which I'd like to avoid
> > > as long as reasonable, especially as far as it gets to the ppc one ...
> > 
> > No, I do not think you have to.
> 
> I mean swsusp_save() is called from the assembly and currently does not take
> any arguments, so I'll have to change the assembly to make it take
> some.

I was confused, sorry, you are right. I was thinking about swsusp_suspend().

> > Make swsusp_save() assign to 
> > pagedir_nosave; that's okay. But swsusp_save is part of snapshot.c,
> > and assembly parts belong logically there, too, so you at least do not
> > export pagedir_nosave uglyness outside snapshot.c.
> 
> swsusp_save() already sets pagedir_nosave and that's not a problem.
> [BTW swsusp_save() could return the number of the image pages,
> but this would change the meaning of swsusp_arch_suspend()'s
> return value too.]
> 
> The problem with pagedir_nosave is on resume, because we have to tell
> the snapshot part where the pagedir starts.  One solution is to make
> swsusp_read() like this:
> 
> int swsusp_read(struct pbe **);
> 
> and pass the pagedir_nosave's address to it.  Analogously, swsusp_write()
> could be made like this:
> 
> int swsusp_write(unsigned int nr_pages);
> 
> and pass nr_pages to write_suspend_image().
> 
> Would that be OK?

Yes. (I'd probably prefer swsusp_write to get both strcut pbe * *and*
nr_pages, so that usage of global variables is reduced).
								Pavel 

-- 
Thanks, Sharp!

[Index of Archives]     [Linux ACPI]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [CPU Freq]     [Kernel Newbies]     [Fedora Kernel]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux