xfs
[Top] [All Lists]

TAKE - fix corruption bug exposed by building glibc rpm

To: unlisted-recipients:; (no To-header on input)
Subject: TAKE - fix corruption bug exposed by building glibc rpm
From: lord@xxxxxxx
Date: Wed, 7 Jun 2000 14:30:01 -0500
Sender: owner-linux-xfs@xxxxxxxxxxx
A hole in the logic for dealing with holes in the file when we write
beyond end of file was causing an ld command in the middle of building
libc to generate a bad file. With this change I have been able to build
the glibc rpms from the source rpm with all the directories (including
/var/tmp) within XFS.

Just for grins here are the xfs statistics after doing that:

XFS Statistics
  Extent Allocation                       Tail-Pushing Stats
    xs_allocx............         17758    xs_sleep_logspace.....             0
    xs_allocb............        122120    xs_try_logspace.......        244726
    xs_freex.............         32745    xs_push_ail...........           780
    xs_freeb.............        225239    xs_push_ail_success...          7166
  Allocation Btree                         xs_push_ail_pushbuf...       1481463
    xs_abt_lookup........        150422    xs_push_ail_pinned....             0
    xs_abt_compare.......        745883    xs_push_ail_locked....            82
    xs_abt_insrec........         58848    xs_push_ail_flushing..             0
    xs_abt_delrec........         58214    xs_push_ail_restarts..           194
  Block Mapping                            xs_push_ail_flush.....             0
    xs_blk_mapr..........        976136  IoMap Write Convert
    xs_blk_mapw..........         49261    xs_xstrat_bytes.......      71086080
    xs_blk_unmap.........         50270    xs_xstrat_quick.......         17355
    xs_add_exlist........         49259    xs_xstrat_split.......             0
    xs_del_exlist........         50413  Read/Write Stats
    xs_look_exlist.......       1076236    xs_write_calls........         98214
    xs_cmp_exlist........        764010    xs_write_bytes........     465316212
  Block Map Btree                          xs_read_calls.........        678025
    xs_bmbt_lookup.......           212    xs_read_bytes.........    9041857539
    xs_bmbt_compare......          1222  Attribute Operations
    xs_bmbt_insrec.......            34    xs_attr_get...........             0
    xs_bmbt_delrec.......           171    xs_attr_set...........             0
  Directory Operations                     xs_attr_remove........             0
    xs_dir_lookup........         98153    xs_attr_list..........             0
    xs_dir_create........         21707  Quota Operations
    xs_dir_remove........         37030    xs_qm_dqreclaims......             0
    xs_dir_getdents......         68763    xs_qm_dqreclaim_misses             0
  Transactions                             xs_qm_dquot_dups......             0
    xs_trans_sync........         32355    xs_qm_dqcachemisses...             0
    xs_trans_async.......        187736    xs_qm_dqcachehit......             0
    xs_trans_empty.......         24640    xs_qm_dqwants.........             0
  Inode Operations                         xs_qm_dqshake_reclaims             0
    xs_ig_attempts.......         56632    xs_qm_dqinact_reclaims             0
    xs_ig_found..........          9068  Inode Clustering
    xs_ig_frecycle.......             0    xs_iflush_count.......         58801
    xs_ig_missed.........         47564    xs_icluster_flushcnt..         15414
    xs_ig_dup............             0    xs_icluster_flushinode         94357
    xs_ig_reclaims.......         37692  Vnode Statistics
    xs_ig_attrchg........         38018    vn_active.............            15
  Log Operations                           vn_alloc..............         47850
    xs_log_writes........         35702    vn_get................          8782
    xs_log_blocks........        692042    vn_hold...............        146480
    xs_log_noiclogs......           167    vn_rele...............        149138
    xs_log_force.........         32929    vn_reclaim............         47835
    xs_log_force_sleep...         32369    vn_remove.............         47835
                                           vn_free...............             0


Date:  Wed Jun  7 12:27:32 PDT 2000
Workarea:  jen.cray.com:/src/lord/xfs-linux

The following file(s) were checked into:
  bonnie.engr.sgi.com:/isms/slinx/2.3.99pre2-xfs


Modid:  2.3.99pre2-xfs:slinx:63584a
linux/fs/page_buf.c - 1.107
http://oss.sgi.com/cgi-bin/cvsweb.cgi/linux-2.4-xfs/linux/fs/page_buf.c.diff?r1=text&tr1=1.107&r2=text&tr2=1.106&f=h
        - expand pagebuf_iozero to update page flags and pagebuf flags
          as it modifies things.

linux/fs/xfs/linux/xfs_lrw.c - 1.49
http://oss.sgi.com/cgi-bin/cvsweb.cgi/linux-2.4-xfs/linux/fs/xfs/linux/xfs_lrw.c.diff?r1=text&tr1=1.49&r2=text&tr2=1.48&f=h
        - Turn back on xfs_zero_eof for delwri extents - we need to cover delwri
          extents before the end of the file with pages.



<Prev in Thread] Current Thread [Next in Thread>
  • TAKE - fix corruption bug exposed by building glibc rpm, lord <=