我正在使用此函数将一些结构复制到内核。但是,问题是我必须复制三个数据结构,它们是更大数据结构的一部分。注意:这 3 个数据结构在更大的数据结构中是连续的。
所以,在我的复制用户函数中,我传递第一个数据结构的指针并给出所有 3 个数据结构的长度。但是,当我进入用户空间并打印第二个数据结构的第一个元素时,它会给出一些其他值。
所以,我做错了什么。作为一个解决方案,我进行了 3 次 copt_to_user 调用,令我惊讶的是它运行良好。这是我进行一次 copy_to_user 调用时的问题。
请让我知道可能是什么原因。
嘿,谢谢大家的回答,这是一个对齐问题,但是,更进一步,如果我想填充内部结构,我该怎么做..?例子-
结构化的{
结构 b;
结构 c; //我想把这个结构做成一个填充的,怎么做?
结构d;
}