Skip to contentSkip to conversation

__mod_page_state - pass unsigned long instead of unsigned

PATCH New Benjamin LaHaise 1 participant 1 message Jun 1, 2005

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 __mod_page_state - pass unsigned long instead of unsigned

By making the offset argument of __mod_page_state an unsigned long instead of unsigned, we can avoid forcing the compiler to sign extend a usually constant argument. This saves 1 instruction on x86-64.

-ben

include/linux/page-flags.h +1 -1
diff -purN v2.6.12-rc5/include/linux/page-flags.h test-rc5/include/linux/page-flags.h
@@ -137,7 +137,7 @@ struct page_state {
 extern void get_page_state(struct page_state *ret);
 extern void get_full_page_state(struct page_state *ret);
 extern unsigned long __read_page_state(unsigned offset);
-extern void __mod_page_state(unsigned offset, unsigned long delta);
+extern void __mod_page_state(unsigned long offset, unsigned long delta);
 
 #define read_page_state(member) \
 	__read_page_state(offsetof(struct page_state, member))
mm/page_alloc.c +1 -1
diff -purN v2.6.12-rc5/mm/page_alloc.c test-rc5/mm/page_alloc.c
@@ -1128,7 +1128,7 @@ unsigned long __read_page_state(unsigned
 	return ret;
 }
 
-void __mod_page_state(unsigned offset, unsigned long delta)
+void __mod_page_state(unsigned long offset, unsigned long delta)
 {
 	unsigned long flags;
 	void* ptr;