remarkable-linux/fs/ext2
Peter Zijlstra 3cb4f9fa0c lib: percpu_counter_sub
Hugh spotted that some code does:
  percpu_counter_add(&counter, -unsignedlong)

which, when the amount argument is of type s32, sort-of works thanks to
two's-complement. However when we'd change the type to s64 this breaks on 32bit
machines, because the promotion rules zero extend the unsigned number.

Provide percpu_counter_sub() to hide the s64 cast. That is:
  percpu_counter_sub(&counter, foo)
is equal to:
  percpu_counter_add(&counter, -(s64)foo);

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-17 08:42:44 -07:00
..
acl.c Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check 2007-07-17 12:00:03 -07:00
acl.h
balloc.c lib: percpu_counter_sub 2007-10-17 08:42:44 -07:00
dir.c ext2: convert to new aops 2007-10-16 09:42:55 -07:00
ext2.h ext2: convert to new aops 2007-10-16 09:42:55 -07:00
file.c ext2: fix a comment when ext2_release_file() is called 2007-07-16 09:05:44 -07:00
fsync.c
ialloc.c lib: percpu_counter_add 2007-10-17 08:42:44 -07:00
inode.c fs: restore nobh 2007-10-16 09:42:58 -07:00
ioctl.c Introduce is_owner_or_cap() to wrap CAP_FOWNER use with fsuid check 2007-07-17 12:00:03 -07:00
Makefile
namei.c
super.c fix inode_table test in ext234_check_descriptors 2007-07-26 11:35:17 -07:00
symlink.c
xattr.c
xattr.h
xattr_security.c
xattr_trusted.c
xattr_user.c
xip.c
xip.h