* [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c
@ 2020-10-30 8:31 Luo Jiaxing
2020-10-30 8:31 ` [PATCH v2 1/5] seq_file: Introduce DEFINE_SHOW_STORE_ATTRIBUTE() helper macro Luo Jiaxing
` (5 more replies)
0 siblings, 6 replies; 14+ messages in thread
From: Luo Jiaxing @ 2020-10-30 8:31 UTC (permalink / raw)
To: akpm, viro, andriy.shevchenko
Cc: linux-kernel, martin.petersen, john.garry, himanshu.madhani,
felipe.balbi, gregkh, uma.shankar, anshuman.gupta, animesh.manna,
linux-usb, linux-scsi, linuxarm
We already own DEFINE_SHOW_ATTRIBUTE() helper macro for defining attribute
for read-only file, but we found many of drivers also want a helper marco for
read-write file too.
So we try to add this macro to help decrease code duplication.
Luo Jiaxing (5):
seq_file: Introduce DEFINE_SHOW_STORE_ATTRIBUTE() helper macro
scsi: hisi_sas: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
scsi: qla2xxx: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
usb: dwc3: debugfs: Introduce DEFINE_SHOW_STORE_ATTRIBUTE
drm/i915/display: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
.../gpu/drm/i915/display/intel_display_debugfs.c | 55 +--------
drivers/scsi/hisi_sas/hisi_sas_main.c | 135 +++------------------
drivers/scsi/qla2xxx/qla_dfs.c | 19 +--
drivers/usb/dwc3/debugfs.c | 52 +-------
include/linux/seq_file.h | 15 +++
5 files changed, 41 insertions(+), 235 deletions(-)
--
2.7.4
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH v2 1/5] seq_file: Introduce DEFINE_SHOW_STORE_ATTRIBUTE() helper macro
2020-10-30 8:31 [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c Luo Jiaxing
@ 2020-10-30 8:31 ` Luo Jiaxing
2020-10-30 8:31 ` [PATCH v2 2/5] scsi: hisi_sas: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs Luo Jiaxing
` (4 subsequent siblings)
5 siblings, 0 replies; 14+ messages in thread
From: Luo Jiaxing @ 2020-10-30 8:31 UTC (permalink / raw)
To: akpm, viro, andriy.shevchenko
Cc: linux-kernel, martin.petersen, john.garry, himanshu.madhani,
felipe.balbi, gregkh, uma.shankar, anshuman.gupta, animesh.manna,
linux-usb, linux-scsi, linuxarm
We already own DEFINE_SHOW_ATTRIBUTE() helper macro for defining attribute
for read-only file, but we found many of drivers want a helper marco for
read-write file too.
So we try to make one to decrease code duplication.
Signed-off-by: Luo Jiaxing <luojiaxing@huawei.com>
---
include/linux/seq_file.h | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/include/linux/seq_file.h b/include/linux/seq_file.h
index 813614d..8a474c8 100644
--- a/include/linux/seq_file.h
+++ b/include/linux/seq_file.h
@@ -191,6 +191,21 @@ static const struct proc_ops __name ## _proc_ops = { \
.proc_release = single_release, \
}
+#define DEFINE_SHOW_STORE_ATTRIBUTE(__name) \
+static int __name ## _open(struct inode *inode, struct file *file) \
+{ \
+ return single_open(file, __name ## _show, inode->i_private); \
+} \
+ \
+static const struct file_operations __name ## _fops = { \
+ .owner = THIS_MODULE, \
+ .open = __name ## _open, \
+ .read = seq_read, \
+ .write = __name ## _write, \
+ .llseek = seq_lseek, \
+ .release = single_release, \
+}
+
static inline struct user_namespace *seq_user_ns(struct seq_file *seq)
{
#ifdef CONFIG_USER_NS
--
2.7.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v2 2/5] scsi: hisi_sas: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
2020-10-30 8:31 [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c Luo Jiaxing
2020-10-30 8:31 ` [PATCH v2 1/5] seq_file: Introduce DEFINE_SHOW_STORE_ATTRIBUTE() helper macro Luo Jiaxing
@ 2020-10-30 8:31 ` Luo Jiaxing
2020-10-30 8:32 ` [PATCH v2 3/5] scsi: qla2xxx: " Luo Jiaxing
` (3 subsequent siblings)
5 siblings, 0 replies; 14+ messages in thread
From: Luo Jiaxing @ 2020-10-30 8:31 UTC (permalink / raw)
To: akpm, viro, andriy.shevchenko
Cc: linux-kernel, martin.petersen, john.garry, himanshu.madhani,
felipe.balbi, gregkh, uma.shankar, anshuman.gupta, animesh.manna,
linux-usb, linux-scsi, linuxarm
Seq instroduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE for
Read-Write file, So we use it at our code to reduce some duplicate code.
Signed-off-by: Luo Jiaxing <luojiaxing@huawei.com>
---
drivers/scsi/hisi_sas/hisi_sas_main.c | 135 ++++------------------------------
1 file changed, 16 insertions(+), 119 deletions(-)
diff --git a/drivers/scsi/hisi_sas/hisi_sas_main.c b/drivers/scsi/hisi_sas/hisi_sas_main.c
index 128583d..b8a6fc9 100644
--- a/drivers/scsi/hisi_sas/hisi_sas_main.c
+++ b/drivers/scsi/hisi_sas/hisi_sas_main.c
@@ -3403,22 +3403,7 @@ static ssize_t hisi_sas_debugfs_bist_linkrate_write(struct file *filp,
return count;
}
-
-static int hisi_sas_debugfs_bist_linkrate_open(struct inode *inode,
- struct file *filp)
-{
- return single_open(filp, hisi_sas_debugfs_bist_linkrate_show,
- inode->i_private);
-}
-
-static const struct file_operations hisi_sas_debugfs_bist_linkrate_ops = {
- .open = hisi_sas_debugfs_bist_linkrate_open,
- .read = seq_read,
- .write = hisi_sas_debugfs_bist_linkrate_write,
- .llseek = seq_lseek,
- .release = single_release,
- .owner = THIS_MODULE,
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(hisi_sas_debugfs_bist_linkrate);
static const struct {
int value;
@@ -3493,22 +3478,7 @@ static ssize_t hisi_sas_debugfs_bist_code_mode_write(struct file *filp,
return count;
}
-
-static int hisi_sas_debugfs_bist_code_mode_open(struct inode *inode,
- struct file *filp)
-{
- return single_open(filp, hisi_sas_debugfs_bist_code_mode_show,
- inode->i_private);
-}
-
-static const struct file_operations hisi_sas_debugfs_bist_code_mode_ops = {
- .open = hisi_sas_debugfs_bist_code_mode_open,
- .read = seq_read,
- .write = hisi_sas_debugfs_bist_code_mode_write,
- .llseek = seq_lseek,
- .release = single_release,
- .owner = THIS_MODULE,
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(hisi_sas_debugfs_bist_code_mode);
static ssize_t hisi_sas_debugfs_bist_phy_write(struct file *filp,
const char __user *buf,
@@ -3542,22 +3512,7 @@ static int hisi_sas_debugfs_bist_phy_show(struct seq_file *s, void *p)
return 0;
}
-
-static int hisi_sas_debugfs_bist_phy_open(struct inode *inode,
- struct file *filp)
-{
- return single_open(filp, hisi_sas_debugfs_bist_phy_show,
- inode->i_private);
-}
-
-static const struct file_operations hisi_sas_debugfs_bist_phy_ops = {
- .open = hisi_sas_debugfs_bist_phy_open,
- .read = seq_read,
- .write = hisi_sas_debugfs_bist_phy_write,
- .llseek = seq_lseek,
- .release = single_release,
- .owner = THIS_MODULE,
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(hisi_sas_debugfs_bist_phy);
static const struct {
int value;
@@ -3621,22 +3576,7 @@ static ssize_t hisi_sas_debugfs_bist_mode_write(struct file *filp,
return count;
}
-
-static int hisi_sas_debugfs_bist_mode_open(struct inode *inode,
- struct file *filp)
-{
- return single_open(filp, hisi_sas_debugfs_bist_mode_show,
- inode->i_private);
-}
-
-static const struct file_operations hisi_sas_debugfs_bist_mode_ops = {
- .open = hisi_sas_debugfs_bist_mode_open,
- .read = seq_read,
- .write = hisi_sas_debugfs_bist_mode_write,
- .llseek = seq_lseek,
- .release = single_release,
- .owner = THIS_MODULE,
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(hisi_sas_debugfs_bist_mode);
static ssize_t hisi_sas_debugfs_bist_enable_write(struct file *filp,
const char __user *buf,
@@ -3677,22 +3617,7 @@ static int hisi_sas_debugfs_bist_enable_show(struct seq_file *s, void *p)
return 0;
}
-
-static int hisi_sas_debugfs_bist_enable_open(struct inode *inode,
- struct file *filp)
-{
- return single_open(filp, hisi_sas_debugfs_bist_enable_show,
- inode->i_private);
-}
-
-static const struct file_operations hisi_sas_debugfs_bist_enable_ops = {
- .open = hisi_sas_debugfs_bist_enable_open,
- .read = seq_read,
- .write = hisi_sas_debugfs_bist_enable_write,
- .llseek = seq_lseek,
- .release = single_release,
- .owner = THIS_MODULE,
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(hisi_sas_debugfs_bist_enable);
static const struct {
char *name;
@@ -3730,21 +3655,7 @@ static int hisi_sas_debugfs_show(struct seq_file *s, void *p)
return 0;
}
-
-static int hisi_sas_debugfs_open(struct inode *inode, struct file *filp)
-{
- return single_open(filp, hisi_sas_debugfs_show,
- inode->i_private);
-}
-
-static const struct file_operations hisi_sas_debugfs_ops = {
- .open = hisi_sas_debugfs_open,
- .read = seq_read,
- .write = hisi_sas_debugfs_write,
- .llseek = seq_lseek,
- .release = single_release,
- .owner = THIS_MODULE,
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(hisi_sas_debugfs);
static ssize_t hisi_sas_debugfs_phy_down_cnt_write(struct file *filp,
const char __user *buf,
@@ -3776,21 +3687,7 @@ static int hisi_sas_debugfs_phy_down_cnt_show(struct seq_file *s, void *p)
return 0;
}
-static int hisi_sas_debugfs_phy_down_cnt_open(struct inode *inode,
- struct file *filp)
-{
- return single_open(filp, hisi_sas_debugfs_phy_down_cnt_show,
- inode->i_private);
-}
-
-static const struct file_operations hisi_sas_debugfs_phy_down_cnt_ops = {
- .open = hisi_sas_debugfs_phy_down_cnt_open,
- .read = seq_read,
- .write = hisi_sas_debugfs_phy_down_cnt_write,
- .llseek = seq_lseek,
- .release = single_release,
- .owner = THIS_MODULE,
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(hisi_sas_debugfs_phy_down_cnt);
void hisi_sas_debugfs_work_handler(struct work_struct *work)
{
@@ -3937,7 +3834,7 @@ static void hisi_sas_debugfs_phy_down_cnt_init(struct hisi_hba *hisi_hba)
snprintf(name, 16, "%d", phy_no);
debugfs_create_file(name, 0600, dir,
&hisi_hba->phy[phy_no],
- &hisi_sas_debugfs_phy_down_cnt_ops);
+ &hisi_sas_debugfs_phy_down_cnt_fops);
}
}
@@ -3950,34 +3847,34 @@ static void hisi_sas_debugfs_bist_init(struct hisi_hba *hisi_hba)
debugfs_create_dir("bist", hisi_hba->debugfs_dir);
debugfs_create_file("link_rate", 0600,
hisi_hba->debugfs_bist_dentry, hisi_hba,
- &hisi_sas_debugfs_bist_linkrate_ops);
+ &hisi_sas_debugfs_bist_linkrate_fops);
debugfs_create_file("code_mode", 0600,
hisi_hba->debugfs_bist_dentry, hisi_hba,
- &hisi_sas_debugfs_bist_code_mode_ops);
+ &hisi_sas_debugfs_bist_code_mode_fops);
debugfs_create_file("fixed_code", 0600,
hisi_hba->debugfs_bist_dentry,
&hisi_hba->debugfs_bist_fixed_code[0],
- &hisi_sas_debugfs_ops);
+ &hisi_sas_debugfs_fops);
debugfs_create_file("fixed_code_1", 0600,
hisi_hba->debugfs_bist_dentry,
&hisi_hba->debugfs_bist_fixed_code[1],
- &hisi_sas_debugfs_ops);
+ &hisi_sas_debugfs_fops);
debugfs_create_file("phy_id", 0600, hisi_hba->debugfs_bist_dentry,
- hisi_hba, &hisi_sas_debugfs_bist_phy_ops);
+ hisi_hba, &hisi_sas_debugfs_bist_phy_fops);
debugfs_create_u32("cnt", 0600, hisi_hba->debugfs_bist_dentry,
&hisi_hba->debugfs_bist_cnt);
debugfs_create_file("loopback_mode", 0600,
hisi_hba->debugfs_bist_dentry,
- hisi_hba, &hisi_sas_debugfs_bist_mode_ops);
+ hisi_hba, &hisi_sas_debugfs_bist_mode_fops);
debugfs_create_file("enable", 0600, hisi_hba->debugfs_bist_dentry,
- hisi_hba, &hisi_sas_debugfs_bist_enable_ops);
+ hisi_hba, &hisi_sas_debugfs_bist_enable_fops);
ports_dentry = debugfs_create_dir("port", hisi_hba->debugfs_bist_dentry);
@@ -3996,7 +3893,7 @@ static void hisi_sas_debugfs_bist_init(struct hisi_hba *hisi_hba)
debugfs_create_file(hisi_sas_debugfs_ffe_name[i].name,
0600, ffe_dentry,
&hisi_hba->debugfs_bist_ffe[phy_no][i],
- &hisi_sas_debugfs_ops);
+ &hisi_sas_debugfs_fops);
}
}
--
2.7.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v2 3/5] scsi: qla2xxx: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
2020-10-30 8:31 [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c Luo Jiaxing
2020-10-30 8:31 ` [PATCH v2 1/5] seq_file: Introduce DEFINE_SHOW_STORE_ATTRIBUTE() helper macro Luo Jiaxing
2020-10-30 8:31 ` [PATCH v2 2/5] scsi: hisi_sas: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs Luo Jiaxing
@ 2020-10-30 8:32 ` Luo Jiaxing
2020-10-31 8:45 ` kernel test robot
2020-10-30 8:32 ` [PATCH v2 4/5] usb: dwc3: debugfs: Introduce DEFINE_SHOW_STORE_ATTRIBUTE Luo Jiaxing
` (2 subsequent siblings)
5 siblings, 1 reply; 14+ messages in thread
From: Luo Jiaxing @ 2020-10-30 8:32 UTC (permalink / raw)
To: akpm, viro, andriy.shevchenko
Cc: linux-kernel, martin.petersen, john.garry, himanshu.madhani,
felipe.balbi, gregkh, uma.shankar, anshuman.gupta, animesh.manna,
linux-usb, linux-scsi, linuxarm
Seq instroduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE for
Read-Write file, So we apply it at qla2xxx to reduce some duplicate code.
Signed-off-by: Luo Jiaxing <luojiaxing@huawei.com>
---
drivers/scsi/qla2xxx/qla_dfs.c | 19 ++-----------------
1 file changed, 2 insertions(+), 17 deletions(-)
diff --git a/drivers/scsi/qla2xxx/qla_dfs.c b/drivers/scsi/qla2xxx/qla_dfs.c
index f89ad32..a5de808 100644
--- a/drivers/scsi/qla2xxx/qla_dfs.c
+++ b/drivers/scsi/qla2xxx/qla_dfs.c
@@ -513,14 +513,6 @@ qla_dfs_naqp_show(struct seq_file *s, void *unused)
return 0;
}
-static int
-qla_dfs_naqp_open(struct inode *inode, struct file *file)
-{
- struct scsi_qla_host *vha = inode->i_private;
-
- return single_open(file, qla_dfs_naqp_show, vha);
-}
-
static ssize_t
qla_dfs_naqp_write(struct file *file, const char __user *buffer,
size_t count, loff_t *pos)
@@ -569,14 +561,7 @@ qla_dfs_naqp_write(struct file *file, const char __user *buffer,
return rc;
}
-static const struct file_operations dfs_naqp_ops = {
- .open = qla_dfs_naqp_open,
- .read = seq_read,
- .llseek = seq_lseek,
- .release = single_release,
- .write = qla_dfs_naqp_write,
-};
-
+DEFINE_SHOW_STORE_ATTRIBUTE(qla_dfs_naqp);
int
qla2x00_dfs_setup(scsi_qla_host_t *vha)
@@ -622,7 +607,7 @@ qla2x00_dfs_setup(scsi_qla_host_t *vha)
if (IS_QLA27XX(ha) || IS_QLA83XX(ha) || IS_QLA28XX(ha)) {
ha->tgt.dfs_naqp = debugfs_create_file("naqp",
- 0400, ha->dfs_dir, vha, &dfs_naqp_ops);
+ 0400, ha->dfs_dir, vha, &qla_dfs_naqp_ops);
if (!ha->tgt.dfs_naqp) {
ql_log(ql_log_warn, vha, 0xd011,
"Unable to create debugFS naqp node.\n");
--
2.7.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v2 4/5] usb: dwc3: debugfs: Introduce DEFINE_SHOW_STORE_ATTRIBUTE
2020-10-30 8:31 [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c Luo Jiaxing
` (2 preceding siblings ...)
2020-10-30 8:32 ` [PATCH v2 3/5] scsi: qla2xxx: " Luo Jiaxing
@ 2020-10-30 8:32 ` Luo Jiaxing
2020-10-30 8:59 ` Felipe Balbi
2020-10-30 8:32 ` [PATCH v2 5/5] drm/i915/display: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs Luo Jiaxing
2020-10-30 8:44 ` [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c Greg KH
5 siblings, 1 reply; 14+ messages in thread
From: Luo Jiaxing @ 2020-10-30 8:32 UTC (permalink / raw)
To: akpm, viro, andriy.shevchenko
Cc: linux-kernel, martin.petersen, john.garry, himanshu.madhani,
felipe.balbi, gregkh, uma.shankar, anshuman.gupta, animesh.manna,
linux-usb, linux-scsi, linuxarm
Seq instroduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE for
Read-Write file, So we apply it at dwc3 debugfs to reduce some duplicate
code.
Signed-off-by: Luo Jiaxing <luojiaxing@huawei.com>
---
drivers/usb/dwc3/debugfs.c | 52 ++++------------------------------------------
1 file changed, 4 insertions(+), 48 deletions(-)
diff --git a/drivers/usb/dwc3/debugfs.c b/drivers/usb/dwc3/debugfs.c
index 5da4f60..2b5de8d 100644
--- a/drivers/usb/dwc3/debugfs.c
+++ b/drivers/usb/dwc3/debugfs.c
@@ -348,11 +348,6 @@ static int dwc3_lsp_show(struct seq_file *s, void *unused)
return 0;
}
-static int dwc3_lsp_open(struct inode *inode, struct file *file)
-{
- return single_open(file, dwc3_lsp_show, inode->i_private);
-}
-
static ssize_t dwc3_lsp_write(struct file *file, const char __user *ubuf,
size_t count, loff_t *ppos)
{
@@ -377,13 +372,7 @@ static ssize_t dwc3_lsp_write(struct file *file, const char __user *ubuf,
return count;
}
-static const struct file_operations dwc3_lsp_fops = {
- .open = dwc3_lsp_open,
- .write = dwc3_lsp_write,
- .read = seq_read,
- .llseek = seq_lseek,
- .release = single_release,
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(dwc3_lsp);
static int dwc3_mode_show(struct seq_file *s, void *unused)
{
@@ -412,11 +401,6 @@ static int dwc3_mode_show(struct seq_file *s, void *unused)
return 0;
}
-static int dwc3_mode_open(struct inode *inode, struct file *file)
-{
- return single_open(file, dwc3_mode_show, inode->i_private);
-}
-
static ssize_t dwc3_mode_write(struct file *file,
const char __user *ubuf, size_t count, loff_t *ppos)
{
@@ -445,13 +429,7 @@ static ssize_t dwc3_mode_write(struct file *file,
return count;
}
-static const struct file_operations dwc3_mode_fops = {
- .open = dwc3_mode_open,
- .write = dwc3_mode_write,
- .read = seq_read,
- .llseek = seq_lseek,
- .release = single_release,
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(dwc3_mode);
static int dwc3_testmode_show(struct seq_file *s, void *unused)
{
@@ -491,11 +469,6 @@ static int dwc3_testmode_show(struct seq_file *s, void *unused)
return 0;
}
-static int dwc3_testmode_open(struct inode *inode, struct file *file)
-{
- return single_open(file, dwc3_testmode_show, inode->i_private);
-}
-
static ssize_t dwc3_testmode_write(struct file *file,
const char __user *ubuf, size_t count, loff_t *ppos)
{
@@ -528,13 +501,7 @@ static ssize_t dwc3_testmode_write(struct file *file,
return count;
}
-static const struct file_operations dwc3_testmode_fops = {
- .open = dwc3_testmode_open,
- .write = dwc3_testmode_write,
- .read = seq_read,
- .llseek = seq_lseek,
- .release = single_release,
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(dwc3_testmode);
static int dwc3_link_state_show(struct seq_file *s, void *unused)
{
@@ -564,11 +531,6 @@ static int dwc3_link_state_show(struct seq_file *s, void *unused)
return 0;
}
-static int dwc3_link_state_open(struct inode *inode, struct file *file)
-{
- return single_open(file, dwc3_link_state_show, inode->i_private);
-}
-
static ssize_t dwc3_link_state_write(struct file *file,
const char __user *ubuf, size_t count, loff_t *ppos)
{
@@ -620,13 +582,7 @@ static ssize_t dwc3_link_state_write(struct file *file,
return count;
}
-static const struct file_operations dwc3_link_state_fops = {
- .open = dwc3_link_state_open,
- .write = dwc3_link_state_write,
- .read = seq_read,
- .llseek = seq_lseek,
- .release = single_release,
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(dwc3_link_state);
struct dwc3_ep_file_map {
const char name[25];
--
2.7.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH v2 5/5] drm/i915/display: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
2020-10-30 8:31 [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c Luo Jiaxing
` (3 preceding siblings ...)
2020-10-30 8:32 ` [PATCH v2 4/5] usb: dwc3: debugfs: Introduce DEFINE_SHOW_STORE_ATTRIBUTE Luo Jiaxing
@ 2020-10-30 8:32 ` Luo Jiaxing
2020-10-31 11:06 ` kernel test robot
2020-10-30 8:44 ` [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c Greg KH
5 siblings, 1 reply; 14+ messages in thread
From: Luo Jiaxing @ 2020-10-30 8:32 UTC (permalink / raw)
To: akpm, viro, andriy.shevchenko
Cc: linux-kernel, martin.petersen, john.garry, himanshu.madhani,
felipe.balbi, gregkh, uma.shankar, anshuman.gupta, animesh.manna,
linux-usb, linux-scsi, linuxarm
Seq instroduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE for
Read-Write file, So we apply it at drm/i915/display to reduce some
duplicate code.
Signed-off-by: Luo Jiaxing <luojiaxing@huawei.com>
---
.../gpu/drm/i915/display/intel_display_debugfs.c | 55 ++--------------------
1 file changed, 4 insertions(+), 51 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_display_debugfs.c b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
index 0bf31f9..8bf839f 100644
--- a/drivers/gpu/drm/i915/display/intel_display_debugfs.c
+++ b/drivers/gpu/drm/i915/display/intel_display_debugfs.c
@@ -1329,21 +1329,7 @@ static int i915_displayport_test_active_show(struct seq_file *m, void *data)
return 0;
}
-static int i915_displayport_test_active_open(struct inode *inode,
- struct file *file)
-{
- return single_open(file, i915_displayport_test_active_show,
- inode->i_private);
-}
-
-static const struct file_operations i915_displayport_test_active_fops = {
- .owner = THIS_MODULE,
- .open = i915_displayport_test_active_open,
- .read = seq_read,
- .llseek = seq_lseek,
- .release = single_release,
- .write = i915_displayport_test_active_write
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(i915_displayport_test_active);
static int i915_displayport_test_data_show(struct seq_file *m, void *data)
{
@@ -1733,19 +1719,7 @@ static ssize_t i915_hpd_storm_ctl_write(struct file *file,
return len;
}
-static int i915_hpd_storm_ctl_open(struct inode *inode, struct file *file)
-{
- return single_open(file, i915_hpd_storm_ctl_show, inode->i_private);
-}
-
-static const struct file_operations i915_hpd_storm_ctl_fops = {
- .owner = THIS_MODULE,
- .open = i915_hpd_storm_ctl_open,
- .read = seq_read,
- .llseek = seq_lseek,
- .release = single_release,
- .write = i915_hpd_storm_ctl_write
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(i915_hpd_storm_ctl);
static int i915_hpd_short_storm_ctl_show(struct seq_file *m, void *data)
{
@@ -1811,14 +1785,7 @@ static ssize_t i915_hpd_short_storm_ctl_write(struct file *file,
return len;
}
-static const struct file_operations i915_hpd_short_storm_ctl_fops = {
- .owner = THIS_MODULE,
- .open = i915_hpd_short_storm_ctl_open,
- .read = seq_read,
- .llseek = seq_lseek,
- .release = single_release,
- .write = i915_hpd_short_storm_ctl_write,
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(i915_hpd_short_storm_ctl);
static int i915_drrs_ctl_set(void *data, u64 val)
{
@@ -2181,21 +2148,7 @@ static ssize_t i915_dsc_fec_support_write(struct file *file,
return len;
}
-static int i915_dsc_fec_support_open(struct inode *inode,
- struct file *file)
-{
- return single_open(file, i915_dsc_fec_support_show,
- inode->i_private);
-}
-
-static const struct file_operations i915_dsc_fec_support_fops = {
- .owner = THIS_MODULE,
- .open = i915_dsc_fec_support_open,
- .read = seq_read,
- .llseek = seq_lseek,
- .release = single_release,
- .write = i915_dsc_fec_support_write
-};
+DEFINE_SHOW_STORE_ATTRIBUTE(i915_dsc_fec_support);
/**
* intel_connector_debugfs_add - add i915 specific connector debugfs files
--
2.7.4
^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c
2020-10-30 8:31 [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c Luo Jiaxing
` (4 preceding siblings ...)
2020-10-30 8:32 ` [PATCH v2 5/5] drm/i915/display: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs Luo Jiaxing
@ 2020-10-30 8:44 ` Greg KH
2020-11-03 8:19 ` luojiaxing
5 siblings, 1 reply; 14+ messages in thread
From: Greg KH @ 2020-10-30 8:44 UTC (permalink / raw)
To: Luo Jiaxing
Cc: akpm, viro, andriy.shevchenko, linux-kernel, martin.petersen,
john.garry, himanshu.madhani, felipe.balbi, uma.shankar,
anshuman.gupta, animesh.manna, linux-usb, linux-scsi, linuxarm
On Fri, Oct 30, 2020 at 04:31:57PM +0800, Luo Jiaxing wrote:
> We already own DEFINE_SHOW_ATTRIBUTE() helper macro for defining attribute
> for read-only file, but we found many of drivers also want a helper marco for
> read-write file too.
>
> So we try to add this macro to help decrease code duplication.
>
> Luo Jiaxing (5):
> seq_file: Introduce DEFINE_SHOW_STORE_ATTRIBUTE() helper macro
> scsi: hisi_sas: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
> scsi: qla2xxx: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
> usb: dwc3: debugfs: Introduce DEFINE_SHOW_STORE_ATTRIBUTE
> drm/i915/display: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
What changed from v1?
thanks,
greg k-h
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 4/5] usb: dwc3: debugfs: Introduce DEFINE_SHOW_STORE_ATTRIBUTE
2020-10-30 8:32 ` [PATCH v2 4/5] usb: dwc3: debugfs: Introduce DEFINE_SHOW_STORE_ATTRIBUTE Luo Jiaxing
@ 2020-10-30 8:59 ` Felipe Balbi
0 siblings, 0 replies; 14+ messages in thread
From: Felipe Balbi @ 2020-10-30 8:59 UTC (permalink / raw)
To: Luo Jiaxing, akpm, viro, andriy.shevchenko
Cc: linux-kernel, martin.petersen, john.garry, himanshu.madhani,
gregkh, uma.shankar, anshuman.gupta, animesh.manna, linux-usb,
linux-scsi, linuxarm
[-- Attachment #1: Type: text/plain, Size: 813 bytes --]
Luo Jiaxing <luojiaxing@huawei.com> writes:
> Seq instroduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE for
^^^^^^^^^^ ^^^^^
introduce macro
> Read-Write file, So we apply it at dwc3 debugfs to reduce some duplicate
^^ ^^^^^^^^^
so duplicated
> code.
to be fair, your commit is doing more than what it claims. Maybe update
commit log with a "while at that, also use DEFINE_SHOW_ATTRIBUTE() where
possible".
> Signed-off-by: Luo Jiaxing <luojiaxing@huawei.com>
other than that, this looks okay. Since it depends on the definition of
DEFINE_SHOW_STORE_ATTRIBUTE:
Acked-by: Felipe Balbi <balbi@kernel.org>
--
balbi
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 857 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 3/5] scsi: qla2xxx: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
2020-10-30 8:32 ` [PATCH v2 3/5] scsi: qla2xxx: " Luo Jiaxing
@ 2020-10-31 8:45 ` kernel test robot
0 siblings, 0 replies; 14+ messages in thread
From: kernel test robot @ 2020-10-31 8:45 UTC (permalink / raw)
To: Luo Jiaxing, akpm, viro, andriy.shevchenko
Cc: kbuild-all, linux-kernel, martin.petersen, john.garry,
himanshu.madhani, felipe.balbi, gregkh, uma.shankar
[-- Attachment #1: Type: text/plain, Size: 4791 bytes --]
Hi Luo,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on mkp-scsi/for-next]
[also build test ERROR on scsi/for-next linus/master v5.10-rc1 next-20201030]
[cannot apply to hnaz-linux-mm/master]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Luo-Jiaxing/Introduce-a-new-helper-marco-DEFINE_SHOW_STORE_ATTRIBUTE-at-seq_file-c/20201030-165139
base: https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git for-next
config: x86_64-rhel (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/0day-ci/linux/commit/d38ab37c23ac876ce2ecb40c13d4a0697c7462ae
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Luo-Jiaxing/Introduce-a-new-helper-marco-DEFINE_SHOW_STORE_ATTRIBUTE-at-seq_file-c/20201030-165139
git checkout d38ab37c23ac876ce2ecb40c13d4a0697c7462ae
# save the attached .config to linux build tree
make W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
drivers/scsi/qla2xxx/qla_dfs.c: In function 'qla2x00_dfs_setup':
>> drivers/scsi/qla2xxx/qla_dfs.c:558:32: error: 'qla_dfs_naqp_ops' undeclared (first use in this function); did you mean 'qla_dfs_naqp_fops'?
558 | 0400, ha->dfs_dir, vha, &qla_dfs_naqp_ops);
| ^~~~~~~~~~~~~~~~
| qla_dfs_naqp_fops
drivers/scsi/qla2xxx/qla_dfs.c:558:32: note: each undeclared identifier is reported only once for each function it appears in
In file included from include/scsi/scsi_host.h:10,
from drivers/scsi/qla2xxx/qla_def.h:30,
from drivers/scsi/qla2xxx/qla_dfs.c:6:
At top level:
drivers/scsi/qla2xxx/qla_dfs.c:512:29: warning: 'qla_dfs_naqp_fops' defined but not used [-Wunused-const-variable=]
512 | DEFINE_SHOW_STORE_ATTRIBUTE(qla_dfs_naqp);
| ^~~~~~~~~~~~
include/linux/seq_file.h:200:37: note: in definition of macro 'DEFINE_SHOW_STORE_ATTRIBUTE'
200 | static const struct file_operations __name ## _fops = { \
| ^~~~~~
vim +558 drivers/scsi/qla2xxx/qla_dfs.c
513
514 int
515 qla2x00_dfs_setup(scsi_qla_host_t *vha)
516 {
517 struct qla_hw_data *ha = vha->hw;
518
519 if (!IS_QLA25XX(ha) && !IS_QLA81XX(ha) && !IS_QLA83XX(ha) &&
520 !IS_QLA27XX(ha) && !IS_QLA28XX(ha))
521 goto out;
522 if (!ha->fce)
523 goto out;
524
525 if (qla2x00_dfs_root)
526 goto create_dir;
527
528 atomic_set(&qla2x00_dfs_root_count, 0);
529 qla2x00_dfs_root = debugfs_create_dir(QLA2XXX_DRIVER_NAME, NULL);
530
531 create_dir:
532 if (ha->dfs_dir)
533 goto create_nodes;
534
535 mutex_init(&ha->fce_mutex);
536 ha->dfs_dir = debugfs_create_dir(vha->host_str, qla2x00_dfs_root);
537
538 atomic_inc(&qla2x00_dfs_root_count);
539
540 create_nodes:
541 ha->dfs_fw_resource_cnt = debugfs_create_file("fw_resource_count",
542 S_IRUSR, ha->dfs_dir, vha, &qla_dfs_fw_resource_cnt_fops);
543
544 ha->dfs_tgt_counters = debugfs_create_file("tgt_counters", S_IRUSR,
545 ha->dfs_dir, vha, &qla_dfs_tgt_counters_fops);
546
547 ha->tgt.dfs_tgt_port_database = debugfs_create_file("tgt_port_database",
548 S_IRUSR, ha->dfs_dir, vha, &qla2x00_dfs_tgt_port_database_fops);
549
550 ha->dfs_fce = debugfs_create_file("fce", S_IRUSR, ha->dfs_dir, vha,
551 &dfs_fce_ops);
552
553 ha->tgt.dfs_tgt_sess = debugfs_create_file("tgt_sess",
554 S_IRUSR, ha->dfs_dir, vha, &qla2x00_dfs_tgt_sess_fops);
555
556 if (IS_QLA27XX(ha) || IS_QLA83XX(ha) || IS_QLA28XX(ha)) {
557 ha->tgt.dfs_naqp = debugfs_create_file("naqp",
> 558 0400, ha->dfs_dir, vha, &qla_dfs_naqp_ops);
559 if (!ha->tgt.dfs_naqp) {
560 ql_log(ql_log_warn, vha, 0xd011,
561 "Unable to create debugFS naqp node.\n");
562 goto out;
563 }
564 }
565 vha->dfs_rport_root = debugfs_create_dir("rports", ha->dfs_dir);
566 if (!vha->dfs_rport_root) {
567 ql_log(ql_log_warn, vha, 0xd012,
568 "Unable to create debugFS rports node.\n");
569 goto out;
570 }
571 out:
572 return 0;
573 }
574
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 45913 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 3/5] scsi: qla2xxx: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
@ 2020-10-31 8:45 ` kernel test robot
0 siblings, 0 replies; 14+ messages in thread
From: kernel test robot @ 2020-10-31 8:45 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 4906 bytes --]
Hi Luo,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on mkp-scsi/for-next]
[also build test ERROR on scsi/for-next linus/master v5.10-rc1 next-20201030]
[cannot apply to hnaz-linux-mm/master]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Luo-Jiaxing/Introduce-a-new-helper-marco-DEFINE_SHOW_STORE_ATTRIBUTE-at-seq_file-c/20201030-165139
base: https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git for-next
config: x86_64-rhel (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/0day-ci/linux/commit/d38ab37c23ac876ce2ecb40c13d4a0697c7462ae
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Luo-Jiaxing/Introduce-a-new-helper-marco-DEFINE_SHOW_STORE_ATTRIBUTE-at-seq_file-c/20201030-165139
git checkout d38ab37c23ac876ce2ecb40c13d4a0697c7462ae
# save the attached .config to linux build tree
make W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
drivers/scsi/qla2xxx/qla_dfs.c: In function 'qla2x00_dfs_setup':
>> drivers/scsi/qla2xxx/qla_dfs.c:558:32: error: 'qla_dfs_naqp_ops' undeclared (first use in this function); did you mean 'qla_dfs_naqp_fops'?
558 | 0400, ha->dfs_dir, vha, &qla_dfs_naqp_ops);
| ^~~~~~~~~~~~~~~~
| qla_dfs_naqp_fops
drivers/scsi/qla2xxx/qla_dfs.c:558:32: note: each undeclared identifier is reported only once for each function it appears in
In file included from include/scsi/scsi_host.h:10,
from drivers/scsi/qla2xxx/qla_def.h:30,
from drivers/scsi/qla2xxx/qla_dfs.c:6:
At top level:
drivers/scsi/qla2xxx/qla_dfs.c:512:29: warning: 'qla_dfs_naqp_fops' defined but not used [-Wunused-const-variable=]
512 | DEFINE_SHOW_STORE_ATTRIBUTE(qla_dfs_naqp);
| ^~~~~~~~~~~~
include/linux/seq_file.h:200:37: note: in definition of macro 'DEFINE_SHOW_STORE_ATTRIBUTE'
200 | static const struct file_operations __name ## _fops = { \
| ^~~~~~
vim +558 drivers/scsi/qla2xxx/qla_dfs.c
513
514 int
515 qla2x00_dfs_setup(scsi_qla_host_t *vha)
516 {
517 struct qla_hw_data *ha = vha->hw;
518
519 if (!IS_QLA25XX(ha) && !IS_QLA81XX(ha) && !IS_QLA83XX(ha) &&
520 !IS_QLA27XX(ha) && !IS_QLA28XX(ha))
521 goto out;
522 if (!ha->fce)
523 goto out;
524
525 if (qla2x00_dfs_root)
526 goto create_dir;
527
528 atomic_set(&qla2x00_dfs_root_count, 0);
529 qla2x00_dfs_root = debugfs_create_dir(QLA2XXX_DRIVER_NAME, NULL);
530
531 create_dir:
532 if (ha->dfs_dir)
533 goto create_nodes;
534
535 mutex_init(&ha->fce_mutex);
536 ha->dfs_dir = debugfs_create_dir(vha->host_str, qla2x00_dfs_root);
537
538 atomic_inc(&qla2x00_dfs_root_count);
539
540 create_nodes:
541 ha->dfs_fw_resource_cnt = debugfs_create_file("fw_resource_count",
542 S_IRUSR, ha->dfs_dir, vha, &qla_dfs_fw_resource_cnt_fops);
543
544 ha->dfs_tgt_counters = debugfs_create_file("tgt_counters", S_IRUSR,
545 ha->dfs_dir, vha, &qla_dfs_tgt_counters_fops);
546
547 ha->tgt.dfs_tgt_port_database = debugfs_create_file("tgt_port_database",
548 S_IRUSR, ha->dfs_dir, vha, &qla2x00_dfs_tgt_port_database_fops);
549
550 ha->dfs_fce = debugfs_create_file("fce", S_IRUSR, ha->dfs_dir, vha,
551 &dfs_fce_ops);
552
553 ha->tgt.dfs_tgt_sess = debugfs_create_file("tgt_sess",
554 S_IRUSR, ha->dfs_dir, vha, &qla2x00_dfs_tgt_sess_fops);
555
556 if (IS_QLA27XX(ha) || IS_QLA83XX(ha) || IS_QLA28XX(ha)) {
557 ha->tgt.dfs_naqp = debugfs_create_file("naqp",
> 558 0400, ha->dfs_dir, vha, &qla_dfs_naqp_ops);
559 if (!ha->tgt.dfs_naqp) {
560 ql_log(ql_log_warn, vha, 0xd011,
561 "Unable to create debugFS naqp node.\n");
562 goto out;
563 }
564 }
565 vha->dfs_rport_root = debugfs_create_dir("rports", ha->dfs_dir);
566 if (!vha->dfs_rport_root) {
567 ql_log(ql_log_warn, vha, 0xd012,
568 "Unable to create debugFS rports node.\n");
569 goto out;
570 }
571 out:
572 return 0;
573 }
574
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 45913 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 5/5] drm/i915/display: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
2020-10-30 8:32 ` [PATCH v2 5/5] drm/i915/display: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs Luo Jiaxing
@ 2020-10-31 11:06 ` kernel test robot
0 siblings, 0 replies; 14+ messages in thread
From: kernel test robot @ 2020-10-31 11:06 UTC (permalink / raw)
To: Luo Jiaxing, akpm, viro, andriy.shevchenko
Cc: kbuild-all, linux-kernel, martin.petersen, john.garry,
himanshu.madhani, felipe.balbi, gregkh, uma.shankar
[-- Attachment #1: Type: text/plain, Size: 2630 bytes --]
Hi Luo,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on mkp-scsi/for-next]
[also build test ERROR on scsi/for-next linus/master v5.10-rc1 next-20201030]
[cannot apply to hnaz-linux-mm/master]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Luo-Jiaxing/Introduce-a-new-helper-marco-DEFINE_SHOW_STORE_ATTRIBUTE-at-seq_file-c/20201030-165139
base: https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git for-next
config: x86_64-rhel (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/0day-ci/linux/commit/874380b0aa5ca9c7b02e5d7a1aa9a232c46999d9
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Luo-Jiaxing/Introduce-a-new-helper-marco-DEFINE_SHOW_STORE_ATTRIBUTE-at-seq_file-c/20201030-165139
git checkout 874380b0aa5ca9c7b02e5d7a1aa9a232c46999d9
# save the attached .config to linux build tree
make W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
In file included from include/drm/drm_debugfs.h:36,
from drivers/gpu/drm/i915/display/intel_display_debugfs.c:6:
>> drivers/gpu/drm/i915/display/intel_display_debugfs.c:1788:29: error: redefinition of 'i915_hpd_short_storm_ctl_open'
1788 | DEFINE_SHOW_STORE_ATTRIBUTE(i915_hpd_short_storm_ctl);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/seq_file.h:195:12: note: in definition of macro 'DEFINE_SHOW_STORE_ATTRIBUTE'
195 | static int __name ## _open(struct inode *inode, struct file *file) \
| ^~~~~~
drivers/gpu/drm/i915/display/intel_display_debugfs.c:1735:1: note: previous definition of 'i915_hpd_short_storm_ctl_open' was here
1735 | i915_hpd_short_storm_ctl_open(struct inode *inode, struct file *file)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/i915/display/intel_display_debugfs.c:1735:1: warning: 'i915_hpd_short_storm_ctl_open' defined but not used [-Wunused-function]
vim +/i915_hpd_short_storm_ctl_open +1788 drivers/gpu/drm/i915/display/intel_display_debugfs.c
1787
> 1788 DEFINE_SHOW_STORE_ATTRIBUTE(i915_hpd_short_storm_ctl);
1789
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 45913 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 5/5] drm/i915/display: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
@ 2020-10-31 11:06 ` kernel test robot
0 siblings, 0 replies; 14+ messages in thread
From: kernel test robot @ 2020-10-31 11:06 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 2682 bytes --]
Hi Luo,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on mkp-scsi/for-next]
[also build test ERROR on scsi/for-next linus/master v5.10-rc1 next-20201030]
[cannot apply to hnaz-linux-mm/master]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Luo-Jiaxing/Introduce-a-new-helper-marco-DEFINE_SHOW_STORE_ATTRIBUTE-at-seq_file-c/20201030-165139
base: https://git.kernel.org/pub/scm/linux/kernel/git/mkp/scsi.git for-next
config: x86_64-rhel (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/0day-ci/linux/commit/874380b0aa5ca9c7b02e5d7a1aa9a232c46999d9
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Luo-Jiaxing/Introduce-a-new-helper-marco-DEFINE_SHOW_STORE_ATTRIBUTE-at-seq_file-c/20201030-165139
git checkout 874380b0aa5ca9c7b02e5d7a1aa9a232c46999d9
# save the attached .config to linux build tree
make W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
In file included from include/drm/drm_debugfs.h:36,
from drivers/gpu/drm/i915/display/intel_display_debugfs.c:6:
>> drivers/gpu/drm/i915/display/intel_display_debugfs.c:1788:29: error: redefinition of 'i915_hpd_short_storm_ctl_open'
1788 | DEFINE_SHOW_STORE_ATTRIBUTE(i915_hpd_short_storm_ctl);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/seq_file.h:195:12: note: in definition of macro 'DEFINE_SHOW_STORE_ATTRIBUTE'
195 | static int __name ## _open(struct inode *inode, struct file *file) \
| ^~~~~~
drivers/gpu/drm/i915/display/intel_display_debugfs.c:1735:1: note: previous definition of 'i915_hpd_short_storm_ctl_open' was here
1735 | i915_hpd_short_storm_ctl_open(struct inode *inode, struct file *file)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/i915/display/intel_display_debugfs.c:1735:1: warning: 'i915_hpd_short_storm_ctl_open' defined but not used [-Wunused-function]
vim +/i915_hpd_short_storm_ctl_open +1788 drivers/gpu/drm/i915/display/intel_display_debugfs.c
1787
> 1788 DEFINE_SHOW_STORE_ATTRIBUTE(i915_hpd_short_storm_ctl);
1789
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 45913 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c
2020-10-30 8:44 ` [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c Greg KH
@ 2020-11-03 8:19 ` luojiaxing
2020-11-03 8:27 ` Greg KH
0 siblings, 1 reply; 14+ messages in thread
From: luojiaxing @ 2020-11-03 8:19 UTC (permalink / raw)
To: Greg KH
Cc: akpm, viro, andriy.shevchenko, linux-kernel, martin.petersen,
john.garry, himanshu.madhani, felipe.balbi, uma.shankar,
anshuman.gupta, animesh.manna, linux-usb, linux-scsi, linuxarm
Hi
On 2020/10/30 16:44, Greg KH wrote:
> On Fri, Oct 30, 2020 at 04:31:57PM +0800, Luo Jiaxing wrote:
>> We already own DEFINE_SHOW_ATTRIBUTE() helper macro for defining attribute
>> for read-only file, but we found many of drivers also want a helper marco for
>> read-write file too.
>>
>> So we try to add this macro to help decrease code duplication.
>>
>> Luo Jiaxing (5):
>> seq_file: Introduce DEFINE_SHOW_STORE_ATTRIBUTE() helper macro
>> scsi: hisi_sas: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
>> scsi: qla2xxx: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
>> usb: dwc3: debugfs: Introduce DEFINE_SHOW_STORE_ATTRIBUTE
>> drm/i915/display: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
> What changed from v1?
Sorry, I should add a commit for the change.
In v1, Andy pointed out that the old name of DEFINE_STORE_ATTRIBUTE was
easily misunderstood as a write-only file rather than a read-write file.
Therefore, it is changed to DEFINE_SHOW_STORE_ATTRIBUTE according to his
suggestion.
Thanks
Jiaxing
>
> thanks,
>
> greg k-h
>
> .
>
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c
2020-11-03 8:19 ` luojiaxing
@ 2020-11-03 8:27 ` Greg KH
0 siblings, 0 replies; 14+ messages in thread
From: Greg KH @ 2020-11-03 8:27 UTC (permalink / raw)
To: luojiaxing
Cc: akpm, viro, andriy.shevchenko, linux-kernel, martin.petersen,
john.garry, himanshu.madhani, felipe.balbi, uma.shankar,
anshuman.gupta, animesh.manna, linux-usb, linux-scsi, linuxarm
On Tue, Nov 03, 2020 at 04:19:09PM +0800, luojiaxing wrote:
> Hi
>
> On 2020/10/30 16:44, Greg KH wrote:
> > On Fri, Oct 30, 2020 at 04:31:57PM +0800, Luo Jiaxing wrote:
> > > We already own DEFINE_SHOW_ATTRIBUTE() helper macro for defining attribute
> > > for read-only file, but we found many of drivers also want a helper marco for
> > > read-write file too.
> > >
> > > So we try to add this macro to help decrease code duplication.
> > >
> > > Luo Jiaxing (5):
> > > seq_file: Introduce DEFINE_SHOW_STORE_ATTRIBUTE() helper macro
> > > scsi: hisi_sas: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
> > > scsi: qla2xxx: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
> > > usb: dwc3: debugfs: Introduce DEFINE_SHOW_STORE_ATTRIBUTE
> > > drm/i915/display: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs
> > What changed from v1?
>
>
> Sorry, I should add a commit for the change.
>
>
> In v1, Andy pointed out that the old name of DEFINE_STORE_ATTRIBUTE was
> easily misunderstood as a write-only file rather than a read-write file.
>
> Therefore, it is changed to DEFINE_SHOW_STORE_ATTRIBUTE according to his
> suggestion.
All of that needs to go in the patch, below the --- line, or in the
00/XX email here, like is documented.
Please fix that up and resend a v3 if you wish for people to look at
this series and know what is going on.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2020-11-03 8:26 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-30 8:31 [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c Luo Jiaxing
2020-10-30 8:31 ` [PATCH v2 1/5] seq_file: Introduce DEFINE_SHOW_STORE_ATTRIBUTE() helper macro Luo Jiaxing
2020-10-30 8:31 ` [PATCH v2 2/5] scsi: hisi_sas: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs Luo Jiaxing
2020-10-30 8:32 ` [PATCH v2 3/5] scsi: qla2xxx: " Luo Jiaxing
2020-10-31 8:45 ` kernel test robot
2020-10-31 8:45 ` kernel test robot
2020-10-30 8:32 ` [PATCH v2 4/5] usb: dwc3: debugfs: Introduce DEFINE_SHOW_STORE_ATTRIBUTE Luo Jiaxing
2020-10-30 8:59 ` Felipe Balbi
2020-10-30 8:32 ` [PATCH v2 5/5] drm/i915/display: Introduce DEFINE_SHOW_STORE_ATTRIBUTE for debugfs Luo Jiaxing
2020-10-31 11:06 ` kernel test robot
2020-10-31 11:06 ` kernel test robot
2020-10-30 8:44 ` [PATCH v2 0/5] Introduce a new helper marco DEFINE_SHOW_STORE_ATTRIBUTE at seq_file.c Greg KH
2020-11-03 8:19 ` luojiaxing
2020-11-03 8:27 ` Greg KH
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.