gpt4 book ai didi

linux-kernel - copy_to_user 如何在 s390 上工作?

转载 作者:行者123 更新时间:2023-12-04 06:00:40 28 4
gpt4 key购买 nike

在 s390 架构上,虚拟内核和用户地址空间永远不会同时存在,那么 copy_to_user 怎么办?工作?

最佳答案

copy_to_user s390 在这里实现:linux/arch/s390/include/asm/uaceess.h .
uaccess是指向 copy_[to/from]_user 实际实现的指针。设置在这里(grep uaccess):arch/s390/kernel/setup.c . uaccess 有 4 个实现,取决于模式:
uaccess_mvcos_switch , uaccess_pt , uaccess_mvcosuaccess_std
例如 uaccess_std 在这里:http://lxr.linux.no/#linux+v3.2.1/arch/s390/lib/uaccess_std.c

4 *  Standard user space access functions based on mvcp/mvcs and doing
5 * interesting things in the secondary space mode.

...
82 size_t copy_to_user_std(size_t size, void __user *ptr, const void *x)
83 {
84 unsigned long tmp1, tmp2;
85
86 tmp1 = -256UL;
87 asm volatile(
88 "0: mvcs 0(%0,%1),0(%2),%3\n"
mvcp/ mvcs使用机制:
http://publib.boulder.ibm.com/infocenter/zos/v1r11/topic/com.ibm.zos.r11.ieaa500/iea2a57031.htm

关于linux-kernel - copy_to_user 如何在 s390 上工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8944089/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com