Thread (130 messages) 130 messages, 10 authors, 2020-03-12

Re: [PATCH v3 25/27] powerpc/powernv/pmem: Expose the serial number in sysfs

From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Date: 2020-02-28 07:15:25
Also in: linux-mm, lkml, nvdimm

On Fri, Feb 28, 2020 at 05:25:31PM +1100, Andrew Donnellan wrote:
On 21/2/20 2:27 pm, Alastair D'Silva wrote:
quoted
+int ocxlpmem_sysfs_add(struct ocxlpmem *ocxlpmem)
+{
+	int i, rc;
+
+	for (i = 0; i < ARRAY_SIZE(attrs); i++) {
+		rc = device_create_file(&ocxlpmem->dev, &attrs[i]);
+		if (rc) {
+			for (; --i >= 0;)
+				device_remove_file(&ocxlpmem->dev, &attrs[i]);
I'd rather avoid weird for loop constructs if possible.

Is it actually dangerous to call device_remove_file() on an attr that hasn't
been added? If not then I'd rather define an err: label and loop over the
whole array there.
None of this should be used at all, just use attribute groups properly
and the driver core will handle this all for you.

device_create/remove_file should never be called by anyone anymore if at all
possible.

thanks,

greg k-h
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help