作者fish39 (醒醒吧!!宅宅)
看板LinuxDev
标题[问题] block type driver利用kmalloc
时间Thu Mar 29 23:08:48 2007
首先
在驱动程式方面
#define b_data (8)
//先取得一块记忆空间
data=kmalloc(b_data* sizeof(short int),GFP_KERNEL);
//ioctl
static int blk_ioctl(struct inode* inode, struct file* filp,
unsigned int cmd,unsigned long arg)
switch (cmd)
AAA: copy_from_user(&data,(short int *)arg,16);
break;
在应用程式方面
//准备一些资料
short int BB[8]={12217,2490 ,-1277,-58,882,-36,-304,78};
//想利用ioctl 将资料传送到驱动程式的data里面
ioctl(devfp,AAA,&BB,16);
但是执行後,把data[]里面的值输出,却不是我要的
请问哪边有错呢?
我怀疑是ioctl那边有错,但又不知道哪边
请高手指点一下吧,THX@@
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.120.108.99
1F:推 yhuiyang:user space的ioctl(2),int ioctl(int d,int request,...) 03/29 23:29
2F:→ yhuiyang:确认bbb是你要的request operation... 03/29 23:30
是AAA文章打错了。
※ 编辑: fish39 来自: 140.120.108.99 (03/29 23:33)