This patch returns an error code if the caller attempts to open a sysfs file for appending.
Generated from 2.6.11-rc2. Signed-off-by: Mitch Williams <[EMAIL PROTECTED]> diff -urpN -X dontdiff linux-2.6.11-clean/fs/sysfs/file.c linux-2.6.11/fs/sysfs/file.c --- linux-2.6.11-clean/fs/sysfs/file.c 2004-12-24 13:33:50.000000000 -0800 +++ linux-2.6.11/fs/sysfs/file.c 2005-01-25 14:59:33.000000000 -0800 @@ -275,6 +275,15 @@ static int check_perm(struct inode * ino if (!ops) goto Eaccess; + /* Return error if the file is open for append. + * Sysfs can't support append because the kobject + * store methods don't take an offset into the buffer + * as an argument. They end up thinking the appended + * data is the entire contents of the file. + */ + if (file->f_flags & O_APPEND) + goto Einval; + /* File needs write support. * The inode's perms must say it's ok, * and we must have a store method. - 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/