Hi, On (08/21/18 14:43), Rasmus Villemoes wrote: > > I think that sysfs input is always properly NULL-terminated. It may or > > may not contain \n, but \0 is expected to be there. > > Maybe. But it shouldn't hurt to make it accept a src size (the caller > can always pass -1 is he's sure the input is nul-terminated) - I'm > thinking a new interface might also have uses outside sysfs.
Makes sense. > > E.g. > > channel_dimm_label_store() > > dimmdev_label_store() > > pmbus_add_label() > > axp20x_store_attr() > > cmdline_store() > > Hm, do any of those actually want the skipping of leading whitespace? Hm, that's a good question. I'd probably say "mostly yes". The input usually goes to strcmp/strcpy/strtol/etc. But we don't have to trim leading whitespaces and can just let the driver error out [hopefully the driver has a well tested error-out path]. > pmbus_add_label doesn't even seem to kill a trailing newline? Sorry, I think pmbus_add_label() made it to the list by mistake. It doesn't appear to be a ->store() callback. > It's probably hard to create one interface that will work for all cases. Agreed, that's why I targeted sysfs input data only ;) > Dunno, looking at your examples above I'm a bit more skeptical that > there is a lot of common ground. But of course there are hundreds of > other store callbacks, so surely one can simplify some with a new helper. Yep. -ss