Bug 194607

Summary: Unable to change passwd upon a hard reboot
Product: File System Reporter: Ramana Reddy (ramanareddy1892)
Component: ext4Assignee: fs_ext4 (fs_ext4)
Status: NEW ---    
Severity: normal    
Priority: P1    
Hardware: ARM   
OS: Linux   
Kernel Version: 3.18.29 Subsystem:
Regression: No Bisected commit-id:

Description Ramana Reddy 2017-02-16 15:00:32 UTC
Hi,

I have an imx6dl based custom board. I compiled OpenWRT Chaos Calmer for this and generated an image out of u-boot.img, zImage and dtb file in one partition and rootfs in second partition. First partition is vfat and second(rootfs) is ext4.

The board can boot from SD card and internal eMMC flash. I tried on both of them.

Steps to reproduce:

1. Boot the image.
2. Change passwd to a non-empty string
3. Observe there is no passwd+ file in the /etc/ directory
4. Do a hard reboot (Soft reboot doesn't reproduce this)
5. Observe that passwd+ file exists in /etc/ directory. (Happens more than 80% of the time)
6. Now unless we remove this file, passwd cannot be changed.

    root@OpenWRT:~# passwd 
    Changing password for root
    New password: 
    Bad password: too short
    Retype password: 
    passwd: can't create '/etc/passwd+': File exists
    passwd: can't update password file /etc/passwd

This cannot be a busybox issue. The problem comes because passwd+ file recovers after it got deleted upon reboot!!

I will upload the required logs/docs/info if specified.
Comment 1 Ramana Reddy 2017-02-16 15:05:28 UTC
Also there is no ssh session runnning. Only serial console is active. So there is only one instance of passwd being exceuted