Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

crypto: hisilicon/qm - remove unneeded data storage

The dump_show() is used to output hardware information for error locating.
It is not need to apply for memory to temporarily store the converted data.
It can directly output the data. Therefore, remove some unnecessary code.

Signed-off-by: Junchong Pan <panjunchong@hisilicon.com>
Signed-off-by: Yang Shen <shenyang39@huawei.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

authored by

Junchong Pan and committed by
Herbert Xu
1129d2d5 116be08f

+20 -60
+20 -60
drivers/crypto/hisilicon/qm.c
··· 1857 1857 kfree(ctx_addr); 1858 1858 } 1859 1859 1860 - static int dump_show(struct hisi_qm *qm, void *info, 1860 + static void dump_show(struct hisi_qm *qm, void *info, 1861 1861 unsigned int info_size, char *info_name) 1862 1862 { 1863 1863 struct device *dev = &qm->pdev->dev; 1864 - u8 *info_buf, *info_curr = info; 1864 + u8 *info_curr = info; 1865 1865 u32 i; 1866 1866 #define BYTE_PER_DW 4 1867 1867 1868 - info_buf = kzalloc(info_size, GFP_KERNEL); 1869 - if (!info_buf) 1870 - return -ENOMEM; 1871 - 1872 - for (i = 0; i < info_size; i++, info_curr++) { 1873 - if (i % BYTE_PER_DW == 0) 1874 - info_buf[i + 3UL] = *info_curr; 1875 - else if (i % BYTE_PER_DW == 1) 1876 - info_buf[i + 1UL] = *info_curr; 1877 - else if (i % BYTE_PER_DW == 2) 1878 - info_buf[i - 1] = *info_curr; 1879 - else if (i % BYTE_PER_DW == 3) 1880 - info_buf[i - 3] = *info_curr; 1881 - } 1882 - 1883 1868 dev_info(dev, "%s DUMP\n", info_name); 1884 - for (i = 0; i < info_size; i += BYTE_PER_DW) { 1869 + for (i = 0; i < info_size; i += BYTE_PER_DW, info_curr += BYTE_PER_DW) { 1885 1870 pr_info("DW%u: %02X%02X %02X%02X\n", i / BYTE_PER_DW, 1886 - info_buf[i], info_buf[i + 1UL], 1887 - info_buf[i + 2UL], info_buf[i + 3UL]); 1871 + *(info_curr + 3), *(info_curr + 2), *(info_curr + 1), *(info_curr)); 1888 1872 } 1889 - 1890 - kfree(info_buf); 1891 - 1892 - return 0; 1893 1873 } 1894 1874 1895 1875 static int qm_dump_sqc_raw(struct hisi_qm *qm, dma_addr_t dma_addr, u16 qp_id) ··· 1909 1929 if (qm->sqc) { 1910 1930 sqc_curr = qm->sqc + qp_id; 1911 1931 1912 - ret = dump_show(qm, sqc_curr, sizeof(*sqc), 1913 - "SOFT SQC"); 1914 - if (ret) 1915 - dev_info(dev, "Show soft sqc failed!\n"); 1932 + dump_show(qm, sqc_curr, sizeof(*sqc), "SOFT SQC"); 1916 1933 } 1917 1934 up_read(&qm->qps_lock); 1918 1935 1919 - goto err_free_ctx; 1936 + goto free_ctx; 1920 1937 } 1921 1938 1922 - ret = dump_show(qm, sqc, sizeof(*sqc), "SQC"); 1923 - if (ret) 1924 - dev_info(dev, "Show hw sqc failed!\n"); 1939 + dump_show(qm, sqc, sizeof(*sqc), "SQC"); 1925 1940 1926 - err_free_ctx: 1941 + free_ctx: 1927 1942 qm_ctx_free(qm, sizeof(*sqc), sqc, &sqc_dma); 1928 - return ret; 1943 + return 0; 1929 1944 } 1930 1945 1931 1946 static int qm_cqc_dump(struct hisi_qm *qm, const char *s) ··· 1950 1975 if (qm->cqc) { 1951 1976 cqc_curr = qm->cqc + qp_id; 1952 1977 1953 - ret = dump_show(qm, cqc_curr, sizeof(*cqc), 1954 - "SOFT CQC"); 1955 - if (ret) 1956 - dev_info(dev, "Show soft cqc failed!\n"); 1978 + dump_show(qm, cqc_curr, sizeof(*cqc), "SOFT CQC"); 1957 1979 } 1958 1980 up_read(&qm->qps_lock); 1959 1981 1960 - goto err_free_ctx; 1982 + goto free_ctx; 1961 1983 } 1962 1984 1963 - ret = dump_show(qm, cqc, sizeof(*cqc), "CQC"); 1964 - if (ret) 1965 - dev_info(dev, "Show hw cqc failed!\n"); 1985 + dump_show(qm, cqc, sizeof(*cqc), "CQC"); 1966 1986 1967 - err_free_ctx: 1987 + free_ctx: 1968 1988 qm_ctx_free(qm, sizeof(*cqc), cqc, &cqc_dma); 1969 - return ret; 1989 + return 0; 1970 1990 } 1971 1991 1972 1992 static int qm_eqc_aeqc_dump(struct hisi_qm *qm, char *s, size_t size, ··· 1985 2015 if (ret) 1986 2016 goto err_free_ctx; 1987 2017 1988 - ret = dump_show(qm, xeqc, size, name); 1989 - if (ret) 1990 - dev_info(dev, "Show hw %s failed!\n", name); 2018 + dump_show(qm, xeqc, size, name); 1991 2019 1992 2020 err_free_ctx: 1993 2021 qm_ctx_free(qm, size, xeqc, &xeqc_dma); ··· 2034 2066 2035 2067 static int qm_sq_dump(struct hisi_qm *qm, char *s) 2036 2068 { 2037 - struct device *dev = &qm->pdev->dev; 2038 2069 void *sqe, *sqe_curr; 2039 2070 struct hisi_qp *qp; 2040 2071 u32 qp_id, sqe_id; ··· 2053 2086 memset(sqe_curr + qm->debug.sqe_mask_offset, QM_SQE_ADDR_MASK, 2054 2087 qm->debug.sqe_mask_len); 2055 2088 2056 - ret = dump_show(qm, sqe_curr, qm->sqe_size, "SQE"); 2057 - if (ret) 2058 - dev_info(dev, "Show sqe failed!\n"); 2089 + dump_show(qm, sqe_curr, qm->sqe_size, "SQE"); 2059 2090 2060 2091 kfree(sqe); 2061 2092 2062 - return ret; 2093 + return 0; 2063 2094 } 2064 2095 2065 2096 static int qm_cq_dump(struct hisi_qm *qm, char *s) 2066 2097 { 2067 - struct device *dev = &qm->pdev->dev; 2068 2098 struct qm_cqe *cqe_curr; 2069 2099 struct hisi_qp *qp; 2070 2100 u32 qp_id, cqe_id; ··· 2073 2109 2074 2110 qp = &qm->qp_array[qp_id]; 2075 2111 cqe_curr = qp->cqe + cqe_id; 2076 - ret = dump_show(qm, cqe_curr, sizeof(struct qm_cqe), "CQE"); 2077 - if (ret) 2078 - dev_info(dev, "Show cqe failed!\n"); 2112 + dump_show(qm, cqe_curr, sizeof(struct qm_cqe), "CQE"); 2079 2113 2080 - return ret; 2114 + return 0; 2081 2115 } 2082 2116 2083 2117 static int qm_eq_aeq_dump(struct hisi_qm *qm, const char *s, ··· 2112 2150 goto err_unlock; 2113 2151 } 2114 2152 2115 - ret = dump_show(qm, xeqe, size, name); 2116 - if (ret) 2117 - dev_info(dev, "Show %s failed!\n", name); 2153 + dump_show(qm, xeqe, size, name); 2118 2154 2119 2155 err_unlock: 2120 2156 up_read(&qm->qps_lock);