Update of /cvsroot/linux-vax/kernel-2.4/drivers/md
In directory sc8-pr-cvs1:/tmp/cvs-serv7538/drivers/md
Modified Files:
lvm-fs.c lvm-snap.c md.c
Log Message:
DA: sync with Marcelo 2.4.17
Index: lvm-fs.c
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/drivers/md/lvm-fs.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- lvm-fs.c 10 Apr 2002 14:57:35 -0000 1.1
+++ lvm-fs.c 10 Jun 2003 01:13:44 -0000 1.2
@@ -30,6 +30,7 @@
* 04/10/2001 - corrected devfs_register() call in lvm_init_fs()
* 11/04/2001 - don't devfs_register("lvm") as user-space always does it
* 10/05/2001 - show more of PV name in /proc/lvm/global
+ * 16/12/2001 - fix devfs unregister order and prevent duplicate unreg (REG)
*
*/
@@ -138,7 +139,7 @@
int i;
devfs_unregister(ch_devfs_handle[vg_ptr->vg_number]);
- devfs_unregister(vg_devfs_handle[vg_ptr->vg_number]);
+ ch_devfs_handle[vg_ptr->vg_number] = NULL;
/* remove lv's */
for(i = 0; i < vg_ptr->lv_max; i++)
@@ -148,6 +149,10 @@
for(i = 0; i < vg_ptr->pv_max; i++)
if(vg_ptr->pv[i]) lvm_fs_remove_pv(vg_ptr, vg_ptr->pv[i]);
+ /* must not remove directory before leaf nodes */
+ devfs_unregister(vg_devfs_handle[vg_ptr->vg_number]);
+ vg_devfs_handle[vg_ptr->vg_number] = NULL;
+
if(vg_ptr->vg_dir_pde) {
remove_proc_entry(LVM_LV_SUBDIR, vg_ptr->vg_dir_pde);
vg_ptr->lv_subdir_pde = NULL;
@@ -189,6 +194,7 @@
void lvm_fs_remove_lv(vg_t *vg_ptr, lv_t *lv) {
devfs_unregister(lv_devfs_handle[MINOR(lv->lv_dev)]);
+ lv_devfs_handle[MINOR(lv->lv_dev)] = NULL;
if(vg_ptr->lv_subdir_pde) {
const char *name = _basename(lv->lv_name);
Index: lvm-snap.c
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/drivers/md/lvm-snap.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- lvm-snap.c 10 Apr 2002 14:57:35 -0000 1.2
+++ lvm-snap.c 10 Jun 2003 01:13:44 -0000 1.3
@@ -542,8 +542,6 @@
void lvm_snapshot_release(lv_t * lv)
{
- int nbhs = KIO_MAX_SECTORS;
-
if (lv->lv_block_exception)
{
vfree(lv->lv_block_exception);
Index: md.c
===================================================================
RCS file: /cvsroot/linux-vax/kernel-2.4/drivers/md/md.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- md.c 10 Apr 2002 14:57:35 -0000 1.2
+++ md.c 10 Jun 2003 01:13:44 -0000 1.3
@@ -4039,4 +4039,4 @@
MD_EXPORT_SYMBOL(mddev_map);
MD_EXPORT_SYMBOL(md_check_ordering);
MD_EXPORT_SYMBOL(get_spare);
-
+MODULE_LICENSE("GPL");
|