On Wed, 2016-09-14 at 20:29 +0200, Greg KH wrote: trivial note:
> +static size_t gb_timesync_log_frame_time(struct gb_timesync_svc > *timesync_svc, > + char *buf, size_t buflen) > +{ > + struct gb_svc *svc = timesync_svc->svc; > + struct gb_host_device *hd; > + struct gb_timesync_interface *timesync_interface; > + struct gb_interface *interface; > + unsigned int len; > + size_t off; > + > + /* AP/SVC */ > + off = snprintf(buf, buflen, "%s frametime: ap=%llu %s=%llu ", > + greybus_bus_type.name, > + timesync_svc->ap_ping_frame_time, dev_name(&svc->dev), > + timesync_svc->svc_ping_frame_time); > + len = buflen - off; > + > + /* APB/GPB */ > + if (len < buflen) { > + hd = timesync_svc->timesync_hd->hd; > + off += snprintf(&buf[off], len, "%s=%llu ", dev_name(&hd->dev), > + timesync_svc->timesync_hd->ping_frame_time); > + len = buflen - off; > + } > + > + list_for_each_entry(timesync_interface, > + ×ync_svc->interface_list, list) { > + if (len < buflen) { > + interface = timesync_interface->interface; > + off += snprintf(&buf[off], len, "%s=%llu ", > + dev_name(&interface->dev), > + timesync_interface->ping_frame_time); > + len = buflen - off; > + } > + } > + if (len < buflen) > + off += snprintf(&buf[off], len, "\n"); > + return off; > +} The unnecessary trailing blank can be avoided by converting snprintf(, "format ', ...); for (...) snprintf(, "format ", ...); snprintf(, "\n"); to snprintf(, "format', ...); for (...) snprintf(, " format", ...); snprintf(, "\n"); >