402 Star 1.4K Fork 1.3K

GVPopenEuler / kernel

 / 详情

【OLK-5.10】【ACC】ACC相关的特性、bugfix、和cleanup

已完成
任务
创建于  
2022-06-01 20:12

feature:

1、qos的值应在flr复位或设备后复位重置。因此,为每个函数设置 qos 值的最大值。然后用户编写 alg_qos 时更新 qos 的值。
2、如果启用了 qm 时钟门控,速率限制器将不准确。因此,在执行任务之前禁用时钟门控。
3、为HW V3增加了SVA模式的寄存器配置。
4、drivers/crypto/hisilicon/qm.h迁移至include/linux/hisi_acc_qm.h。
5、加速器增加寄存器检测功能。提供了一个工具用户可以通过 Debugfs 检查差分寄存器。
6、在 acc 引擎控制器重置期间添加最后一个单词转储功能。最后的单词在打印过程中报告给打印信息重置。 dmesg 信息包括 qm 调试寄存器和引擎调试寄存器。它可以帮助改进调试能力。
7、hisi_qm_free_qps() 可以一次调用释放多个队列,它是已经出口了。因此,将 hisi_qm_release_qp() 替换为 hisi_qm_free_qps()在 zip_crypto.c 中,并且不要将 hisi_qm_release_qp() 导出到 qm.c 之外。
8、hisi_qm_get_free_qp_num() 是获取函数上的空闲队列号。它是一个简单的函数,仅由hisi_qm_get_available_instances()。此补丁修改为直接获取空闲队列hisi_qm_get_available_instances(),并删除 hisi_qm_get_free_qp_num()。

bugfix:

1、当 hisi_qm_resume() 返回 0 时,表示设备已经启动成功地。如果设备启动失败,hisi_qm_resume() 需要将实际的错误代码返回给调用者,而不是 0。
2、hpre_curve25519_src_init() 在调用之前为“ptr”分配内存内存cmp()。如果 memcmp() 返回 0,该函数将返回 '-EINVAL'不释放内存。
3、在 HW V3 中无需启用 sm4 额外模式。这是修复它。
4、不应在 SEC2 中使用 CRYPTO_ALG_ALLOCATES_MEMORY。 SEC2驱动程序使用预先分配的缓冲区,包括 src sql 池、dst sql 池和其他 qp ctx 资源。 (例如 IV 缓冲区、mac 缓冲区、密钥缓冲)。 SEC2 驱动程序在请求处理期间不分配内存。驱动程序仅在 I/O 期间将软件 sql 映射到分配的硬件 sql。所以这是修复它。

本轮patch回会较多,将patch合入后跑了商用OS ACC模块内核态的大部分用例。其中大部分通过,部分未通过部分均为未适配openeuler的用例(测试平台有记录,图片无法上传)。

评论 (1)

YangJS 创建了任务

Hi xiao_jiang_shui, welcome to the openEuler Community.
I'm the Bot here serving you. You can find the instructions on how to interact with me at Here.
If you have any questions, please contact the SIG: Kernel, and any of the maintainers: @YangYingliang , @pi3orama , @成坚 (CHENG Jian) , @jiaoff , @zhengzengkai , @Qiuuuuu , @刘勇强 , @Xie XiuQi

openeuler-ci-bot 添加了
 
sig/Kernel
标签
YangJS 修改了描述
YangJS 修改了标题
YangJS 修改了描述
YangJS 修改了描述
zhengzengkai 通过openeuler/kernel Pull Request !36任务状态待办的 修改为已完成

登录 后才可以发表评论

状态
负责人
项目
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
预计工期 (小时)
参与者(2)
5329419 openeuler ci bot 1632792936
C
1
https://gitee.com/openeuler/kernel.git
git@gitee.com:openeuler/kernel.git
openeuler
kernel
kernel

搜索帮助