commit-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[SCM] Hurd branch, master, updated. hurd-release-0-2-3601-gea4802b


From: Samuel Thibault
Subject: [SCM] Hurd branch, master, updated. hurd-release-0-2-3601-gea4802b
Date: Sun, 15 Sep 2013 23:22:53 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Hurd".

The branch, master has been updated
       via  ea4802bc0975218544cb447df37b704f60ef2fde (commit)
       via  0e847864cef404f555387d7fcc97f7dbe769e1e9 (commit)
      from  b2e27fcee4cec98ffc39273ecfaa73aace9da2c3 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit ea4802bc0975218544cb447df37b704f60ef2fde
Author: Richard Braun <address@hidden>
Date:   Fri May 3 19:56:51 2013 +0200

    Large store support for ext2fs
    
    This is a revised version of the large store patch for ext2fs, written
    by Ognyan Kulev. It provides support for stores larger than 2 GiB.
    
    * ext2fs/balloc.c: Use the new disk_cache_block_ref and 
disk_cache_block_deref
    functions to access blocks from the disk cache.
    * ext2fs/ext2fs.c (main): Update initialization call to pokel_init, and
    call map_hypermetadata instead of get_hypermetadata.
    * ext2fs/ext2fs.h: Include <hurd/store.h> and <hurd/ihash.h>.
    (DISK_CACHE_BLOCKS): New macro.
    (DC_INCORE): Likewise.
    (DC_UNTOUCHED): Likewise.
    (DC_FIXED): Likewise.
    (DC_DONT_REUSE): Likewise.
    (DC_NO_BLOCK): Likewise.
    (DISK_CACHE_LAST_READ_XOR) [!NDEBUG]: Likewise.
    (struct disk_cache_info): New structure.
    (disk_cache): New external variable.
    (disk_cache_size): Likewise.
    (disk_cache_blocks): Likewise.
    (disk_cache_bptr): Likewise.
    (disk_cache_info): Likewise.
    (disk_cache_lock): Likewise.
    (disk_cache_reassociation): Likewise.
    (disk_cache_block_ref): New declaration.
    (disk_cache_block_ref_ptr): Likewise.
    (disk_cache_block_deref): Likewise.
    (disk_cache_block_is_ref): Likewise.
    (map_hypermetadata): Likewise.
    (trunc_block): Cast to off_t.
    (round_block): Likewise.
    (boffs): Likewise.
    (bptr_index): New macro.
    (boffs_ptr): Rewrite as an inline function to make it look up a block from
    the disk cache.
    (bptr_offs): Likewise.
    (dino): Remove function, replaced with ...
    (dino_ref): ... this one, which adds a reference to the inode block.
    (dino_deref): New inline function.
    (record_global_poke): Make sure block is referenced.
    (record_indir_poke): Likewise.
    (sync_global_ptr): Remove block reference, and adjust call to
    pager_sync_some.
    (sync_global): Add debug call to print wait parameter.
    * ext2fs/getblk.c: Use the new disk_cache_block_ref and 
disk_cache_block_deref
    functions to access blocks from the disk cache.
    * ext2fs/hyper.c (get_hypermetadata): Read the superblock from the store
    now that it's not directly mapped in memory. Move the initialization of
    zeroblock here from ...
    (map_hypermetadata): ... here. Also, set the superblock pointer.
    (diskfs_set_hypermetadata): Add a reference to the superblock.
    (diskfs_readonly_changed): Update call to mprotect.
    * ext2fs/ialloc.c: Use the new disk_cache_block_ref, 
disk_cache_block_ref_ptr
    and disk_cache_block_deref functions to access blocks from the disk cache.
    * ext2fs/inode.c: Update calls that used the disk image to use the disk 
cache,
    and use the new reference handling functions where appropriate.
    * ext2fs/pager.c: Include <unistd.h> and "../libpager/priv.h".
    (disk_image): Remove global variable.
    (disk_pager_read_page): Update cache information.
    (disk_pager_write_page): Likewise.
    (disk_pager_notify_evict): New function.
    (pager_notify_evict): Call disk_pager_notify_evict appropriately.
    (disk_cache): New global variable.
    (disk_cache_size): Likewise.
    (disk_cache_blocks): Likewise.
    (disk_cache_bptr): Likewise.
    (disk_cache_info): Likewise.
    (disk_cache_hint): Likewise.
    (disk_cache_lock): Likewise.
    (disk_cache_reassociation): Likewise.
    (disk_cache_init): New function.
    (disk_cache_return_unused): Likewise.
    (disk_cache_block_ref): Likewise.
    (disk_cache_block_ref_ptr): Likewise.
    (disk_cache_block_deref): Likewise.
    (disk_cache_block_is_ref): Likewise.
    (create_disk_pager): Update initialization of the disk pager.
    * ext2fs/pokel.c (pokel_add): Drop block references with 
disk_cache_block_deref.
    (_pokel_exec): Likewise.
    * ext2fs/truncate.c (trunc_indirect): Use the new disk_cache_block_ref and
    disk_cache_block_deref functions to access blocks from the disk cache.

commit 0e847864cef404f555387d7fcc97f7dbe769e1e9
Author: Richard Braun <address@hidden>
Date:   Fri May 3 19:56:50 2013 +0200

    Handle notification on page eviction
    
    If requested by the user, make libpager call pager_notify_evict when a page
    is flushed out by the kernel. Based on work by Ognyan Kulev.
    
    * console/pager.c (pager_notify_evict): New function.
    (user_pager_create): Update call to pager_create.
    * ext2fs/pager.c: (pager_notify_evict): New function.
    (create_disk_pager): Update call to diskfs_start_disk_pager.
    (diskfs_get_filemap): Update call to pager_create.
    * fatfs/pager.c: (pager_notify_evict): New function.
    (create_fat_pager): Update call to diskfs_start_disk_pager.
    (diskfs_get_filemap): Update call to pager_create.
    * isofs/pager.c: (pager_notify_evict): New function.
    (create_disk_pager): Update call to diskfs_start_disk_pager.
    (diskfs_get_filemap): Update call to pager_create.
    * libdiskfs/disk-pager.c (diskfs_start_disk_pager): Update definition and 
call
    to pager_create.
    * libdiskfs/diskfs-pager.h (diskfs_start_disk_pager): Update declaration.
    * libpager/data-request.c (_pager_seqnos_memory_object_data_request): Take
    pager's `notify_on_evict' member into account when calling
    memory_object_data_supply.
    * libpager/data-return.c (_pager_do_write_request): Handle user notification
    on page flush.
    * libpager/pager-create.c (pager_create): Update definition and set pager's
    `notify_on_evict' member.
    * libpager/pager.h (pager_create): Update declaration.
    (pager_notify_evict): New declaration.
    * libpager/priv.h (struct pager): New `notify_on_evict' member.
    * storeio/pager.c: (pager_notify_evict): New function.
    (dev_get_memory_object): Update call to pager_create.
    * tmpfs/pager-stubs.c (pager_notify_evict): New function.
    * ufs/pager.c (pager_notify_evict): New function.
    (create_disk_pager): Update call to diskfs_start_disk_pager.
    (diskfs_get_filemap): Update call to pager_create.

-----------------------------------------------------------------------

Summary of changes:
 console/pager.c          |   10 +-
 ext2fs/balloc.c          |   31 +++-
 ext2fs/ext2fs.c          |    6 +-
 ext2fs/ext2fs.h          |  145 ++++++++++++--
 ext2fs/getblk.c          |   21 ++-
 ext2fs/hyper.c           |   35 +++-
 ext2fs/ialloc.c          |   37 +++-
 ext2fs/inode.c           |   40 +++-
 ext2fs/pager.c           |  467 +++++++++++++++++++++++++++++++++++++++++++--
 ext2fs/pokel.c           |   39 +++-
 ext2fs/truncate.c        |    9 +-
 fatfs/pager.c            |   11 +-
 isofs/pager.c            |   12 +-
 libdiskfs/disk-pager.c   |    6 +-
 libdiskfs/diskfs-pager.h |    3 +-
 libpager/data-request.c  |    3 +-
 libpager/data-return.c   |   79 ++++++--
 libpager/pager-create.c  |    4 +-
 libpager/pager.h         |   23 ++-
 libpager/priv.h          |    1 +
 storeio/pager.c          |    9 +-
 tmpfs/pager-stubs.c      |    8 +
 ufs/pager.c              |   11 +-
 23 files changed, 887 insertions(+), 123 deletions(-)


hooks/post-receive
-- 
Hurd



reply via email to

[Prev in Thread] Current Thread [Next in Thread]