Signed-off-by: Zijun Hu quic_zijuhu@quicinc.com --- Changes in v3: - To both Andreas Hindborg and Breno Leitao. - Link to v2: https://lore.kernel.org/r/20250415-fix_configfs-v2-0-fcd527dd1824@quicinc.co...
Changes in v2: - Drop the last patch which seems wrong. - Link to v1: https://lore.kernel.org/r/20250408-fix_configfs-v1-0-5a4c88805df7@quicinc.co...
--- Zijun Hu (3): configfs: Delete semicolon from macro type_print() definition configfs: Do not override creating attribute file failure in populate_attrs() configfs: Correct error value returned by API config_item_set_name()
fs/configfs/dir.c | 4 ++-- fs/configfs/item.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) --- base-commit: eae324ca644554d5ce363186bee820a088bb74ab change-id: 20250408-fix_configfs-699743163c64
Best regards,
From: Zijun Hu quic_zijuhu@quicinc.com
populate_attrs() may override failure for creating attribute files by success for creating subsequent bin attribute files, and have wrong return value.
Fix by creating bin attribute files under successfully creating attribute files.
Fixes: 03607ace807b ("configfs: implement binary attributes") Cc: stable@vger.kernel.org Reviewed-by: Joel Becker jlbec@evilplan.org Reviewed-by: Breno Leitao leitao@debian.org Signed-off-by: Zijun Hu quic_zijuhu@quicinc.com --- fs/configfs/dir.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/configfs/dir.c b/fs/configfs/dir.c index 6d4a1190f694fe5260577dbedeb755d6fcdf6703..ebf32822e29bed882c4204c71b1b3b4e5df2f2bd 100644 --- a/fs/configfs/dir.c +++ b/fs/configfs/dir.c @@ -619,7 +619,7 @@ static int populate_attrs(struct config_item *item) break; } } - if (t->ct_bin_attrs) { + if (!error && t->ct_bin_attrs) { for (i = 0; (bin_attr = t->ct_bin_attrs[i]) != NULL; i++) { if (ops && ops->is_bin_visible && !ops->is_bin_visible(item, bin_attr, i)) continue;
linux-stable-mirror@lists.linaro.org