* [PATCH v1 0/1] compress/zsda: code cleanup
@ 2025-05-28 7:35 Hanxiao Li
2025-05-28 7:35 ` [PATCH v1 1/1] " Hanxiao Li
0 siblings, 1 reply; 2+ messages in thread
From: Hanxiao Li @ 2025-05-28 7:35 UTC (permalink / raw)
To: dev; +Cc: Hanxiao Li
[-- Attachment #1.1.1: Type: text/plain, Size: 592 bytes --]
v1:
- submit patch
Hanxiao Li (1):
compress/zsda: compress code cleanup
drivers/common/zsda/zsda_device.c | 3 +-
drivers/common/zsda/zsda_device.h | 6 +--
drivers/common/zsda/zsda_qp.h | 48 +++++++++---------
drivers/common/zsda/zsda_qp_common.h | 43 +++++++---------
drivers/compress/zsda/zsda_comp.c | 2 +-
drivers/compress/zsda/zsda_comp.h | 2 +-
drivers/compress/zsda/zsda_comp_pmd.c | 73 ++++++++++++++-------------
drivers/compress/zsda/zsda_comp_pmd.h | 12 +++--
8 files changed, 96 insertions(+), 93 deletions(-)
--
2.27.0
[-- Attachment #1.1.2: Type: text/html , Size: 1059 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
* [PATCH v1 1/1] compress/zsda: code cleanup
2025-05-28 7:35 [PATCH v1 0/1] compress/zsda: code cleanup Hanxiao Li
@ 2025-05-28 7:35 ` Hanxiao Li
0 siblings, 0 replies; 2+ messages in thread
From: Hanxiao Li @ 2025-05-28 7:35 UTC (permalink / raw)
To: dev; +Cc: Hanxiao Li
[-- Attachment #1.1.1: Type: text/plain, Size: 16872 bytes --]
zsda compress code cleanup.
Signed-off-by: Hanxiao Li <li.hanxiao@zte.com.cn>
---
drivers/common/zsda/zsda_device.c | 3 +-
drivers/common/zsda/zsda_device.h | 6 +--
drivers/common/zsda/zsda_qp.h | 48 +++++++++---------
drivers/common/zsda/zsda_qp_common.h | 43 +++++++---------
drivers/compress/zsda/zsda_comp.c | 2 +-
drivers/compress/zsda/zsda_comp.h | 2 +-
drivers/compress/zsda/zsda_comp_pmd.c | 73 ++++++++++++++-------------
drivers/compress/zsda/zsda_comp_pmd.h | 12 +++--
8 files changed, 96 insertions(+), 93 deletions(-)
diff --git a/drivers/common/zsda/zsda_device.c b/drivers/common/zsda/zsda_device.c
index 0d1e772fe4..72f017c699 100644
--- a/drivers/common/zsda/zsda_device.c
+++ b/drivers/common/zsda/zsda_device.c
@@ -213,7 +213,8 @@ static struct rte_pci_driver rte_zsda_pmd = {
.id_table = pci_id_zsda_map,
.drv_flags = RTE_PCI_DRV_NEED_MAPPING,
.probe = zsda_pci_probe,
- .remove = zsda_pci_remove };
+ .remove = zsda_pci_remove
+};
RTE_PMD_REGISTER_PCI(ZSDA_PCI_NAME, rte_zsda_pmd);
RTE_PMD_REGISTER_PCI_TABLE(ZSDA_PCI_NAME, pci_id_zsda_map);
diff --git a/drivers/common/zsda/zsda_device.h b/drivers/common/zsda/zsda_device.h
index 036e157b8d..bb916f1e63 100644
--- a/drivers/common/zsda/zsda_device.h
+++ b/drivers/common/zsda/zsda_device.h
@@ -9,8 +9,8 @@
#include "zsda_comp_pmd.h"
#include "zsda_crypto_pmd.h"
-#define MAX_QPS_ON_FUNCTION 128
-#define ZSDA_DEV_NAME_MAX_LEN 64
+#define MAX_QPS_ON_FUNCTION 128
+#define ZSDA_DEV_NAME_MAX_LEN 64
struct zsda_device_info {
const struct rte_memzone *mz;
@@ -45,8 +45,8 @@ struct zsda_qp_hw {
struct zsda_qp_hw_data data[MAX_QPS_ON_FUNCTION];
};
+/* Data used by all services */
struct zsda_pci_device {
- /* Data used by all services */
char name[ZSDA_DEV_NAME_MAX_LEN];
/**< Name of zsda pci device */
uint8_t zsda_dev_id;
diff --git a/drivers/common/zsda/zsda_qp.h b/drivers/common/zsda/zsda_qp.h
index 486474ee70..4dbefe7bbd 100644
--- a/drivers/common/zsda/zsda_qp.h
+++ b/drivers/common/zsda/zsda_qp.h
@@ -9,43 +9,43 @@
#include "zsda_device.h"
-#define ZSDA_ADMIN_Q_START 0x100
-#define ZSDA_ADMIN_Q_STOP 0x100
+#define ZSDA_ADMIN_Q_START 0x100
+#define ZSDA_ADMIN_Q_STOP 0x100
#define ZSDA_ADMIN_Q_STOP_RESP 0x104
-#define ZSDA_ADMIN_Q_CLR 0x108
+#define ZSDA_ADMIN_Q_CLR 0x108
#define ZSDA_ADMIN_Q_CLR_RESP 0x10C
-#define ZSDA_IO_Q_START 0x200
-#define ZSDA_IO_Q_STOP 0x200
-#define ZSDA_IO_Q_STOP_RESP 0x400
-#define ZSDA_IO_Q_CLR 0x600
-#define ZSDA_IO_Q_CLR_RESP 0x800
+#define ZSDA_IO_Q_START 0x200
+#define ZSDA_IO_Q_STOP 0x200
+#define ZSDA_IO_Q_STOP_RESP 0x400
+#define ZSDA_IO_Q_CLR 0x600
+#define ZSDA_IO_Q_CLR_RESP 0x800
-#define ZSDA_ADMIN_WQ 0x40
-#define ZSDA_ADMIN_WQ_BASE7 0x5C
-#define ZSDA_ADMIN_WQ_CRC 0x5C
+#define ZSDA_ADMIN_WQ 0x40
+#define ZSDA_ADMIN_WQ_BASE7 0x5C
+#define ZSDA_ADMIN_WQ_CRC 0x5C
#define ZSDA_ADMIN_WQ_VERSION 0x5D
-#define ZSDA_ADMIN_WQ_FLAG 0x5E
-#define ZSDA_ADMIN_CQ 0x60
-#define ZSDA_ADMIN_CQ_BASE7 0x7C
-#define ZSDA_ADMIN_CQ_CRC 0x7C
+#define ZSDA_ADMIN_WQ_FLAG 0x5E
+#define ZSDA_ADMIN_CQ 0x60
+#define ZSDA_ADMIN_CQ_BASE7 0x7C
+#define ZSDA_ADMIN_CQ_CRC 0x7C
#define ZSDA_ADMIN_CQ_VERSION 0x7D
-#define ZSDA_ADMIN_CQ_FLAG 0x7E
-#define ZSDA_ADMIN_WQ_TAIL 0x80
-#define ZSDA_ADMIN_CQ_HEAD 0x84
+#define ZSDA_ADMIN_CQ_FLAG 0x7E
+#define ZSDA_ADMIN_WQ_TAIL 0x80
+#define ZSDA_ADMIN_CQ_HEAD 0x84
#define ZSDA_Q_START 0x1
-#define ZSDA_Q_STOP 0x0
+#define ZSDA_Q_STOP 0x0
#define ZSDA_CLEAR_VALID 0x1
#define ZSDA_CLEAR_INVALID 0x0
#define ZSDA_RESP_VALID 0x1
#define ZSDA_RESP_INVALID 0x0
-#define ADMIN_BUF_DATA_LEN 0x1C
-#define ADMIN_BUF_TOTAL_LEN 0x20
+#define ADMIN_BUF_DATA_LEN 0x1C
+#define ADMIN_BUF_TOTAL_LEN 0x20
#define IO_DB_INITIAL_CONFIG 0x1C00
-#define SET_CYCLE 0xff
+#define SET_CYCLE 0xff
#define SET_HEAD_INTI 0x0
#define ZSDA_TIME_SLEEP_US 100
@@ -55,8 +55,8 @@
#define WQ_CSR_UBASE 0x1004
#define CQ_CSR_LBASE 0x1400
#define CQ_CSR_UBASE 0x1404
-#define WQ_TAIL 0x1800
-#define CQ_HEAD 0x1804
+#define WQ_TAIL 0x1800
+#define CQ_HEAD 0x1804
/* CSR write macro */
#define ZSDA_CSR_WR(csrAddr, csrOffset, val) \
diff --git a/drivers/common/zsda/zsda_qp_common.h b/drivers/common/zsda/zsda_qp_common.h
index e291cb1d60..50cfa9a550 100644
--- a/drivers/common/zsda/zsda_qp_common.h
+++ b/drivers/common/zsda/zsda_qp_common.h
@@ -16,10 +16,10 @@
#include "bus_pci_driver.h"
#include "zsda_logs.h"
-#define ZSDA_MAX_DEV RTE_PMD_ZSDA_MAX_PCI_DEVICES
+#define ZSDA_MAX_DEV RTE_PMD_ZSDA_MAX_PCI_DEVICES
-#define ZSDA_SUCCESS 0
-#define ZSDA_FAILED (-1)
+#define ZSDA_SUCCESS 0
+#define ZSDA_FAILED (-1)
enum zsda_service_type {
ZSDA_SERVICE_COMPRESSION = 0,
@@ -36,21 +36,16 @@ enum zsda_service_type {
#define ZSDA_CSR_READ8(addr) rte_read8((addr))
#define ZSDA_CSR_WRITE8(addr, value) rte_write8_relaxed((value), (addr))
-#define NB_DES 512
-#define ZSDA_SGL_MAX_NUMBER 512
-#define COMP_REMOVE_SPACE_LEN 16
+#define NB_DES 512
+#define ZSDA_SGL_MAX_NUMBER 512
+#define COMP_REMOVE_SPACE_LEN 16
#define ZSDA_MAX_DESC 512
#define ZSDA_MAX_CYCLE 256
#define ZSDA_MAX_DEV RTE_PMD_ZSDA_MAX_PCI_DEVICES
-#define MAX_NUM_OPS 0x1FF
+#define MAX_NUM_OPS 0x1FF
#define ZSDA_SGL_FRAGMENT_SIZE 32
-
-#define ZSDA_OPC_COMP_GZIP 0x10 /* Encomp deflate-Gzip */
-#define ZSDA_OPC_COMP_ZLIB 0x11 /* Encomp deflate-Zlib */
-#define ZSDA_OPC_DECOMP_GZIP 0x18 /* Decomp inflate-Gzip */
-#define ZSDA_OPC_DECOMP_ZLIB 0x19 /* Decomp inflate-Zlib */
-#define ZSDA_OPC_INVALID 0xff
+#define ZSDA_OPC_INVALID 0xff
#define CQE_VALID(value) (value & 0x8000)
#define CQE_ERR0(value) (value & 0xFFFF)
@@ -99,10 +94,10 @@ struct __rte_packed_begin zsda_admin_resp_qcfg {
struct zsda_queue {
char memz_name[RTE_MEMZONE_NAMESIZE];
uint8_t *io_addr;
- uint8_t *base_addr; /* Base address */
- rte_iova_t base_phys_addr; /* Queue physical address */
- uint16_t head; /* Shadow copy of the head */
- uint16_t tail; /* Shadow copy of the tail */
+ uint8_t *base_addr; /**< Base address */
+ rte_iova_t base_phys_addr; /**< Queue physical address */
+ uint16_t head; /**< Shadow copy of the head */
+ uint16_t tail; /**< Shadow copy of the tail */
uint16_t modulo_mask;
uint16_t msg_size;
uint16_t queue_size;
@@ -110,27 +105,27 @@ struct zsda_queue {
uint16_t pushed_wqe;
uint8_t hw_queue_number;
- uint32_t csr_head; /* last written head value */
- uint32_t csr_tail; /* last written tail value */
+ uint32_t csr_head; /**< last written head value */
+ uint32_t csr_tail; /**< last written tail value */
uint8_t valid;
uint16_t sid;
};
struct zsda_qp_stat {
- /**< Count of all operations enqueued */
uint64_t enqueued_count;
- /**< Count of all operations dequeued */
+ /**< Count of all operations enqueued */
uint64_t dequeued_count;
+ /**< Count of all operations dequeued */
- /**< Total error count on operations enqueued */
uint64_t enqueue_err_count;
- /**< Total error count on operations dequeued */
+ /**< Total error count on operations enqueued */
uint64_t dequeue_err_count;
+ /**< Total error count on operations dequeued */
};
struct __rte_packed_begin zsda_cqe {
- uint8_t valid; /* cqe_cycle */
+ uint8_t valid; /**< cqe_cycle */
uint8_t op_code;
uint16_t sid;
uint8_t state;
diff --git a/drivers/compress/zsda/zsda_comp.c b/drivers/compress/zsda/zsda_comp.c
index af57c237b2..0d23af48e6 100644
--- a/drivers/compress/zsda/zsda_comp.c
+++ b/drivers/compress/zsda/zsda_comp.c
@@ -138,7 +138,7 @@ zsda_opcode_get(const struct zsda_comp_xform *xform)
}
int
-zsda_comp_request_build(void *op_in, const struct zsda_queue *queue,
+zsda_comp_wqe_build(void *op_in, const struct zsda_queue *queue,
void **op_cookies, const uint16_t new_tail)
{
struct rte_comp_op *op = op_in;
diff --git a/drivers/compress/zsda/zsda_comp.h b/drivers/compress/zsda/zsda_comp.h
index 5aeb72a245..7f6b2a4426 100644
--- a/drivers/compress/zsda/zsda_comp.h
+++ b/drivers/compress/zsda/zsda_comp.h
@@ -35,7 +35,7 @@ struct __rte_packed_begin zsda_wqe_comp {
int zsda_comp_match(const void *op_in);
int zsda_decomp_match(const void *op_in);
-int zsda_comp_request_build(void *op_in, const struct zsda_queue *queue,
+int zsda_comp_wqe_build(void *op_in, const struct zsda_queue *queue,
void **op_cookies, const uint16_t new_tail);
int zsda_decomp_request_build(void *op_in, const struct zsda_queue *queue,
diff --git a/drivers/compress/zsda/zsda_comp_pmd.c b/drivers/compress/zsda/zsda_comp_pmd.c
index e4d0600c0b..80d92a47dd 100644
--- a/drivers/compress/zsda/zsda_comp_pmd.c
+++ b/drivers/compress/zsda/zsda_comp_pmd.c
@@ -14,12 +14,12 @@ static const struct rte_compressdev_capabilities zsda_comp_capabilities[] = {
{
.algo = RTE_COMP_ALGO_DEFLATE,
.comp_feature_flags = RTE_COMP_FF_HUFFMAN_DYNAMIC |
- RTE_COMP_FF_OOP_SGL_IN_SGL_OUT |
- RTE_COMP_FF_OOP_SGL_IN_LB_OUT |
- RTE_COMP_FF_OOP_LB_IN_SGL_OUT |
- RTE_COMP_FF_CRC32_CHECKSUM |
- RTE_COMP_FF_ADLER32_CHECKSUM |
- RTE_COMP_FF_SHAREABLE_PRIV_XFORM,
+ RTE_COMP_FF_OOP_SGL_IN_SGL_OUT |
+ RTE_COMP_FF_OOP_SGL_IN_LB_OUT |
+ RTE_COMP_FF_OOP_LB_IN_SGL_OUT |
+ RTE_COMP_FF_CRC32_CHECKSUM |
+ RTE_COMP_FF_ADLER32_CHECKSUM |
+ RTE_COMP_FF_SHAREABLE_PRIV_XFORM,
.window_size = {.min = 15, .max = 15, .increment = 0},
},
};
@@ -66,8 +66,8 @@ zsda_comp_xform_pool_create(struct zsda_comp_dev_private *comp_dev,
}
static int
-zsda_comp_dev_config(struct rte_compressdev *dev,
- struct rte_compressdev_config *config)
+zsda_dev_config(struct rte_compressdev *dev,
+ struct rte_compressdev_config *config)
{
struct zsda_comp_dev_private *comp_dev = dev->data->dev_private;
@@ -83,7 +83,7 @@ zsda_comp_dev_config(struct rte_compressdev *dev,
}
static int
-zsda_comp_dev_start(struct rte_compressdev *dev)
+zsda_dev_start(struct rte_compressdev *dev)
{
struct zsda_comp_dev_private *comp_dev = dev->data->dev_private;
int ret;
@@ -97,7 +97,7 @@ zsda_comp_dev_start(struct rte_compressdev *dev)
}
static void
-zsda_comp_dev_stop(struct rte_compressdev *dev)
+zsda_dev_stop(struct rte_compressdev *dev)
{
struct zsda_comp_dev_private *comp_dev = dev->data->dev_private;
@@ -105,19 +105,19 @@ zsda_comp_dev_stop(struct rte_compressdev *dev)
}
static int
-zsda_comp_qp_release(struct rte_compressdev *dev, uint16_t queue_pair_id)
+zsda_qp_release(struct rte_compressdev *dev, uint16_t queue_pair_id)
{
return zsda_queue_pair_release(
(struct zsda_qp **)&(dev->data->queue_pairs[queue_pair_id]));
}
static int
-zsda_comp_dev_close(struct rte_compressdev *dev)
+zsda_dev_close(struct rte_compressdev *dev)
{
struct zsda_comp_dev_private *comp_dev = dev->data->dev_private;
for (int i = 0; i < dev->data->nb_queue_pairs; i++)
- zsda_comp_qp_release(dev, i);
+ zsda_qp_release(dev, i);
rte_mempool_free(comp_dev->xformpool);
comp_dev->xformpool = NULL;
@@ -143,8 +143,8 @@ zsda_comp_max_nb_qps(void)
}
static void
-zsda_comp_dev_info_get(struct rte_compressdev *dev,
- struct rte_compressdev_info *info)
+zsda_dev_info_get(struct rte_compressdev *dev,
+ struct rte_compressdev_info *info)
{
struct zsda_comp_dev_private *comp_dev = dev->data->dev_private;
@@ -176,9 +176,9 @@ zsda_comp_stats_reset(struct rte_compressdev *dev)
}
static int
-zsda_comp_private_xform_create(struct rte_compressdev *dev,
- const struct rte_comp_xform *xform,
- void **private_xform)
+zsda_private_xform_create(struct rte_compressdev *dev,
+ const struct rte_comp_xform *xform,
+ void **private_xform)
{
struct zsda_comp_dev_private *zsda = dev->data->dev_private;
@@ -210,8 +210,8 @@ zsda_comp_private_xform_create(struct rte_compressdev *dev,
}
static int
-zsda_comp_private_xform_free(struct rte_compressdev *dev __rte_unused,
- void *private_xform)
+zsda_private_xform_free(struct rte_compressdev *dev __rte_unused,
+ void *private_xform)
{
struct zsda_comp_xform *zsda_xform = private_xform;
@@ -226,8 +226,8 @@ zsda_comp_private_xform_free(struct rte_compressdev *dev __rte_unused,
}
static int
-zsda_comp_qp_setup(struct rte_compressdev *dev, uint16_t qp_id,
- uint32_t max_inflight_ops, int socket_id)
+zsda_qp_setup(struct rte_compressdev *dev, uint16_t qp_id,
+ uint32_t max_inflight_ops, int socket_id)
{
int ret = ZSDA_SUCCESS;
struct zsda_qp *qp_new;
@@ -242,7 +242,7 @@ zsda_comp_qp_setup(struct rte_compressdev *dev, uint16_t qp_id,
nb_des = (nb_des == NB_DES) ? nb_des : NB_DES;
if (*qp_addr != NULL) {
- ret = zsda_comp_qp_release(dev, qp_id);
+ ret = zsda_qp_release(dev, qp_id);
if (ret)
return ret;
}
@@ -261,7 +261,7 @@ zsda_comp_qp_setup(struct rte_compressdev *dev, uint16_t qp_id,
task_q_info.type = ZSDA_SERVICE_COMPRESSION;
task_q_info.service_str = "comp";
- task_q_info.tx_cb = zsda_comp_request_build;
+ task_q_info.tx_cb = zsda_comp_wqe_build;
task_q_info.match = zsda_comp_match;
ret = zsda_task_queue_setup(zsda_pci_dev, qp_new, &task_q_info);
@@ -282,20 +282,19 @@ zsda_comp_qp_setup(struct rte_compressdev *dev, uint16_t qp_id,
}
static struct rte_compressdev_ops compress_zsda_ops = {
-
- .dev_configure = zsda_comp_dev_config,
- .dev_start = zsda_comp_dev_start,
- .dev_stop = zsda_comp_dev_stop,
- .dev_close = zsda_comp_dev_close,
- .dev_infos_get = zsda_comp_dev_info_get,
+ .dev_configure = zsda_dev_config,
+ .dev_start = zsda_dev_start,
+ .dev_stop = zsda_dev_stop,
+ .dev_close = zsda_dev_close,
+ .dev_infos_get = zsda_dev_info_get,
.stats_get = zsda_comp_stats_get,
.stats_reset = zsda_comp_stats_reset,
- .queue_pair_setup = zsda_comp_qp_setup,
- .queue_pair_release = zsda_comp_qp_release,
+ .queue_pair_setup = zsda_qp_setup,
+ .queue_pair_release = zsda_qp_release,
- .private_xform_create = zsda_comp_private_xform_create,
- .private_xform_free = zsda_comp_private_xform_free,
+ .private_xform_create = zsda_private_xform_create,
+ .private_xform_free = zsda_private_xform_free,
};
/* An rte_driver is needed in the registration of the device with compressdev.
@@ -305,7 +304,9 @@ static struct rte_compressdev_ops compress_zsda_ops = {
*/
static const char zsda_comp_drv_name[] = RTE_STR(COMPRESSDEV_NAME_ZSDA_PMD);
static const struct rte_driver compdev_zsda_driver = {
- .name = zsda_comp_drv_name, .alias = zsda_comp_drv_name};
+ .name = zsda_comp_drv_name,
+ .alias = zsda_comp_drv_name
+};
static uint16_t
zsda_comp_pmd_enqueue_op_burst(void *qp, struct rte_comp_op **ops,
@@ -409,7 +410,7 @@ zsda_comp_dev_destroy(struct zsda_pci_device *zsda_pci_dev)
if (rte_eal_process_type() == RTE_PROC_PRIMARY)
rte_memzone_free(zsda_pci_dev->comp_dev->capa_mz);
- zsda_comp_dev_close(comp_dev->compressdev);
+ zsda_dev_close(comp_dev->compressdev);
rte_compressdev_pmd_destroy(comp_dev->compressdev);
zsda_pci_dev->comp_dev = NULL;
diff --git a/drivers/compress/zsda/zsda_comp_pmd.h b/drivers/compress/zsda/zsda_comp_pmd.h
index 1e691d7cc6..51283f02e5 100644
--- a/drivers/compress/zsda/zsda_comp_pmd.h
+++ b/drivers/compress/zsda/zsda_comp_pmd.h
@@ -9,9 +9,15 @@
#include "zsda_qp.h"
-/**< ZSDA Compression PMD driver name */
+/* ZSDA Compression PMD driver name */
#define COMPRESSDEV_NAME_ZSDA_PMD compress_zsda
+#define ZSDA_OPC_COMP_GZIP 0x10 /* Encomp deflate-Gzip */
+#define ZSDA_OPC_COMP_ZLIB 0x11 /* Encomp deflate-Zlib */
+#define ZSDA_OPC_DECOMP_GZIP 0x18 /* Decomp inflate-Gzip */
+#define ZSDA_OPC_DECOMP_ZLIB 0x19 /* Decomp inflate-Zlib */
+
+
/** private data structure for a ZSDA compression device.
* This ZSDA device is a device offering only a compression service,
* there can be one of these on each zsda_pci_device (VF).
@@ -22,11 +28,11 @@ struct zsda_comp_dev_private {
struct rte_compressdev *compressdev;
/**< The pointer to this compression device structure */
const struct rte_compressdev_capabilities *zsda_dev_capabilities;
- /* ZSDA device compression capabilities */
+ /**< ZSDA device compression capabilities */
struct rte_mempool *xformpool;
/**< The device's pool for zsda_comp_xforms */
const struct rte_memzone *capa_mz;
- /* Shared memzone for storing capabilities */
+ /**< Shared memzone for storing capabilities */
};
struct zsda_comp_xform {
--
2.27.0
[-- Attachment #1.1.2: Type: text/html , Size: 35572 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-05-28 7:40 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-05-28 7:35 [PATCH v1 0/1] compress/zsda: code cleanup Hanxiao Li
2025-05-28 7:35 ` [PATCH v1 1/1] " Hanxiao Li
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).