uas_eh_abort_handler uas-tag inflight OUT

Bug #1860917 reported by geole0
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
e2fsprogs (Ubuntu)
New
Undecided
Unassigned

Bug Description

591/5000
Hello
To try to understand this incident ( https://bugs.launchpad.net/ubuntu/+source/gpart/+bug/1857914 ) which systematically occurs in version 19.10 and which I cannot (yet?) reproduce in version 18.04.03, I made a test game.

Using this test game consisting only of cp and diff commands, I caused a similar problem.
The first visible consequence which seems serious to me: The copied file is not identical to the sending file.
It seems that the blocks are shifted.

It would be desirable for the user to be warned that the written files have become incorrect.

Thank you for your advice.

Journalctl says only
janv. 26 13:29:35 a kernel: EXT4-fs (sdb1): mounted filesystem with ordered data mode. Opts: (null)
janv. 26 13:30:12 a kernel: sd 6:0:0:0: [sdb] tag#16 uas_eh_abort_handler 0 uas-tag 17 inflight: OUT
janv. 26 13:30:12 a kernel: sd 6:0:0:0: [sdb] tag#16 CDB: Write(10) 2a 00 00 0f ec 00 00 04 00 00
janv. 26 14:22:48 a kernel: EXT4-fs (sdb1): mounted filesystem with ordered data mode. Opts: (null)
a@a:~$

Tags: bot-comment
Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

Thank you for taking the time to report this bug and helping to make Ubuntu better. It seems that your bug report is not filed about a specific source package though, rather it is just filed against Ubuntu in general. It is important that bug reports be filed about source packages so that people interested in the package can find the bugs about it. You can find some hints about determining what package your bug might be about at https://wiki.ubuntu.com/Bugs/FindRightPackage. You might also ask for help in the #ubuntu-bugs irc channel on Freenode.

To change the source package that this bug is filed about visit https://bugs.launchpad.net/ubuntu/+bug/1860917/+editstatus and add the package name in the text box next to the word Package.

[This is an automated message. I apologize if it reached you inappropriately; please just reply to this message indicating so.]

tags: added: bot-comment
geole0 (geole0)
affects: ubuntu → e2fsprogs (Ubuntu)
Revision history for this message
geole0 (geole0) wrote :

Hello.
When I decide to reduce the size of a partition stored in an external drive and formatted in EXT4 after booting with ubuntu 19.10, this partition is destroyed. it seems abnormal to me.

This is systematic for the twelve partitions and twelve boots in the prepared context.

If several partitions are reduced in the same passage, only the first in the list is destroyed. The others are well treated!

Failure does not occur if another external drive is used.

The incident does not occur if the partition is formatted in EXT3 or if the size reduction is done with ubuntu 18.04.3

Some results will be provided as an attachment

Here is the script used.

export LC_ALL=POSIX
Size=35957760k
Debug="-d 60"
Trace=Bug1857914-ThreePartitions.txt
date>$Trace
for Part in sdb1 sdb6 sdb7 ; do
    sudo umount /dev/$Part
    echo "================================check file system on /dev/$Part for errors with command sudo e2fsck -f -y -v /dev/$Part >>$TRACE" >>$Trace
    sudo e2fsck -f -y -v /dev/$Part 2>>$Trace >>$Trace
    echo "================================ shrink for /dev/$Part with command sudo resize2fs $Debug -p /dev/$Part $Size >>$Trace" >>$Trace
    sudo resize2fs $Debug -p /dev/$Part $Size 2>>$Trace >>$Trace
    echo "================================check file system on /dev/$Part for errors with command sudo e2fsck -f -n -v /dev/$Part >>$TRACE" >>$Trace
    sudo e2fsck -f -n -v /dev/$Part 2>>$Trace >>$Trace
    echo "================================check for erreur on UAS module with command journalctl -b | egrep "resize2fs|uas_eh_abort_handler" >>$TRACE" >>$Trace
done
journalctl -b | grep -E "resize2fs|CDB|uas_eh_abort_handler|I/O error|sdb" >>$Trace
date>>$Trace
cat $Trace

Revision history for this message
geole0 (geole0) wrote :
Revision history for this message
geole0 (geole0) wrote :
Revision history for this message
geole0 (geole0) wrote :
Revision history for this message
Theodore Ts'o (tytso) wrote :

janv. 26 13:30:12 a kernel: sd 6:0:0:0: [sdb] tag#16 uas_eh_abort_handler 0 uas-tag 17 inflight: OUT

UAS is "USB Attached SCSI", and this error indicates some kind of hardware issue (maybe a loose cable connector?).

If you can't replicate the failure, it might be because it's a one-off hardware problem.

One thing I would suggest is running e2fsck -f after shrinking the file system using resize2fs. If there is any corruption that you can see when using resize2fs with shrinking, preferably with a fixed HDD or SSD which is known to be good (USB cable instability is a nightmare and I generally don't recommend people to use USB attached storage on laptops because laptops tend to move, and USB cables getting jostled is a really common problem).

So from a problem isolation perspective, it's really helpful to try to isolate variables. So if you can try to isolate the problem using a image file stored on a fixed storage device, and then try shrinking the file system on the image, so we don't have to worry about gpart bugs, hardware bugs, etc., that is really helpful. And if you use e2fsck to make sure the file system is consistent, as opposed to waiting for the kernel to trip on the file corruption, that would be also very helpful.

If you are paying $$$ to Canonical, then there will be much more likely to be Ubuntu support engineers will do this sort of fault determination procedure. As an upstream developer for e2fsprogs, however, I'm really not going to get involved until you can give me a reproducible test case that doesn't require your specific hardware --- hence the request to see if you can reproduce the problem using an image file without using hardware and partitions.

If this is really dependent on which partition is involved, then this might be a gpart bug. And no one (and certainly Canonical!) is paying me to try to debug gpart.

Revision history for this message
geole0 (geole0) wrote :

Hello.
Thank you for your involvement in this problem.
My goal is to make ubuntu better.
I accidentally encountered this incident in a real context.
I knew that changing partition size is risky and impossible with a partition in use. That's why I duplicated it on an external disk.
I found that the problem was reproducible.
As the partition size was around 300 GiB, this took a long time.
I managed to make a 40 GB test game. I was then able to reproduce the incident on 12 partitions.

I think I eliminated the material cause by doing the tests
- Badblocks with a partition making up the entire disk.
- Writing single sectors on approximately 95% of the disk space then re-reading with control of what is read is indeed what is expected.
- Impossible to reproduce the incident if using the ext3 format
- Impossible to reproduce the incident in the same session. A boot or a disconnection must take place for each incident.
- Unable to carry out the incident in version 18.04.03

My diagnosis is that there is a functioning problem in the hard drive application link when the UAS driver is used.
I worked as much as possible to reduce the size of the partition so that the execution times were acceptable.
Now, I cause the incident systematically with an 8 GB partition. I do not know how to do less despite all the possible tests.

I find it important to diagnose the problem to avoid that the future version 20.04 also have this behavior.
I don't know if it's in the UAS module, the resize2fs module or maybe the mount module.

You will find attached a file containing the mode of realization of the incident with
1)  a script making 250 files of 30 Mio.

2) a script formatting the partition and transferring the files then deleting the first files. it seems to me that this is the key element in the making of the incident.

3) A script doing the size reduction.

Another file contained resulted from an execution.
I was able to do the incidents with the following quantities of files:
 250 - 150
 250 - 125
 200 - 125
....
176 - 102

I cannot produce the incident with the couple 174-100.
This seems to me to be a problem of volumetry that UAS treats badly.

I remain available to put the trace options that you will advise me.

I am ready to open a new problem with the mount module and the UAS module because there is not the same function as in version 18.04.3 for the management of logical partitions which are not in the same order as the physical structure.
The UAS module is now automatically disabled. It's probably better this way.

I use google translation to answer you

Thanks.

Revision history for this message
geole0 (geole0) wrote :
Revision history for this message
geole0 (geole0) wrote :

ATTENTION
This error is new. and it is because of use of logical device not un good order!!!!!!!
Feb 02 10:59:19 a systemd[1315]: mnt-USBsdb3.mount: Succeeded.
Feb 02 10:59:39 a kernel: blk_update_request: I/O error, dev sdb, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 0 prio class 0
Feb 02 10:59:39 a kernel: blk_update_request: I/O error, dev sdb, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 0 prio class 0
Feb 02 10:59:39 a kernel: blk_update_request: I/O error, dev sdb, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 0 prio class 0
Feb 02 10:59:39 a kernel: blk_update_request: I/O error, dev sdb, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 0 prio class 0
Feb 02 10:59:57 a kernel: usb 4-2: new SuperSpeed Gen 1 USB device number 3 using xhci_hcd

Revision history for this message
geole0 (geole0) wrote :

Hello
The incident is always present with the most recent ubuntu version.

a@a:~$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu Focal Fossa (development branch)"
a@a:~$
a@a:~$
a@a:~$ sudo apt update
Atteint :1 http://fr.archive.ubuntu.com/ubuntu focal InRelease
Atteint :2 http://fr.archive.ubuntu.com/ubuntu focal-updates InRelease
Atteint :3 http://security.ubuntu.com/ubuntu focal-security InRelease
Atteint :4 http://fr.archive.ubuntu.com/ubuntu focal-backports InRelease
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Tous les paquets sont à jour.
a@a:~$

Revision history for this message
geole0 (geole0) wrote :
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.