Re: [PATCH v2 3/3] crypto: hisilicon/qm - defining the device isolation strategy

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


On 2022/6/14 21:29, Greg KH wrote:
On Tue, Jun 14, 2022 at 09:24:08PM +0800, yekai(A) wrote:
 struct hisi_qm {
 	enum qm_hw_ver ver;
 	enum qm_fun_type fun_type;
@@ -335,6 +341,9 @@ struct hisi_qm {
 	struct qm_shaper_factor *factor;
 	u32 mb_qos;
 	u32 type_rate;
+	struct list_head uacce_hw_errs;
+	atomic_t uacce_ref; /* reference of the uacce */

That is not how reference counts work, sorry.  Please use 'struct kref'
for a real reference count, never roll your own.


greg k-h

this atomic_t reference is lightweight than 'struct kref',

It's the same size, why would it be "lighter"?  Why do you need it to be
lighter, what performance issue is there with a kref?

this reference
means whether the task is running. So would it be better to use atomic_t

I do not know, as "running or not running" is a state, not a count or a
reference.  why does this have to be atomic at all?


greg k-h

I will use 'qm_state' instead of reference count by zhangfei Gao's opinion.


[Index of Archives]     [LM Sensors]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux