On Thu, 1 Jun 2006, Takashi Iwai wrote:
> At Wed, 31 May 2006 15:10:21 +0200 (CEST),
> Jaroslav Kysela wrote:
> >
> > Hi,
> >
> > I've created a minimalistic TLV implemetation for the driver side.
> > Please, review and comment it. We can add more TLV funcionality in future.
> > It is essential that user space will handle SNDRV_CTL_TLVT_LEVEL type
> > immediately (altough it is not used in the kernel space now), otherwise we
> > cannot group and level TLVs in future.
>
> Please never ever include pointers in the ioctl struct.
> That's to be avoided as much as possible.
> > +struct snd_ctl_tlv {
> > + unsigned int flags;
> > + unsigned int length;
> > + unsigned int value;
> > + /*
> > + * TLV structure is:
> > + * unsigned int length
> > + * unsigned int type - see SNDRV_CTL_TLVT_*
> > + * .... data aligned to sizeof(unsigned int), use
> > + * block_length = (length + (sizeof(unsigned int) - 1)) &
> > + * ~(sizeof(unsigned int) - 1)) ....
> > + */
> > + void *ptr;
> > +};
So what you suggest? Something like 'struct dm_ioctl'
(include/linux/dm-ioctl.h) does? Data are stored after ioctl struct.
It's nearly similar.
Jaroslav
-----
InterNet přes WIFI bez limitu dat, České Budějovice a okolí
Pokryté lokality: Šindlovy Dvory, Mokré, Litvínovice, Pekárenská, Srubec
Perex @ InterNet <internet@xxxxxxxx>
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/alsa-devel