[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: >2gb ext2fs patch
From: |
Alfred M. Szmidt |
Subject: |
Re: >2gb ext2fs patch |
Date: |
Thu, 25 Aug 2005 21:33:44 +0200 |
The ChangeLog entries for anyone interested...
console/
2005-08-22 Ognyan Kulev <ogi@fmi.uni-sofia.bg>
* pager.c (pager_notify_evict): New function.
(user_pager_create): Added zero notify_on_evict argument to
invocation of pager_create.
ext2fs/
2005-08-22 Ognyan Kulev <ogi@fmi.uni-sofia.bg>
* ext2fs.h: <hurd/store.h> and <hurd/ihash.h> are included.
(DISK_CACHE_BLOCKS): New macro.
disk_image is renamed to disk_cache.
New extern variables disk_cache_size and disk_cache_blocks.
(DC_INCORE, DC_UNTOUCHED, DC_FIXED, DC_DONT_REUSE, DC_NO_BLOCK):
New macros.
(DISK_CACHE_LAST_READ_XOR) [NDEBUG]: New macro.
(struct disk_cache_info): New struct.
New extern variables disk_cache_bptr, disk_cache_info,
disk_cache_lock, and disk_cache_reassociation.
Prototypes for new functions buffer_lookup, buffer_ref,
buffer_put, and buffer_is_ref.
Variables sblock and sblock_dirty are made extern.
Prototype for function map_hypermetadata.
(trunc_block, round_block, boffs): Added type casting to off_t.
(bptr_index): New macro.
(boffs_ptr, bptr_offs): New inline functions that replace macros.
(dino): Renamed to...
(dino_lookup): ...this name. The new block cache functions are
used.
(dino_put): New inline function.
(record_global_poke, sync_global_ptr, record_indir_poke): The new
block cache functions are used.
(sync_global): Added debug code.
* ext2fs.c (parse_opt): memset is used instead of bzero.
(main): disk_cache is referred instead of disk_image.
map_hypermetadata is called instead of get_hypermetadata.
(diskfs_reload_global_state): map_hypermetadata is called after
get_hypermetadata.
* hyper.c (get_hypermetadata): Superblock is read with
store_read.
(map_hypermetadata): New function.
(diskfs_set_hypermetadata): The new block cache functions are
used.
(diskfs_readonly_changed): disk_cache is referred instead of
disk_image.
* inode.c: The new block cache functions are used.
memcpy is used instead of bcopy.
(rwlock_init): disk_cache is used instead of disk_image.
(read_node): Added missing call to diskfs_end_catch_exception().
round_block is used instead of inline calculations.
* ialloc.c: The new block cache functions are used.
(diskfs_free_node): %Lu instead of %u is used for inode numbers.
* truncate.c: The new block cache functions are used.
(trunc_indirect): Proper mapping from buffer to pager offset.
* getblk.c: The new block cache functions are used.
(ext2_alloc_block): memset is used instead of bzero.
* balloc.c: The new block cache functions are used.
* pokel.c: Proper decrementing of reference counts of buffers.
* pager.c: The new block cache functions are used.
memcpy/memset are used instead of bcopy/bzero.
%Lu instead of %u or %lu is used for block numbers.
<unistd.h> and "../libpager/priv.h" are included.
(file_pager_read_page, pending_blocks_write): Added type casting
to store_offset_t.
(disk_pager_read_page, disk_pager_write_page): Buffers in disk
cache are properly mapped to block numbers.
(disk_pager_notify_evict): New function.
New global variables disk_cache, disk_cache_size,
disk_cache_blocks, disk_cache_bptr, disk_cache_info,
disk_cache_hint, disk_cache_lock, disk_cache_reassociation.
(disk_cache_init, disk_cache_return_unused)
(buffer_lookup, buffer_ref, buffer_put, buffer_is_ref): New
functions.
(create_disk_pager): Added initialization of disk cache.
(diskfs_get_filemap): Added zero notify_on_evict argument to
pager_create.
fatfs/
2005-08-22 Ognyan Kulev <ogi@fmi.uni-sofia.bg>
* pager.c (pager_notify_evict): New function.
(create_fat_pager): Added zero notify_on_evict argument to
invocation of diskfs_start_disk_pager.
(diskfs_get_filemap): Added zero notify_on_evict argument to
invocation of pager_create.
isofs/
2005-08-22 Ognyan Kulev <ogi@fmi.uni-sofia.bg>
* pager.c (pager_notify_evict): New function.
(create_disk_pager): Added zero notify_on_evict argument to
invocation of diskfs_start_disk_pager.
(diskfs_get_filemap): Added zero notify_on_evict argument to
invocation of pager_create.
libdiskfs/
2005-08-22 Ognyan Kulev <ogi@fmi.uni-sofia.bg>
* diskfs-pager.h: New argument notify_on_evict to
prototype of diskfs_start_disk_pager.
* disk-pager.c (diskfs_start_disk_pager): New argument
notify_on_evict.
Added zero notify_on_evict argument to invocation of
pager_create.
libpager/
2005-08-22 Ognyan Kulev <ogi@fmi.uni-sofia.bg>
* priv.h (struct pager): New field notify_on_evict.
* pager.h: New argument notify_on_evict is added to pager_create.
New prototype for pager_notify_evict.
* pager-create.c (pager_create): New argument notify_on_evict.
* data-return.c (_pager_do_write_request): Notification of evicted
pages when it's enabled.
* data-request.c (_pager_seqnos_memory_object_data_request):
Slightly changed error handling with same semantics.
If notification on eviction is enabled, only precious pages are
requested from Mach.
storeio/
2005-08-22 Ognyan Kulev <ogi@fmi.uni-sofia.bg>
* pager.c (pager_notify_evict): New function.
(dev_get_memory_object): Added zero notify_on_evict argument to
invocation of pager_create.
tmpfs/
2005-08-22 Ognyan Kulev <ogi@fmi.uni-sofia.bg>
* pager-stubs.c (pager_notify_evict): New function.
ufs/
2005-08-22 Ognyan Kulev <ogi@fmi.uni-sofia.bg>
* pager.c (pager_notify_evict): New function.
(create_disk_pager): Added zero notify_on_evict argument to
invocation of diskfs_start_disk_pager.
(diskfs_get_filemap): Added zero notify_on_evict argument to
invocation of pager_create.
- >2gb ext2fs patch, Alfred M. Szmidt, 2005/08/25
- Re: >2gb ext2fs patch,
Alfred M. Szmidt <=