On Sun, 2020-11-01 at 22:06 +0000, Matthew Wilcox wrote: > Oh, ugh, sysfs_emit() should be able to work on a buffer that isn't > page aligned. Greg, how about this? > > +++ b/fs/sysfs/file.c > @@ -722,13 +722,13 @@ int sysfs_emit(char *buf, const char *fmt, ...) > { > va_list args; > int len; > + int start = offset_in_page(buf); I thought of that originally and didn't want to implement it that way as it allows sysfs_emit to be used on non-page aligned buffers. Using two functions makes sure the buf is always page aligned and so buf should never defectively be passed in unaligned.