/* Random uuid for MGC allows easier reconnects */
OBD_ALLOC_PTR(uuid);
- class_generate_random_uuid(uuidc);
+ ll_generate_random_uuid(uuidc);
class_uuid_unparse(uuidc, uuid);
/* Start the MGC */
obd_iocontrol(OBD_IOC_ABORT_RECOVERY,
obd->obd_self_export, 0, NULL, NULL);
}
+
+ /* log has been fully processed */
+ obd_notify(obd, NULL, OBD_NOTIFY_CONFIG, 0);
}
RETURN(rc);
if (IS_ERR(mnt)) {
rc = PTR_ERR(mnt);
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,0))
- CERROR("premount %s:%#lx ldiskfs failed (%d), is the ldiskfs "
- "module available?\n", lmd->lmd_dev, s_flags, rc);
- GOTO(out_free, rc);
+ /* 2.6 kernels: if ldiskfs fails, try ldiskfs2 */
+ mnt = ll_kern_mount("ldiskfs2", s_flags, lmd->lmd_dev, 0);
+ if (IS_ERR(mnt)) {
+ int rc2 = PTR_ERR(mnt);
+ CERROR("premount %s:%#lx ldiskfs failed: %d, ldiskfs2 "
+ "failed: %d. Is the ldiskfs module available?\n",
+ lmd->lmd_dev, s_flags, rc, rc2);
+ GOTO(out_free, rc);
+ }
#else
- /* If ldisk fails, try ext3 */
+ /* 2.4 kernels: if ldiskfs fails, try ext3 */
mnt = ll_kern_mount("ext3", s_flags, lmd->lmd_dev, 0);
if (IS_ERR(mnt)) {
rc = PTR_ERR(mnt);