[linux-pm] Re: [RFC/RFT][PATCH -mm] swsusp: userland interface

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

 



Hi!

> > > > > > It returns the number of pages.  Well, it should be written explicitly,
> > > > > > so I'll fix that.
> > > > > 
> > > > > Please always talk to the kernel in bytes. Pagesize is only a kernel
> > > > > internal unit. Sth. like off64_t is fine.
> > > > 
> > > > These are values returned by the kernel, actually.  Of course I can convert them
> > > > to bytes before sending to the user space, if that's preferrable.
> > > > 
> > > > Pavel, what do you think?
> > > 
> > > Bytes, I'd say. It would be nice if preffered image size was in bytes,
> > > too, for consistency.
> > 
> > OK
> 
> Having actually tried to do that I see two reasons for keeping the image size
> in megs.
> 
> First, if that was in bytes, I'd have to pass it via a pointer, because
> unsigned long might overflow on i386.  Then I'd have to use get_user()

Actually unsigned long is okay. We can't do images > 1.5GB, anyway,
on i386.

> to read the value.  However, afterwards I'd have to rescale that value
> to megs for swsusp_shrink_memory().  It's just easier to pass the value
> in megs using the last argument of ioctl() directly (which is consistent
> with the /sys/power/image_size thing, BTW).

Well, I'd be inclined to make image_size in bytes, too. Having
each ioctl/sys file in different units seems wrong.

> Second, if that's in bytes, it would suggest that the memory-shrinking
> mechanism had byte granularity (ie. way off).

Yep, but it is not that bad.

> There also is a reason for which SNAPSHOT_AVAIL_SWAP should return
> the number of pages, IMO.  Namely, if that's in pages, the number is directly
> comparable with the number of image pages which the suspending
> utility can read from the image header.  Otherwise it would have to rescale
> one of these values using PAGE_SIZE, but that's exactly what we'd like
> to avoid.

I see.... We could put #bytes into image header (unsigned long) :-).

Its not too bad one way or another, because uswsusp tools are
intimately tied to kernel, anyway.
							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