X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2FChangeLog;h=f6ed4e6a1137d70a1f052f26364d6326fbb69b9b;hp=4141ff900c096a552fea0aea244a25a0c13697c5;hb=1377b92eb0ed2e6100b15e812109b783bfb7ff45;hpb=ac391ce3aa27602c81890e8b7e74bff74eb36e50 diff --git a/lustre/ChangeLog b/lustre/ChangeLog index 4141ff9..f6ed4e6 100644 --- a/lustre/ChangeLog +++ b/lustre/ChangeLog @@ -11,6 +11,27 @@ tbd Sun Microsystems, Inc. * 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). + * File join has been disabled in this release, refer to Bugzilla 16929. + +Severity : enhancement +Bugzilla : 1819 +Description: Add /proc entry for import status +Details : The mdc, osc, and mgc import directories now have + an import directory that contains useful import data for debugging + connection problems. + +Severity : enhancement +Bugzilla : 15966 +Description: Re-disable certain /proc logging +Details : Enable and disable client's offset_stats, extents_stats and + extents_stats_per_process stats logging on the fly. + +Severity : major +Frequency : Only on FC kernels 2.6.22+ +Bugzilla : 16303 +Description: oops in statahead +Details : Do not drop reference count for the dentry from VFS when lookup, + VFS will do that by itself. Severity : enhancement Bugzilla : 16643 @@ -95,6 +116,10 @@ Details : When connection is reused this not moved from CONN_UNUSED_HASH again in unused hash. Severity : enhancement +Bugzilla : 15899 +Description: File striping can now be set to use an arbitrary pool of OSTs. + +Severity : enhancement Bugzilla : 16573 Description: Export bytes_read/bytes_write count on OSC/OST. @@ -1396,7 +1421,7 @@ Details : It is be possible to send the lock handle along with each read search. Severity : normal -Frequency : only X2 +Frequency : only on Cray X2 Bugzilla : 16813 Description: X2 build failures Details : fix build failures on Cray X2. @@ -1407,6 +1432,305 @@ Description: xid & resent requests Details : Initialize RPC XID from clock at startup (randomly if clock is bad). +Severity : enhancement +Bugzilla : 14095 +Description: Add lustre_start utility to start or stop multiple Lustre servers + from a CSV file. + +Severity : major +Bugzilla : 17024 +Description: Lustre GPF in {:ptlrpc:ptlrpc_server_free_request+373} +Details : In case of memory pressure, list_del() can be called twice on + req->rq_history_list, causing a kernel oops. + +Severity : normal +Bugzilla : 17026 +Description: (ptllnd_peer.c:557:kptllnd_peer_check_sends()) ASSERTION(!in_interrupt()) failed +Details : fix stack overflow in the distributed lock manager by defering export + eviction after a failed ast to the elt thread instead of handling + it in the dlm interpret routine. + +Severity : normal +Bugzilla : 16450 +Description: Convert some comments to new format. +Details : Update documenting comments to match doxygen conventions. + +Severity : normal +Bugzilla : 16450 +Description: Grammar fixes. +Details : A couple of trivial spelling fixes. + +Severity : normal +Bugzilla : 16450 +Description: OSD_COUNTERS-mandatory +Details : Make previously optional ->oti_{w,r}_locks sanity checks mandatory + to simplify the code. + +Severity : normal +Bugzilla : 16450 +Description: simplify cmm_device freeing logic. +Details : Call cmm_device_free() in the failure path of cmm_device_alloc(). + +Severity : normal +Bugzilla : 16450 +Description: Add lockdep support to dt_object_operations locking interface. +Details : Augment ->do_{read,write}_lock() prototypes with a `role' parameter + indicating lock ordering. Update mdd code to use new locking + interface. + +Severity : normal +Bugzilla : 16450 +Description: Introduce failloc constants for lockless IO tests. +Details : Add two new failloc constants to test lockless IO. Only one of + them in implemented---another is checked in yet to be landed + core CLIO code. + +Severity : normal +Bugzilla : 16450 +Description: Add lockdep support for inode mutex. +Details : Introduce and use new LOCK_INODE_MUTEX_PARENT() macro to be used + in the situations where Lustre has to lock more than one inode + mutex at a time. + +Severity : normal +Bugzilla : 16450 +Description: Add optional invariants checking support. +Details : Add new LINVRNT() macro, optional on new --enable-invariants + configure switch. This macro is to be used for consistency and + sanity checks that are too expensive to be left in `production' + mode. + +Severity : minor +Bugzilla : 16450 +Description: Zap lock->l_granted_mode with explicit LCK_MINMODE. +Details : Use LCK_MINMODE rather than 0 to reset lock->l_granted_mode to + its initial state. + +Severity : normal +Bugzilla : 16450 +Description: Add lockdep support for ldlm_lock and ldlm_resource. +Details : Use spin_lock_nested() in (the only) situation where more than + one ldlm_lock is locked simultaneously. Also, fix possible + dead-lock in ldlm_lock_change_resource() by enforcing particular + lock ordering. + +Severity : normal +Bugzilla : 16450 +Description: Use struct ldlm_callback_suite in ldlm_lock_create(). +Details : Instead of specifying each ldlm_lock call-back through separate + parameter, wrap them into struct ldlm_callback_suite. + +Severity : normal +Bugzilla : 16450 +Description: Kill join_lru obd method and its callers. +Details : CLIO uses lock weighting policy to keep locks over mmapped regions + in memory---a requirement implemented through ->o_join_lru() obd + method in HEAD. Remove this method and its users. + +Severity : normal +Bugzilla : 16450 +Description: Add asynchronous ldlm ENQUEUE completion handler. +Details : CLIO posts ENQUEUE requests asynchronously through ptlrpcd---a + case that stock ldlm_completion_ast() cannot handle as it waits + until lock is granted. Introduce new ldlm_completion_ast_async() + for this. Also comment ldlm_completion_ast(). + +Severity : normal +Bugzilla : 16450 +Description: ldlm_error <-> errno conversion. +Details : Add functions to map (rather arbitrary) between LDLM error codes + and standard errno values. CLIO needs this to prevent LDLM specific + constants from escaping ldlm and osc. + +Severity : minor +Bugzilla : 16450 +Description: Kill unused ldlm_handle2lock_ns() function. +Details : Kill unused ldlm_handle2lock_ns() function. + +Severity : normal +Bugzilla : 16450 +Description: Add lu_ref support to ldlm_lock +Details : lu_ref support for ldlm_lock and ldlm_resource. See lu_ref patch. + lu_ref fields ->l_reference and ->lr_reference are added to ldlm_lock + and ldlm_resource. LDLM interface has to be changed, because code that + releases a reference on a lock, has to "know" what reference this is. + In the most frequent case + + lock = ldlm_handle2lock(handle); + ... + LDLM_LOCK_PUT(lock); + + no changes are required. When any other reference (received _not_ from + ldlm_handle2lock()) is released, LDLM_LOCK_RELEASE() has to be called + instead of LDLM_LOCK_PUT(). + + Arguably, changes are pervasive, and interface requires some discipline + for proper use. On the other hand, it was very instrumental in finding + a few leaked lock references. + +Severity : normal +Bugzilla : 16450 +Description: Add ldlm_lock_addref_try(). +Details : Introduce ldlm_lock_addref_try() function (used by CLIO) that + attempts to addref a lock that might be being canceled + concurrently. + +Severity : normal +Bugzilla : 16450 +Description: Add ldlm_weigh_callback(). +Details : Add new ->l_weigh_ast() call-back to ldlm_lock. It is called + by ldlm_cancel_shrink_policy() to estimate lock "value", instead of + hard-coded `number of pages' logic. + +Severity : normal +Bugzilla : 16450 +Description: Add lockdep annotations to llog code. +Details : Use appropriately tagged _nested() locking calls in the places + where llog takes more than one ->lgh_lock lock. + +Severity : minor +Bugzilla : 16450 +Description: Add loi_kms_set(). +Details : Wrap kms updates into a helper function. + +Severity : minor +Bugzilla : 16450 +Description: Constify instances of struct lsm_operations. +Details : Constify instances of struct lsm_operations. + +Severity : normal +Bugzilla : 16450 +Description: lu_conf support. +Details : On a server, a file system object is uniquely identified + by a fid, which is sufficient to locate and load all object + state (inode). On a client, on the other hand, more data are + necessary instantiate an object. Change lu_object_find() and + friends to take additional `lu_conf' argument describing object. + Typically this includes layout information. + +Severity : normal +Bugzilla : 16450 +Description: lu_context fixes. +Details : Introduce new lu_context functions that are needed on the client + side, where some system threads (ptlrpcd) are shared by multiple + modules, and so cannot be stopped during module shutdown. + +Severity : normal +Bugzilla : 16450 +Description: Add start and stop methods to lu_device_type_operations. +Details : Introduce two new methods in lu_device_type_operations, that are + invoked when first instance of a given type is created and last one + is destroyed respectively. This is need by CLIO. + +Severity : normal +Bugzilla : 16450 +Description: Add lu_ref support to struct lu_device. +Details : Add lu_ref support to lu_object and lu_device. lu_ref is used to + track leaked references. + +Severity : normal +Bugzilla : 16450 +Description: Introduce lu_kmem_descr. +Details : lu_kmem_descr and its companion interface allow to create + and destroy a number of kmem caches at once. + +Severity : normal +Bugzilla : 16450 +Description: Fix lu_object finalization race. +Details : Fix a race between lu_object_find() finding an object and its + concurrent finalization. This race is (most likely) not possible + on the server, but might happen on the client. + +Severity : normal +Bugzilla : 16450 +Description: Introduce lu_ref interface. +Details : lu_ref is a debugging module allowing to track references to + a given object. It is quite cpu expensive, and has to be + explicitly enabled with --enable-lu_ref. See usage description + within the patch. + +Severity : minor +Bugzilla : 16450 +Description: Factor lu_site procfs stats into a separate function. +Details : Separate lu_site stats printing code into a separate function + that can be reused on a client. + +Severity : minor +Bugzilla : 16450 +Description: Constify instances of struct {lu,dt,md}_device_operations. +Details : Constify instances of struct {lu,dt,md}_device_operations. + +Severity : normal +Bugzilla : 16450 +Description: Introduce struct md_site and move meta-data specific parts of + struct lu_site here. +Details : Move md-specific fields out of struct lu_site into special struct + md_site, so that lu_site can be used on a client. + +Severity : minor +Bugzilla : 16450 +Description: Kill mdd_lov_destroy(). +Details : Remove unused mdd code. + +Severity : minor +Bugzilla : 16450 +Description: Add st_block checking to multistat.c. +Details : Add st_block checking to multistat.c. + +Severity : normal +Bugzilla : 16450 +Description: Add lu_ref support to struct obd_device. +Details : Add lu_ref tracking to obd_device. + +Severity : minor +Bugzilla : 16450 +Description: Kill obd_set_fail_loc(). +Details : Remove unused code. + +Severity : normal +Bugzilla : 16450 +Description: Add special type for ptlrpc_request interpret functions. +Details : Add lu_env parameter to ->rq_interpreter call-back. NULL is passed + there. Actual usage will be in CLIO. + +Severity : normal +Bugzilla : 16450 +Description: Replace RW_LOCK_UNLOCKED() macro with rwlock_init(). +Details : Replace RW_LOCK_UNLOCKED() with rwlock_init() as the former + doesn't work with lockdep. + +Severity : normal +Bugzilla : 16450 +Description: Add rwv.c test program. +Details : New testing program exercising readv(2) and writev(2) (Qian). + +Severity : normal +Bugzilla : 16450 +Description: Add sendfile.c test program. +Details : New testing program exercising sendfile(2) (Jay). + +Severity : minor +Bugzilla : 16450 +Description: Ratelimit a message that can be very frequent. +Details : Ratelimit a memory allocation failure message that can + be too chatty. + +Severity : minor +Bugzilla : 16450 +Description: Use cdebug_show() in CDEBUG-style macros defined outside of libcfs. +Details : Use cdebug_show() in CDEBUG-style macros defined outside of libcfs. + +Severity : normal +Bugzilla : 16450 +Description: Liblustre build fixes. +Details : Liblustre build fixes. + +Severity : normal +Bugzilla : 16450 +Description: libcfs: add cfs_{need,cond}_resched() interface. +Details : libcfs: add cfs_{need,cond}_resched() definition and + implementations for Linux, NT, and liblustre. + -------------------------------------------------------------------------------- 2007-08-10 Cluster File Systems, Inc. @@ -1808,8 +2132,6 @@ Details : The __iget() symbol export is missing. To avoid the need for for details. * bug fixes - - Severity : enhancement Bugzilla : 8007 Description: MountConf