On Thu, Jun 07, 2007 at 05:31:35PM +0800, Zhang Rui wrote: > From: Zhang Rui <rui.zhang@xxxxxxxxx> > > Well, first of all, I don't want to change so many files either. > > What I do: > Adding a new parameter "struct bin_attribute *" in the > .read/.write methods for the sysfs binary attributes. > > In fact, only the four lines change in fs/sysfs/bin.c and > include/linux/sysfs.h do the real work. > But I have to update all the files that use binary attributes > to make them compatible with the new .read and .write methods. > I'm not sure if I missed any. :( > > Why I do this: > For a sysfs attribute, we can get a pointer pointing to the > struct attribute in the .show/.store method, > while we can't do this for the binary attributes. > I don't know why this is different, but this does make it not > so handy to use the binary attributes as the regular ones. > So I think this patch is reasonable. :) > > Who benefits from it: > The patch that exposes ACPI tables in sysfs > requires such an improvement. > All the table binary attributes share the same .read method. > Parameter "struct bin_attribute *" is used to get > the table signature and instance number which are used to > distinguish different ACPI table binary attributes. > > Without this parameter, we need to offer different .read methods > for different ACPI table binary attributes. > This is impossible as there are various ACPI tables on different > platforms, and we don't know what they are until they are loaded. I have no objection to this patch but it failes the checkpatch.pl script pretty badly with too long of lines. Care to fix it up and resend it? thanks, greg k-h - To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html