On Thu, Aug 27, 2015 at 10:32 AM, Steven Rostedt <[email protected]> wrote: > On Thu, 27 Aug 2015 08:17:29 +0800 > Sean Fu <[email protected]> wrote: > >> On Thu, Aug 27, 2015 at 4:36 AM, Steven Rostedt <[email protected]> wrote: >> > On Wed, 26 Aug 2015 23:48:01 +0800 >> > Sean Fu <[email protected]> wrote: >> > >> > >> >> > Defending the patch, I can't imagine any user space code expecting the >> >> > current behavior. The current behavior is that if you write "1\0" it >> >> > will error out instead of accepting the "1". I can't come up with a >> >> > scenario that would require userspace to expect "1\0" to fail. Can you? >> >> Thanks >> > >> > Although, with the current patch, would "1\02" fail? It should. >> Yes, "1\02" is equal to "1\2"(count=2) or "1\2\0"(count=3), So it should >> fail. > > Sorry, I meant "1\0 2" In this case, The patch behavior is accepting the "1" and discarding other bytes. for (; left && vleft--; i++, first=0) { //vleft is 1 for integer type or unsigned long type proc file
> > -- Steve > >> >> code >> len = write(fd, "1\0\2", 3); >> >> strace execute result: >> write(3, "1\2\0", 3) = -1 EINVAL (Invalid argument) >> >> > >> > -- Steve > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

