[Ocfs2-tools-devel] [PATCH] o2cb: fix systemd o2cb.service failure

Junxiao Bi junxiao.bi at oracle.com
Mon Oct 19 17:04:38 PDT 2015


Hi Eric,

This happened on Oracle Linux 7 also RHEL7. Just try "modprobe -s
configfs", configfs is mounted after that. But any way even your system
didn't have this issue, this patch will not cause any harm.

Thanks,
Junxiao.

On 10/19/2015 06:38 PM, eric wrote:
> Hi junxiao,
> 
> Thanks. That means configfs can be triggered to be mounted in implicit
> way, right?
> 
> I tried to load configfs at boot by adding it to
> /etc/modules-load.d/configfs.conf and also
> /etc/init.d/boot.local. But, failed to reproduce problem as you described.
> 
> Could you tell me how to reproduce so that I can confirm with you?
> 
> Thanks,
> Eric
> 
> On 10/19/15 16:23, Junxiao Bi wrote:
>> Hi Eric,
>>
>> On 10/19/2015 04:07 PM, eric wrote:
>>> Hi junxiao,
>>>
>>> Could explain a bit more why the first check_filesystem in
>>> mount_filesystem() isn't enough?
>> configfs is not mounted before. Then modprobe -s configfs can trigger
>> the configfs mount service, so get an "already mounted" error when mount
>> configfs.
>>
>> Thanks,
>> Junxiao.
>>>
>>> Thanks,
>>> Eric
>>> On 10/14/15 10:27, Junxiao Bi wrote:
>>>> Configfs may have been mounted by "modprobe -s configfs" in
>>>> load_filesystem() on ol7 which has systemd supported, in this
>>>> case, mount_filesystem() will fail and o2cb.service can't be
>>>> started. To fix this, check fs mount status when mount fail,
>>>> if already mounted, don't return error.
>>>>
>>>> Signed-off-by: Junxiao Bi <junxiao.bi at oracle.com>
>>>> ---
>>>>    vendor/common/o2cb.init.sh |    1 +
>>>>    1 file changed, 1 insertion(+)
>>>>
>>>> diff --git a/vendor/common/o2cb.init.sh b/vendor/common/o2cb.init.sh
>>>> index dedb408..e8d5e8d 100755
>>>> --- a/vendor/common/o2cb.init.sh
>>>> +++ b/vendor/common/o2cb.init.sh
>>>> @@ -610,6 +610,7 @@ mount_filesystem()
>>>>        mount -t ${FSNAME} ${FSNAME} ${MOUNTPOINT}
>>>>        if [ $? != 0 ]
>>>>        then
>>>> +        check_filesystem "$FSNAME" "$MOUNTPOINT" && return 2
>>>>            echo "Unable to mount ${FSNAME} filesystem" >&2
>>>>            return 1
>>>>        fi
>>
> 




More information about the Ocfs2-tools-devel mailing list