Subject: Re: Upgrade of `struct vnd_ioctl'
To: None <firstname.lastname@example.org>
From: Christos Zoulas <email@example.com>
Date: 02/12/2007 19:49:33
In article <20070212054652.GA24959@baal.public.ulaval.ca>,
Arnaud Lacombe <firstname.lastname@example.org> wrote:
>On Sun, Feb 11, 2007 at 11:46:39PM +0100, Quentin Garnier wrote:
>> On Sun, Feb 11, 2007 at 02:27:22PM -0500, Arnaud Lacombe wrote:
>> > I'd like to change the size of the `vnd_size' member of struct vnd_ioctl
>> > from `int' to `u_quad_t' (or any other unsigned 64bits type, but
>> > u_quad_t is used by `struct vattr->va_size').
>> uint64_t should be preferred for new code.
>> > Does the change needs any compatibility layer to be added ?
>> The process is quite simple: keep a copy of the current structure with
>> a different name (e.g., oldvnd_ioctl), and create new ioctl commands
>> referencing that structure with the name OXXX.
>> #define OVNDIOCSET _IOWR('F', 0, struct oldvnd_ioctl)
>> Then you add an entry in ioctl handler for those commands that do what
>> they're supposed to do (i.e., in that case convert the value), and put
>> those specific parts under COMPAT_40.
>does the attached patch looks good ?
> - Arnaud