Whamcloud - gitweb
Branch HEAD
[fs/lustre-release.git] / lustre / ChangeLog
index 0c16ad4..513d323 100644 (file)
 tbd  Sun Microsystems, Inc.
-       * version 1.8.0
+       * version 2.0.0
        * Support for kernels:
-        2.6.9-67.0.4.EL (RHEL 4),
-        2.6.16.54-0.2.5 (SLES 10),
-        2.6.18-53.1.13.el5 (RHEL 5).
+        2.6.16.60-0.27 (SLES 10),
+        2.6.18-92.1.10.el5 (RHEL 5),
+        2.6.22.14 vanilla (kernel.org).
        * Client support for unpatched kernels:
         (see http://wiki.lustre.org/index.php?title=Patchless_Client)
         2.6.16 - 2.6.21 vanilla (kernel.org)
-       * Recommended e2fsprogs version: 1.40.4-cfs1
+       * Recommended e2fsprogs version: 1.40.11-sun1
        * Note that reiserfs quotas are disabled on SLES 10 in this kernel.
        * RHEL 4 and RHEL 5/SLES 10 clients behaves differently on 'cd' to a
         removed cwd "./" (refer to Bugzilla 14399).
 
+Severity   : enhancement
+Bugzilla   : 16633
+Description: Update to RHEL5 kernel-2.6.18-92.1.10.el5.
+
+Severity   : enhancement
+Bugzilla   : 16547
+Description: Update to SLES10 SP2 kernel-2.6.16.60-0.27.
+
+Severity   : enhancement
+Bugzilla   : 16566
+Description: Upcall on Lustre log has been dumped
+Details    : Allow for a user mode script to be called once a Lustre log has
+             been dumped. It passes the filename of the dumped log to the
+            script, the location of the script can be specified via
+            /proc/sys/lnet/debug_log_upcall.
+
+Severity   : minor
+Bugzilla   : 16583
+Frequency  : rare
+Description: avoid messages about idr_remove called for id  which is not allocated.
+Details    : Move assigment s_dev for clustered nfs to end of initialization, for
+             avoid problem with error handling.
+
+Severity   : minor
+Bugzilla   : 16109
+Frequency  : rare
+Description: avoid Already found the key in hash [CONN_UNUSED_HASH] messages
+Details    : When connection is reused this not moved from CONN_UNUSED_HASH into
+             CONN_USED_HASH and this prodice warning when put connection again
+             in unused hash.
+
+Severity   : enhancement
+Bugzilla   : 16573
+Description: Export bytes_read/bytes_write count on OSC/OST.
+
+Severity   : normal
+Bugzilla   : 16237
+Description: Early reply size mismatch, MGC loses connection
+Details    : Apply the MGS_CONNECT_SUPPORTED mask at reconnect time so
+             the connect flags are properly negotiated.
+
+Severity   : normal
+Bugzilla   : 16006
+Description: Properly propagate oinfo flags from lov to osc for statfs
+Details    : restore missing copy oi_flags to lov requests.
+
+Severity   : enhancement
+Bugzilla   : 16581
+Description: Add man pages for llobdstat(8), llstat(8), plot-llstat(8),
+           : l_getgroups(8), lst(8), routerstat(8)
+Details    : included man pages for llobdstat(8), llstat(8),
+           : plot-llstat(8), l_getgroups(8), lst(8), routerstat(8)
+
+Severity   : enhancement
+Bugzilla   : 16091
+Description: configure's --enable-quota should check the
+           : kernel .config for CONFIG_QUOTA
+Details    : configure is terminated if --enable-quota is passed but
+           : no quota support is in kernel
+
+Severity   : normal
+Bugzilla   : 13139
+Description: Remove portals compatibility
+Details    : Remove portals compatibility, not interoperable with releases
+            before 1.4.6
+
+Severity   : normal
+Bugzilla   : 15576
+Description: Resolve device initialization race
+Details    : Prevent proc handler from accessing devices added to the
+            obd_devs array but yet be intialized.
+
+Severity   : enhancement
+Bugzilla   : 15308
+Description: Update to SLES10 SP2 kernel-2.6.16.60-0.23.
+
+Severity   : enhancement
+Bugzilla   : 16190
+Description: Update to RHEL5 kernel-2.6.18-92.1.6.el5.
+
+Severity   : normal
+Bugzilla   : 12975
+Frequency  : rare
+Description: Using wrong pointer in osc_brw_prep_request
+Details    : Access to array[-1] can produce panic if kernel compiled with
+            CONFIG_PAGE_ALLOC enabled
+
+Severity   : normal
+Bugzilla   : 16037
+Description: Client runs out of low memory
+Details    : Consider only lowmem when counting initial number of llap pages
+
+Severity   : normal
+Bugzilla   : 15625
+Description: *optional* service tags registration
+Details    : if the "service tags" package is installed on a Lustre node
+            When the filesystem is mounted, a local-node service tag will
+            be created.  See http://inventory.sun.com/ for more information
+            about the Service Tags asset management system.
+
+Severity   : normal
+Bugzilla   : 15825
+Description: Kernel BUG tries to release flock
+Details    : Lustre does not destroy flock lock before last reference goes
+            away. So always drop flock locks when client is evicted and
+            perform unlock regardless of successfulness of speaking to MDS.
+
+Severity   : normal
+Bugzilla   : 15210
+Description: add recount protection for osc callbacks, so avoid panic on shutdown
+
+Severity   : normal
+Bugzilla   : 12653
+Description: sanity test 65a fails if stripecount of -1 is set
+Details    : handle -1 striping on filesystem in ll_dirstripe_verify
+
+Severity   : normal
+Bugzilla   : 14742
+Frequency  : rare
+Description: ASSERTION(CheckWriteback(page,cmd)) failed
+Details    : badly clear PG_Writeback bit in ll_ap_completion can produce false
+            positive assertion.
+
+Severity   : enhancement
+Bugzilla   : 15865
+Description: Update to RHEL5 kernel-2.6.18-53.1.21.el5.
+
+Severity   : major
+Bugzilla   : 15924
+Description: do not process already freed flock
+Details    : flock can possibly be freed by another thread before it reaches
+            to ldlm_flock_completion_ast.
+
+Severity   : normal
+Bugzilla   : 14480
+Description: LBUG during stress test
+Details    : Need properly lock accesses the flock deadlock detection list.
+
+Severity   : minor
+Bugzilla   : 15837
+Description: oops in page fault handler
+Details    : kernel page fault handler can return two special 'pages' in error case, don't
+            try dereference NOPAGE_SIGBUS and NOPAGE_OMM.
+
+Severity   : minor
+Bugzilla   : 15716
+Description: timeout with invalidate import.
+Details    : ptlrpcd_check call obd_zombie_impexp_cull and wait request which should be
+            handled by ptlrpcd. This produce long age waiting and -ETIMEOUT
+            ptlrpc_invalidate_import and as result LASSERT.
+
+Severity   : enhancement
+Bugzilla   : 15741
+Description: Update to RHEL5 kernel-2.6.18-53.1.19.el5.
+
+Severity   : major
+Bugzilla   : 14134
+Description: enable MGS and MDT services start separately
+Details    : add a 'nomgs' option in mount.lustre to enable start a MDT with
+            a co-located MGS without starting the MGS, which is a complement
+            to 'nosvc' mount option.
+
+Severity   : normal
+Bugzilla   : 14835
+Frequency  : after recovery
+Description: precreate to many object's after del orphan.
+Details    : del orphan st in oscc last_id == next_id and this triger growing
+            count of precreated objects. Set flag LOW to skip increase count
+            of precreated objects.
+
+Severity   : normal
+Bugzilla   : 15139
+Frequency  : rare, on clear nid stats
+Description: ASSERTION(client_stat->nid_exp_ref_count == 0)
+Details    : when clean nid stats sometimes try destroy live entry,
+            and this produce panic in free.
+
+Severity   : major
+Bugzilla   : 15575
+Description: Stack overflow during MDS log replay
+            ease stack pressure by using a thread dealing llog_process.
+
+Severity   : normal
+Bugzilla   : 15443
+Description: wait until IO finished before start new when do lock cancel.
+Details    : VM protocol want old IO finished before start new, in this case
+            need wait until PG_writeback is cleared until check dirty flag and
+            call writepages in lock cancel callback.
+
+Severity   : enhancement
+Bugzilla   : 14929
+Description: using special macro for print time and cleanup in includes.
+
+Severity   : normal
+Bugzilla   : 12888
+Description: mds_mfd_close() ASSERTION(rc == 0)
+Details    : In mds_mfd_close(), we need protect inode's writecount change
+            within its orphan write semaphore to prevent possible races.
+
+Severity   : minor
+Bugzilla   : 14929
+Description: Obsolete CURRENT_SECONDS and use cfs_time_current_sec() instead.
+
+Severity   : minor
+Bugzilla   : 14645
+Frequency  : rare, on shutdown ost
+Description: don't hit live lock with umount ost.
+Details    : shrink_dcache_parent can be in long loop with destroy dentries,
+            use shrink_dcache_sb instead.
+
+Severity   : minor
+Bugzilla   : 14949
+Description: don't panic with use echo client
+Details    : echo client pass NULL as client nid pointer and this produce null
+            pointer dereference.
+
+Severity   : normal
+Bugzilla   : 15278
+Description: fix build on ppc32
+Details    : compile code with -m64 flag produce wrong object file for ppc32.
+
+Severity   : normal
+Bugzilla   : 12191
+Description: add message levels for liblustreapi
+
+Severity   : normal
+Bugzilla   : 13380
+Description: fix for occasional failure case of -ENOSPC in recovery-small tests
+Details    : Move the 'good_osts' check before the 'total_bavail' check.  This
+            will result in an -EAGAIN and in the exit call path we call
+            alloc_rr() which will with increasing aggressiveness attempt to
+            aquire precreated objects on the minimum number of required OSCs.
+
+Severity   : major
+Bugzilla   : 14326
+Description: Use old size assignment to avoid deadlock
+Details    : This reverts the changes in bugs 2369 and bug 14138 that introduced
+            the scheduling while holding a spinlock.  We do not need locking
+            for size in ll_update_inode() because size is only updated from
+            the MDS for directories or files without objects, so there is no
+            other place to do the update, and concurrent access to such inodes
+            are protected by the inode lock.
+
+Severity   : normal
+Bugzilla   : 14746
+Description: resolve "_IOWR redefined" build error on SLES10
+
+Severity   : normal
+Bugzilla   : 14763
+Description: dump the memory debugging after all modules are unloaded to
+            suppress false negative in conf_sanity test 39
+
+Severity   : enhancement
+Bugzilla   : 15316
+Description: build kernel-ib packages for OFED 1.3 in our release cycle
+
+Severity   : minor
+Bugzilla   : 13969
+Frequency  : always
+Description: fix SLES kernel versioning
+Details    : the kernel version for our SLES 10 kernel did not include a "-"
+            before the "smp" at the end.  while this was not a problem in
+            general, it did mean that software trying to use the kernel
+            version to try to detect a vendor specific kernel would fail.
+            this was most evident by the OFED build scripts.
+
+Severity   : normal
+Bugzilla   : 14803
+Description: Don't update lov_desc members until making sure they are valid
+Details    : When updating lov_desc members via proc fs, need fix their
+            validities before doing the real update.
+
+Severity   : normal
+Bugzilla   : 15069
+Description: don't put request into delay list while invalidate in flight.
+Details    : ptlrpc_delay_request sometimes put in delay list while invalidate
+            import in flight. this produce timeout for invalidate and sometimes
+            can cause stale data.
+
+Severity   : minor
+Bugzilla   : 14856
+Frequency  : on ppc only
+Description: not convert ost objects for directory because it's not exist.
+Details    : ll_dir_getstripe assume dirrectory has ost objects but this wrong.
+
+Severity   : normal
+Bugzilla   : 12652
+Description: Add FMODE_EXEC file flag for SLES10 SP1 kernel.
+
+Severity   : enhancement
+Bugzilla   : 13397
+Description: Update to support 2.6.22.14 vanilla kernel.
+
+Severity   : normal
+Bugzilla   : 14533
+Frequency  : rare, on recovery
+Description: read procfs can produce deadlock in some situation
+Details    : Holding lprocfs lock which send rpc can produce block for destroy
+            obd objects and this also block reconnect with -EALREADY. This isn't
+            fix all lprocfs bugs - but make it rare.
+
+Severity   : enhancement
+Bugzilla   : 15152
+Description: Update kernel to RHEL5 2.6.18-53.1.14.el5.
+
+Severity   : major
+Frequency  : frequent on X2 node
+Bugzilla   : 15010
+Description: mdc_set_open_replay_data LBUG
+Details    : Set replay data for requests that are eligible for replay.
+
+Severity   : normal
+Bugzilla   : 14321
+Description: lustre_mgs: operation 101 on unconnected MGS
+Details    : When MGC is disconnected from MGS long enough, MGS will evict the
+            MGC, and late on MGC cannot successfully connect to MGS and a lot
+            of the error messages complaining that MGS is not connected.
+
+Severity   : major
+Bugzilla   : 15027
+Frequency  : on network error
+Description: panic with double free request if network error
+Details    : mdc_finish_enqueue is finish request if any network error ocuring,
+            but it's true only for synchronus enqueue, for async enqueue
+            (via ptlrpcd) this incorrect and ptlrpcd want finish request
+            himself.
+
+Severity   : enhancement
+Bugzilla   : 11401
+Description: client-side metadata stat-ahead during readdir(directory readahead)
+Details    : perform client-side metadata stat-ahead when the client detects
+            readdir and sequential stat of dir entries therein
+
+Severity   : major
+Frequency  : on start mds
+Bugzilla   : 14884
+Description: Implement get_info(last_id) in obdfilter.
+
 Severity   : normal
 Frequency  : occasional
 Bugzilla   : 13537
 Description: Correctly check stale fid, not start epoch if ost not support SOM
 Details    : open with flag O_CREATE need set old fid in op_fid3 because op_fid2
-             overwrited with new generated fid, but mds can anwer with one of these
-             two fids and both is not stale. setattr incorectly start epoch and
-             assume will be called done_writeting, but without SOM done_writing
-             never called.
+            overwrited with new generated fid, but mds can anwer with one of these
+            two fids and both is not stale. setattr incorectly start epoch and
+            assume will be called done_writeting, but without SOM done_writing
+            never called.
 
 Severity   : major
 Frequency  : rare, depends on device drivers and load
@@ -36,9 +374,9 @@ Severity   : normal
 Frequency  : occasional
 Bugzilla   : 13730
 Description: Do not fail import if osc_interpret_create gets -EAGAIN
-Details    : If osc_interpret_create got -EAGAIN it immediately exits and 
-            wakeup oscc_waitq.  After wakeup oscc_wait_for_objects call 
-            oscc_has_objects and see OSC has no objests and call 
+Details    : If osc_interpret_create got -EAGAIN it immediately exits and
+            wakeup oscc_waitq.  After wakeup oscc_wait_for_objects call
+            oscc_has_objects and see OSC has no objests and call
             oscc_internal_create to resend create request.
 
 Severity   : enhancement
@@ -79,7 +417,7 @@ Details    : Don't allow skipping OSTs if index has been specified, make locking
 Severity   : normal
 Bugzilla   : 12228
 Description: LBUG in ptlrpc_check_set() bad phase ebc0de00
-Details    : access to bitfield in structure is always rounded to long 
+Details    : access to bitfield in structure is always rounded to long
             and this produce problem with not atomic change any bit.
 
 Severity   : normal
@@ -95,7 +433,7 @@ Description: If llog cancel was not send before clean_exports phase, this can
             produce deadlock in llog code.
 Details    : If llog thread has last reference to obd and call class_import_put
             this produce deadlock because llog_cleanup_commit_master wait when
-            last llog_commit_thread exited, but this never success because was 
+            last llog_commit_thread exited, but this never success because was
             called from llog_commit_thread.
 
 Severity   : normal
@@ -155,7 +493,7 @@ Frequency  : rare, at shutdown
 Description: access already free / zero obd_namespace.
 Details    : if client_disconnect_export was called without force flag set,
             and exist connect request in flight, this can produce access to
-            NULL pointer (or already free pointer) when connect_interpret 
+            NULL pointer (or already free pointer) when connect_interpret
             store ocd flags in obd_namespace.
 
 Severity   : minor
@@ -173,7 +511,7 @@ Details    : Make lustre randomly failed allocating memory for testing purpose.
 Severity   : enhancement
 Bugzilla   : 12702
 Description: lost problems with lov objid file
-Details    : Fixes some scability and access to not inited memory problems 
+Details    : Fixes some scability and access to not inited memory problems
             in work with lov objdid file.
 
 Severity   : major
@@ -215,18 +553,18 @@ Description: Update to RHEL4 latest kernel.
 Severity   : enhancement
 Bugzilla   : 13690
 Description: Build SLES10 patchless client fails
-Details    : The configure was broken by run ./configure with 
+Details    : The configure was broken by run ./configure with
             --with-linux-obj=.... argument for patchless client. When the
             configure use --with-linux-obj, the LINUXINCLUDE= -Iinclude
-            can't search header adequately. Use absolute path such as 
-            -I($LINUX)/include instead. 
+            can't search header adequately. Use absolute path such as
+            -I($LINUX)/include instead.
 
 Severity   : normal
 Bugzilla   : 13888
 Description: interrupt oig_wait produce painc on resend.
 Details    : brw_redo_request can be used for resend requests from ptlrpcd and
             private set, and this produce situation when rq_ptlrpcd_data not
-            copyed to new allocated request and triggered LBUG on assert 
+            copyed to new allocated request and triggered LBUG on assert
             req->rq_ptlrpcd_data != NULL. But this member used only for wakeup
             ptlrpcd set if request is changed and can be safety changed to use
             rq_set directly.
@@ -251,10 +589,10 @@ Details    : This causes SLES 10 clients to behave as patchless clients
 Severity   : enhancement
 Bugzilla   : 2262
 Description: self-adjustable client's lru lists
-Details    : use adaptive algorithm for managing client cached locks lru 
+Details    : use adaptive algorithm for managing client cached locks lru
             lists according to current server load, other client's work
-            pattern, memory activities, etc. Both, server and client 
-            side namespaces provide number of proc tunables for controlling 
+            pattern, memory activities, etc. Both, server and client
+            side namespaces provide number of proc tunables for controlling
             things
 
 Severity   : enhancement
@@ -346,7 +684,7 @@ Frequency  : rare
 Description: Oops in read and write path when failing to allocate lock.
 Details    : Check if lock allocation failed and return error back.
 
-Severity   : normal 
+Severity   : normal
 Bugzilla   : 11679
 Description: lstripe command fails for valid OST index
 Details    : The stripe offset is compared to lov->desc.ld_tgt_count
@@ -368,15 +706,16 @@ Bugzilla   : 12836
 Description: lfs find on -1 stripe looping in lsm_lmm_verify_common()
 Details    : Avoid lov_verify_lmm_common() on directory with -1 stripe count.
 
-Severity   : major
-Bugzilla   : 12932
-Description: obd_health_check_timeout too short
-Details    : set obd_health_check_timeout as 1.5x of obd_timeout
+Severity   : enhancement
+Bugzilla   : 3055
+Description: Adaptive timeouts
+Details    : RPC timeouts adapt to changing server load and network
+            conditions to reduce resend attempts and improve recovery time.
 
 Severity   : normal
 Bugzilla   : 12192
 Description: llapi_file_create() does not allow some changes
-Details    : add llapi_file_open() that allows specifying the mode and 
+Details    : add llapi_file_open() that allows specifying the mode and
             open flags, and also returns an open file handle.
 
 Severity   : normal
@@ -387,9 +726,9 @@ Details    : Remove mnt_lustre_list in vfs_intent-2.6-rhel4.patch.
 Severity   : normal
 Bugzilla   : 10657
 Description: Add journal checksum support.(Kernel part)
-Details    : The journal checksum feature adds two new flags i.e 
-            JBD2_FEATURE_INCOMPAT_ASYNC_COMMIT and 
-            JBD2_FEATURE_COMPAT_CHECKSUM. JBD2_FEATURE_CHECKSUM flag 
+Details    : The journal checksum feature adds two new flags i.e
+            JBD2_FEATURE_INCOMPAT_ASYNC_COMMIT and
+            JBD2_FEATURE_COMPAT_CHECKSUM. JBD2_FEATURE_CHECKSUM flag
             indicates that the commit block contains the checksum for
             the blocks described by the descriptor blocks. Now commit
             record can be sent to disk without waiting for descriptor
@@ -409,7 +748,7 @@ Details    : execute lfs setstripe on client
 Severity   : major
 Bugzilla   : 12223
 Description: mds_obd_create error creating tmp object
-Details    : When the user sets quota on root, llog will be affected and can't 
+Details    : When the user sets quota on root, llog will be affected and can't
             create files and write files.
 
 Severity   : normal
@@ -417,7 +756,7 @@ Frequency  : Always on ia64 patchless client, and possibly others.
 Bugzilla   : 12826
 Description: Add EXPORT_SYMBOL check for node_to_cpumask symbol.
 Details    : This allows the patchless client to be loaded on architectures
-            without this export. 
+            without this export.
 
 Severity   : normal
 Bugzilla   : 13039
@@ -477,10 +816,10 @@ Description: when mds and osts use different quota unit(32bit and 64bit),
 Details    : void sending multiple quota reqs to mds, which will keep the
             status between the reqs.
 
-Severity   : normal 
+Severity   : normal
 Bugzilla   : 13125
 Description: osts not allocated evenly to files
-Details    : change the condition to increase offset_idx 
+Details    : change the condition to increase offset_idx
 
 Severity   : critical
 Frequency  : Always for filesystems larger than 2TB on 32-bit systems.
@@ -495,7 +834,7 @@ Details    : When generating the bio request for lustre file writes the
 
 Severity   : normal
 Bugzilla   : 11230
-Description: Tune the kernel for good SCSI performance. 
+Description: Tune the kernel for good SCSI performance.
 Details    : Set the value of /sys/block/{dev}/queue/max_sectors_kb
             to the value of /sys/block/{dev}/queue/max_hw_sectors_kb
             in mount_lustre.
@@ -537,8 +876,8 @@ Frequency  : only on ppc
 Bugzilla   : 12234
 Description: /proc/fs/lustre/devices broken on ppc
 Details    : The patch as applied to 1.6.2 doesn't look correct for all arches.
-            We should make sure the type of 'index' is loff_t and then cast 
-            explicitly as needed below.  Do not assign an explicitly cast 
+            We should make sure the type of 'index' is loff_t and then cast
+            explicitly as needed below.  Do not assign an explicitly cast
             loff_t to an int.
 
 Severity   : normal
@@ -557,14 +896,14 @@ Severity   : normal
 Bugzilla   : 13304
 Frequency  : Always, for kernels after 2.6.16
 Description: Fix warning idr_remove called for id=.. which is not allocated.
-Details    : Last kernels save old s_dev before kill super and not allow 
+Details    : Last kernels save old s_dev before kill super and not allow
             to restore from callback - restore it before call kill_anon_super.
 
 Severity   : minor
 Bugzilla   : 12948
 Description: buffer overruns could theoretically occur
 Details    : llapi_semantic_traverse() modifies the "path" argument by
-            appending values to the end of the origin string, and a 
+            appending values to the end of the origin string, and a
             overrun may occur. Adding buffer overrun check in liblustreapi.
 
 Severity   : normal
@@ -597,12 +936,12 @@ Severity   : critical
 Bugzilla   : 13751
 Description: Kernel patches update for RHEL5 2.6.18-8.1.14.el5.
 Details    : Modify target file & which_patch.
-            A flaw was found in the IA32 system call emulation provided 
-            on AMD64 and Intel 64 platforms. An improperly validated 64-bit 
-            value could be stored in the %RAX register, which could trigger an 
-            out-of-bounds system call table access. An untrusted local user 
-            could exploit this flaw to run code in the kernel 
-            (ie a root privilege escalation). (CVE-2007-4573). 
+            A flaw was found in the IA32 system call emulation provided
+            on AMD64 and Intel 64 platforms. An improperly validated 64-bit
+            value could be stored in the %RAX register, which could trigger an
+            out-of-bounds system call table access. An untrusted local user
+            could exploit this flaw to run code in the kernel
+            (ie a root privilege escalation). (CVE-2007-4573).
 
 Severity   : major
 Bugzilla   : 13093
@@ -616,7 +955,7 @@ Bugzilla   : 13454
 Description: Add jbd statistics patch for RHEL5 and 2.6.18-vanilla
 
 Severity   : minor
-Bugzilla   : 13732 
+Bugzilla   : 13732
 Description: change order of libsysio includes
 Details    : '#include sysio.h' should always come before '#include xtio.h'
 
@@ -638,11 +977,11 @@ Severity   : normal
 Bugzilla   : 13570
 Description: To avoid grant space > avaible space when the disk is almost
             full. Without this patch you might see the error "grant XXXX >
-            available" or some LBUG about grant, when the disk is almost 
+            available" or some LBUG about grant, when the disk is almost
             full.
 Details    : In filter_check_grant, for non_grant cache write, we should
             check the left space by  if (*left > ungranted + bytes), instead
-            of (*left > ungranted), because only we are sure the left space 
+            of (*left > ungranted), because only we are sure the left space
             is enough for another "bytes", then the ungrant space should be
             increase. In client, we should update cl_avail_grant only there
             is OBD_MD_FLGRANT in the reply.
@@ -691,7 +1030,7 @@ Details    : Console messages can now be disabled via lnet.printk.
 
 Severity   : normal
 Bugzilla   : 14614
-Description: User code with malformed file open parameter crashes client node 
+Description: User code with malformed file open parameter crashes client node
 Details    : Before packing join_file req, all the related reference should be
             checked carefully in case some malformed flags cause fake
             join_file req on client.
@@ -741,6 +1080,270 @@ Severity   : normal
 Bugzilla   : 14864
 Description: better handle error messages in extents code
 
+Severity   : normal
+Frequency  : RHEL4 only
+Bugzilla   : 14618
+Description: mkfs is very slow on IA64/RHEL4
+Details    : A performance regression has been discovered in the MPT Fusion
+            driver between versions 3.02.73rh and 3.02.99.00rh. As a
+            consequence, we have downgraded the MPT Fusion driver in the RHEL4
+            kernel from 3.02.99.00 to 3.02.73 until this problem is fixed.
+
+Severity   : enhancement
+Bugzilla   : 14729
+Description: SNMP support enhancement
+Details    : Adding total number of sampled request for an MDS node in snmp
+            support.
+
+Severity   : enhancement
+Bugzilla   : 14748
+Description: Optimize ldlm waiting list processing for PR extent locks
+Details    : When processing waiting list for read extent lock and meeting read
+            lock that is same or wider to it that is not contended, skip
+            processing rest of the list and immediatelly return current
+            status of conflictness, since we are guaranteed there are no
+            conflicting locks in the rest of the list.
+
+Severity   : normal
+Bugzilla   : 14774
+Description: Time out and refuse to reconnect
+Details    : When the failover node is the primary node, it is possible
+            to have two identical connections in imp_conn_list. We must
+            compare not conn's pointers but NIDs, otherwise we can defeat
+            connection throttling.
+
+Severity   : normal
+Bugzilla   : 13821
+Description: port llog fixes from b1_6 into HEAD
+Details    : Port llog reference couting and some llog cleanups from b1_6
+            (bug 10800) into HEAD, for protect from panic and access to already
+            free llog structures.
+
+Severity   : normal
+Bugzilla   : 14483
+Description: Detect stride IO mode in read-ahead
+Details    : When a client does stride read, read-ahead should detect that and
+            read-ahead pages according to the detected stride pattern.
+
+Severity   : normal
+Bugzilla   : 13805
+Description: data checksumming impacts single node performance
+Details    : add support for several checksum algorithm. Currently, only CRC32
+            and Adler-32 are supported. The checksum type can be changed on
+            the fly via /proc/fs/lustre/osc/*/checksum_type.
+
+Severity   : normal
+Bugzilla   : 14648
+Description: use adler32 for page checksums
+Details    : when available, use the Adler-32 algorithm instead of CRC32 for
+            page checksums.
+
+Severity   : normal
+Bugzilla   : 15033
+Description: build for x2 fails
+Details    : fix compile issue on Cray systems.
+
+Severity   : normal
+Bugzilla   : 14379
+Description: Properly match for duplicate locks
+Details    : Due to different lock order from skiplists code, we need to
+            traverse entire list for now
+
+Severity   : normal
+Frequency  : only on PPC/SLES10
+Bugzilla   : 14855
+Description: "BITS_PER_LONG is not 32 or 64" in linux/idr.h
+Details    : On SLES10/PPC, fs.h includes idr.h which requires BITS_PER_LONG to
+            be defined. Add a hack in mkfs_lustre.c to work around this compile
+            issue.
+
+Severity   : normal
+Bugzilla   : 14257
+Description: LASSERT on MDS when client holding flock lock dies
+Details    : ldlm pool logic depends on number of granted locks equal to
+            number of released locks which is not true for flock locks, so
+            just exclude such locks from consideration.
+
+Severity   : normal
+Bugzilla   : 15188
+Description: MDS deadlock with many ll_sync_lov threads and I/O stalled
+Details    : Use fsfilt_sync() for both the whole filesystem sync and
+            individual file sync to eliminate dangerous inode locking
+            with I_LOCK that can lead to a deadlock.
+
+Severity   : normal
+Bugzilla   : 14410
+Description: performance in 1.6.3
+Details    : Force q->max_phys_segments to MAX_PHYS_SEGMENTS on SLES10 to be
+            sure that 1MB requests are not fragmented by the block layer.
+
+Severity   : enhancement
+Bugzilla   : 11089
+Description: organize the server-side client stats on per-nid basis
+Details    : Change the structure of stats under obdfilter and mds to
+             New structure:
+                +- exports
+                        +- nid#1
+                        |   + stats
+                        |   + uuids
+                        +- nid#2...
+                        +- clear
+             The "uuid"s file would list the uuids of _active_ exports.
+             And the clear entry is to clear all stats and stale nids.
+
+Severity   : enhancement
+Bugzilla   : 11270
+Description: eliminate client locks in face of contention
+Details    : file contention detection and lockless i/o implementation
+            for contended files.
+
+Severity   : normal
+Bugzilla   : 15212
+Description: Reinitialize optind to 0 so that interactive lfs works in all cases
+
+Severity   : critical
+Frequency  : very rare, if additional xattrs are used on kernels >= 2.6.12
+Bugzilla   : 15777
+Description: MDS may lose file striping (and hence file data) in some cases
+Details    : If there are additional extended attributes stored on the MDS,
+            in particular ACLs, SELinux, or user attributes (if user_xattr
+            is specified for the client mount options) then there is a risk
+            of attribute loss.  Additionally, the Lustre file striping
+            needs to be larger than default (e.g. striped over all OSTs),
+            and an additional attribute must be stored initially in the
+            inode and then increase in size enough to be moved to the
+            external attribute block (e.g. ACL growing in size) for file
+            data to be lost.
+
+Severity   : normal
+Bugzilla   : 15346
+Description: skiplist implementation simplification
+Details    : skiplists are used to group compatible locks on granted list
+            that was implemented as tracking first and last lock of each lock group
+            the patch changes that to using doubly linked lists
+
+Severity   : normal
+Bugzilla   : 15574
+Description: MDS LBUG: ASSERTION(!IS_ERR(dchild))
+Details    : Change LASSERTs to client eviction (i.e. abort client's recovery)
+            because LASSERT on both the data supplied by a client, and the data
+            on disk is dangerous and incorrect.
+
+Severity   : enhancement
+Bugzilla   : 10718
+Description: Slow truncate/writes to huge files at high offsets.
+Details    : Directly associate cached pages to lock that protect those pages,
+            this allows us to quickly find what pages to write and remove
+            once lock callback is received.
+
+Severity   : normal
+Bugzilla   : 15953
+Description: more ldlm soft lockups
+Details    : In ldlm_resource_add_lock(), call to ldlm_resource_dump()
+            starve other threads from the resource lock for a long time in
+            case of long waiting queue, so change the debug level from
+            D_OTHER to the less frequently used D_INFO.
+
+Severity   : enhancement
+Bugzilla   : 13128
+Description: add -gid, -group, -uid, -user options to lfs find
+
+Severity   : normal
+Bugzilla   : 15950
+Description: Hung threads in invalidate_inode_pages2_range
+Details    : The direct IO path doesn't call check_rpcs to submit a new RPC once
+            one is completed. As a result, some RPCs are stuck in the queue
+            and are never sent.
+
+Severity   : normal
+Bugzilla   : 14629
+Description: filter threads hungs on waiting journal commit
+Details    : Cleanup filter group llog code, then only filter group llog will
+            be only created in the MDS/OST syncing process.
+
+Severity   : normal
+Bugzilla   : 15684
+Description: Procfs and llog threads access destoryed import sometimes.
+Details    : Sync the import destoryed process with procfs and llog threads by
+            the import refcount and semaphore.
+
+Severity   : enhancement
+Bugzilla   : 14975
+Description: openlock cache of b1_6 port to HEAD
+
+Severity   : major
+Frequncy   : rare
+Bugzilla   : 16226
+Description: kernel BUG at ldiskfs2_ext_new_extent_cb
+Details    : If insertion of an extent fails, then discard the inode
+            preallocation and free data blocks else it can lead to duplicate
+            blocks.
+
+Severity   : normal
+Bugzilla   : 16199
+Description: don't always update ctime in ext3_xattr_set_handle()
+Details    : Current xattr code updates the inode ctime in ext3_xattr_set_handle.
+            In some cases the ctime should not be updated, for example for
+            2.0->1.8 compatibility it is necessary to delete an xattr and it
+            should not update the ctime.
+
+Severity   : major
+Frequency  : rare
+Bugzilla   : 15713/16362
+Description: Assertion in iopen_connect_dentry in 1.6.3
+Details    : looking up an inode via iopen with the wrong generation number can
+            populate the dcache with a disconneced dentry while the inode
+            number is in the process of being reallocated. This causes an
+            assertion failure in iopen since the inode's dentry list contains
+            both a connected and disconnected dentry.
+
+Severity   : normal
+Bugzilla   : 16496
+Description: assertion failure in ldlm_handle2lock()
+Details    : fix a race between class_handle_unhash() and class_handle2object()
+            introduced in lustre 1.6.5 by bug 13622.
+
+Severity   : minor
+Frequency  : rare
+Bugzilla   : 12755
+Description: Kernel BUG: sd_iostats_bump: unexpected disk index
+Details    : remove the limit of 256 scsi disks in the sd_iostat patch
+
+Severity   : minor
+Frequency  : rare
+Bugzilla   : 16494
+Description: oops in sd_iostats_seq_show()
+Details    : unloading/reloading the scsi low level driver triggers a kernel
+            bug when trying to access the sd iostat file.
+
+Severity   : major
+Frequency  : rare
+Bugzilla   : 16404
+Description: Kernel panics during QLogic driver reload
+Details    : REQ_BLOCK_PC requests are not handled properly in the sd iostat
+            patch, causing memory corruption.
+
+Severity   : minor
+Frequency  : rare
+Bugzilla   : 16140
+Description: journal_dev option does not work in b1_6
+Details    : pass mount option during pre-mount.
+
+Severity   : enhancement
+Bugzilla   : 10555
+Description: Add a FIEMAP(FIle Extent MAP) ioctl
+Details    : FIEMAP ioctl will allow an application to efficiently fetch the
+             extent information of a file. It can be used to map logical blocks
+             in a file to physical blocks in the block device.
+
+Severity   : normal
+Bugzilla   : 15198
+Description: LDLM soft lockups - improvement
+Details    : It is be possible to send the lock handle along with each read
+             or write request because the client is already doing a lock match
+             itself so there isn't any reason the OST should have to re-do that
+             search.
+
 --------------------------------------------------------------------------------
 
 2007-08-10         Cluster File Systems, Inc. <info@clusterfs.com>
@@ -771,7 +1374,7 @@ Severity   : minor
 Frequency  : at statup only
 Bugzilla   : 12860
 Description: mds_lov_synchronize race leads to various problems
-Details    : simultaneous MDT->OST connections at startup can cause the 
+Details    : simultaneous MDT->OST connections at startup can cause the
             sync to abort, leaving the OSC in a bad state.
 
 Severity   : enhancement
@@ -940,7 +1543,7 @@ Details    : When osc reconnect ost, OST(filter) should check whether it
             to update the client grant space info.
 
 Severity   : normal
-Frequency  : when client reconnect to OST 
+Frequency  : when client reconnect to OST
 Bugzilla   : 11662
 Description: Grant Leak when osc do resend and replay bulk write
 Details           : When osc reconnect to OST, OST(filter)should clear grant info of
@@ -949,33 +1552,33 @@ Details     : When osc reconnect to OST, OST(filter)should clear grant info of
             these of resend/replay write req.
 
 Severity   : normal
-Frequency  : rare 
+Frequency  : rare
 Bugzilla   : 11662
 Description: Grant space more than avaiable left space sometimes.
 Details           : When then OST is about to be full, if two bulk writing from
             different clients came to OST. Accord the avaliable space of the
             OST, the first req should be permitted, and the second one
-            should be denied by ENOSPC. But if the seconde arrived before 
+            should be denied by ENOSPC. But if the seconde arrived before
             the first one is commited. The OST might wrongly permit second
             writing, which will cause grant space > avaiable space.
 
 Severity   : normal
-Frequency  : when client is evicted 
+Frequency  : when client is evicted
 Bugzilla   : 12371
 Description: Grant might be wrongly erased when osc is evicted by OST
-Details    : when the import is evicted by server, it will fork another 
-            thread ptlrpc_invalidate_import_thread to invalidate the 
-            import, where the grant will be set to 0.  While the original 
-            thread will update the grant it got when connecting. So if 
-            the former happened latter, the grant will be wrongly errased 
+Details    : when the import is evicted by server, it will fork another
+            thread ptlrpc_invalidate_import_thread to invalidate the
+            import, where the grant will be set to 0.  While the original
+            thread will update the grant it got when connecting. So if
+            the former happened latter, the grant will be wrongly errased
             because of this race.
 
 Severity   : normal
-Frequency  : rare 
+Frequency  : rare
 Bugzilla   : 12401
-Description: Checking Stale with correct fid 
-Details    : ll_revalidate_it should uses de_inode instead of op_data.fid2 
-            to check whether it is stale, because sometimes, we want the 
+Description: Checking Stale with correct fid
+Details    : ll_revalidate_it should uses de_inode instead of op_data.fid2
+            to check whether it is stale, because sometimes, we want the
             enqueue happened anyway, and op_data.fid2 will not be initialized.
 
 Severity   : enhancement
@@ -991,29 +1594,29 @@ Details    : size of struct ll_inode_info is to big for union inode.u and this
             can be cause of random memory corruption.
 
 Severity   : normal
-Frequency  : rare 
+Frequency  : rare
 Bugzilla   : 10818
 Description: Memory leak in recovery
 Details    : Lov_mds_md was not free in an error handler in mds_create_object.
-            It should also check obd_fail before fsfilt_start, otherwise if 
+            It should also check obd_fail before fsfilt_start, otherwise if
             fsfilt_start return -EROFS,(failover mds during mds recovery).
-            then the req will return with repmsg->transno = 0 and rc = EROFS. 
+            then the req will return with repmsg->transno = 0 and rc = EROFS.
             and we met hit the assert LASSERT(req->rq_reqmsg->transno ==
-            req->rq_repmsg->transno) in ptlrpc_replay_interpret.  Fcc should 
+            req->rq_repmsg->transno) in ptlrpc_replay_interpret.  Fcc should
             be freed no matter whether fsfilt_commit success or not.
 
 Severity   : minor
 Frequency  : only with huge count clients
 Bugzilla   : 11817
-Description: Prevents from taking the superblock lock in llap_from_page for 
+Description: Prevents from taking the superblock lock in llap_from_page for
             a soon died page.
-Details    : using LL_ORIGIN_REMOVEPAGE origin flag instead of LL_ORIGIN_UNKNOW 
-            for llap_from_page call in ll_removepage prevents from taking the 
+Details    : using LL_ORIGIN_REMOVEPAGE origin flag instead of LL_ORIGIN_UNKNOW
+            for llap_from_page call in ll_removepage prevents from taking the
             superblock lock for a soon died page.
 
 Severity   : normal
 Frequency  : rare
-Bugzilla   : 11935 
+Bugzilla   : 11935
 Description: Not check open intent error before release open handle
 Details    : in some rare cases, the open intent error is not checked before
             release open handle, which may cause
@@ -1022,9 +1625,9 @@ Details    : in some rare cases, the open intent error is not checked before
 
 Severity   : normal
 Frequency  : rare
-Bugzilla   : 12556 
-Description: Set cat log bitmap only after create log success. 
-Details    : in some rare cases, the cat log bitmap is set too early. and it 
+Bugzilla   : 12556
+Description: Set cat log bitmap only after create log success.
+Details    : in some rare cases, the cat log bitmap is set too early. and it
             should be set only after create log success.
 
 Severity   : major
@@ -1041,11 +1644,11 @@ Details    : Insert cond_resched to give other threads a chance to use some CPU
 
 Severity   : normal
 Frequency  : rare
-Bugzilla   : 12086 
-Description: the cat log was not initialized in recovery 
+Bugzilla   : 12086
+Description: the cat log was not initialized in recovery
 Details    : When mds(mgs) do recovery, the tgt_count might be zero, so the
             unlink log on mds will not be initialized until mds post
-            recovery. And also in mds post recovery, the unlink log will 
+            recovery. And also in mds post recovery, the unlink log will
             initialization will be done asynchronausly, so there will be race
             between add unlink log and unlink log initialization.
 
@@ -1066,7 +1669,7 @@ Details    : imp_lock should be held while iterating over imp_sending_list for
 Severity   : normal
 Bugzilla   : 12689
 Description: replay-single.sh test 52 fails
-Details    : A lock's skiplist need to be cleanup when it being unlinked 
+Details    : A lock's skiplist need to be cleanup when it being unlinked
             from its resource list.
 
 Severity   : normal
@@ -1095,7 +1698,7 @@ Details    : If a OST has no remain object, system will block on the creating
 Severity   : enhancement
 Bugzilla   : 12702
 Description: refine locking for avoid write wrong info into lov_objid file
-Details    : fix possible races with add new target and write/update data in 
+Details    : fix possible races with add new target and write/update data in
             lov_objid file.
 
 --------------------------------------------------------------------------------
@@ -1129,7 +1732,7 @@ Details    : The __iget() symbol export is missing.  To avoid the need for
         special upgrade step is needed. Please read the
         user documentation before upgrading any part of a live system.
        * WIRE PROTOCOL CHANGE from previous 1.6 beta versions.  This
-         version will not interoperate with 1.6 betas before beta5 (1.5.95).  
+         version will not interoperate with 1.6 betas before beta5 (1.5.95).
        * WARNING: Lustre configuration and startup changes are required with
         this release.  See https://mail.clusterfs.com/wikis/lustre/MountConf
         for details.
@@ -1168,7 +1771,7 @@ Bugzilla   : 9862
 Description: optimized stripe assignment
 Details    : stripe assignments are now made based on ost space available,
             ost previous usage, and OSS previous usage, in order to try
-            to optimize storage space and networking resources. 
+            to optimize storage space and networking resources.
        
 Severity   : enhancement
 Bugzilla   : 4226
@@ -1205,16 +1808,16 @@ Severity   : enhancement
 Bugzilla   : 22484
 Description: client read/write statistics
 Details    : Add client read/write call usage stats for performance
-            analysis of user processes. 
+            analysis of user processes.
             /proc/fs/lustre/llite/*/offset_stats shows non-sequential
             file access. extents_stats shows chunk size distribution.
             extents_stats_per_process show chunk size distribution per
-            user process. 
+            user process.
 
 Severity   : enhancement
 Bugzilla   : 22486
 Description: mds statistics
-Details    : Add detailed mds operations statistics in  
+Details    : Add detailed mds operations statistics in
             /proc/fs/lustre/mds/*/stats.
 
 Severity   : minor
@@ -3454,7 +4057,7 @@ Severity   : Minor
 Frequency  : Rare
 Bugzilla   : 11248
 Description: merge and cleanup kernel patches.
-Details    : 
+Details    :
 
 -----------------------------------------------------------------------------