compat ioctl32 for /dev/snapshot?

Michael Tokarev
2009-05-04T09:29:33Z

Is there any reason why 32-bit uswsusp &Friends does not work
on 64bits kernel?

For one, 32bits s2disk produces the following when trying to
suspend:

ioctl32(s2disk:4134): Unknown cmd fd(4) cmd(400c330d){t:'3';sz:12} arg(ff853554) on /dev/snapshot
ioctl32(s2disk:4134): Unknown cmd fd(4) cmd(4004330a){t:'3';sz:4} arg(00000805) on /dev/snapshot

this is coming from:

error = ioctl(dev, SNAPSHOT_SET_SWAP_AREA, &swap);
if (error && !offset)
error = ioctl(dev, SNAPSHOT_SET_SWAP_FILE, blkdev);

but I guess (just guess!) that other SNAPSHOT_* operations will
also fail the same way.

Is there a reason why those are not in compat_ioctl?

Thanks.

/mjt