Subject: re: Upgrade of `struct vnd_ioctl'
To: Martin Husemann <email@example.com>
From: matthew green <firstname.lastname@example.org>
Date: 02/12/2007 08:11:14
On Sun, Feb 11, 2007 at 02:27:22PM -0500, Arnaud Lacombe wrote:
> Does the change needs any compatibility layer to be added ?
Yes - the size of ioctl arguments is encoded in the ioctl cmd code, so you
need to rename the old struct and allocate new numbers for all vnd ioctls
(with the same symbolic name as before), then provide the old (now renamed)
ioctls under the appropriate COMPAT define.
In special cases we decided to break ioctl ABI compatibility - this may be
a case where we could afford it (but I'm mostly indifferent).
this case is important enough to version properly. the failure mode
is inability to use "vnd" with new kernels and old userland which
seems to be too high a price to pay.