[lc-checkins] CVS: linux/include/linux comp_cache.h,1.92,1.93
Status: Beta
Brought to you by:
nitin_sf
|
From: Rodrigo S. de C. <rc...@us...> - 2002-07-17 13:01:01
|
Update of /cvsroot/linuxcompressed/linux/include/linux
In directory usw-pr-cvs1:/tmp/cvs-serv577/include/linux
Modified Files:
comp_cache.h
Log Message:
Bug fixes
o Fixed bug in find_free_swp_buffer() that would leak fragment structs
if the fragment got completely freed while refilling swap buffers.
o Fixed bug in find_free_swp_buffer() that would panic in the case it
couldn't free any swap buffers because of gfp_mask. In this case,
simply return neither decompressing nor writing the dirty fragment.
o Fixed bug in comp_cache_swp_duplicate() (now known as
virtual_swap_duplicate()) that would cause a kernel BUG if duplicating
a freed entry. This scenario may happen in the swapin path code.
Cleanups
o Renamed comp_cache_swp_{duplicate,free,count} -> virtual_swap_*
o Removed useless "nrpages" parameter
Index: comp_cache.h
===================================================================
RCS file: /cvsroot/linuxcompressed/linux/include/linux/comp_cache.h,v
retrieving revision 1.92
retrieving revision 1.93
diff -C2 -r1.92 -r1.93
*** comp_cache.h 16 Jul 2002 21:58:08 -0000 1.92
--- comp_cache.h 17 Jul 2002 13:00:57 -0000 1.93
***************
*** 2,6 ****
* linux/mm/comp_cache.h
*
! * Time-stamp: <2002-07-16 16:34:27 rcastro>
*
* Linux Virtual Memory Compressed Cache
--- 2,6 ----
* linux/mm/comp_cache.h
*
! * Time-stamp: <2002-07-17 08:48:48 rcastro>
*
* Linux Virtual Memory Compressed Cache
***************
*** 409,415 ****
#define reserved(offset) (vswap_address[offset]->fragment == VSWAP_RESERVED)
! int comp_cache_swp_duplicate(swp_entry_t);
! int comp_cache_swp_free(swp_entry_t);
! int comp_cache_swp_count(swp_entry_t);
swp_entry_t get_virtual_swap_page(void);
--- 409,415 ----
#define reserved(offset) (vswap_address[offset]->fragment == VSWAP_RESERVED)
! int virtual_swap_duplicate(swp_entry_t);
! int virtual_swap_free(unsigned long);
! int virtual_swap_count(swp_entry_t);
swp_entry_t get_virtual_swap_page(void);
***************
*** 444,450 ****
#define vswap_address(entry) (0)
! static inline int comp_cache_swp_duplicate(swp_entry_t entry) { return 0; };
! static inline int comp_cache_swp_free(swp_entry_t entry) { return 0; }
! static inline int comp_cache_swp_count(swp_entry_t entry) { return 0; }
static inline swp_entry_t get_virtual_swap_page(void) { return (swp_entry_t) { 0 }; }
--- 444,450 ----
#define vswap_address(entry) (0)
! static inline int virtual_swap_duplicate(swp_entry_t entry) { return 0; };
! static inline int virtual_swap_free(unsigned long offset) { return 0; }
! static inline int virtual_swap_count(swp_entry_t entry) { return 0; }
static inline swp_entry_t get_virtual_swap_page(void) { return (swp_entry_t) { 0 }; }
|