Ticket #7993 (new defect)

Opened 6 years ago

Last modified 6 years ago

Journal unmount broken - dataloss n vfat

Reported by: martin.langhoff Owned by: tomeu
Priority: high Milestone: 8.2.0 (was Update.2)
Component: journal-activity Version: not specified
Keywords: joyride-2301 blocks-:8.2.0 polish:8.2.0 relnote Cc: aly, mikus@…
Action Needed: design Verified: no
Deployments affected: Blocked By:
Blocking:

Description

On Joyride-2301 unmounting USB disks seems to succeed (the USB icon is gone form the Journal) but *fails*. When the user removes the USB stick, vfat filesystems are _toast_.

I am pretty sure that this worked ok on joyride-2270

Attachments

org.laptop.JournalActivity-1.log (4.3 kB) - added by martin.langhoff 6 years ago.

Change History

  Changed 6 years ago by martin.langhoff

  • cc aly added

Changed 6 years ago by martin.langhoff

  Changed 6 years ago by martin.langhoff

Attached the Journal logs with have interesting backtraces.

umount from cli fails with a '/media/fooo/ is in use' - probably from Journal, but we don't have lsof on the XO at the moment.

  Changed 6 years ago by martin.langhoff

Also check out #7895

  Changed 6 years ago by mikus

  • cc mikus@… added

This is what my #7638 (prematurely closed by someone) was about. In that case, I've now come to the conclusion that it was "opeator error" - I had failed to change the "working directory" in a Terminal session, such that it was still 'using' the removable device. That kept the 'umount' from working.

There is still the bug in Journal - it should not remove the device icon if the 'umount' cannot be performed.

[A suggestion for your users - do a 'df' from Terminal. If it still shows the device, issue the 'umount' manually.]

  Changed 6 years ago by tomeu

It just worked here. AFAIK, there's no way to unmount a device if any process is using any file in there.

In the future, removable devices won't be mounted in the DS, so we'll show a removable device in the UI only when it is mounted in the system like GNOME does.

  Changed 6 years ago by martin.langhoff

Tomeu - I'm failing to repro the "journal keeps mountpoint busy" part of the problem today. I can repro however the "failure to unmount is hidden by the journal" part.

There are many reasons why the unmount can fail, including crashed/zombi activities leaving open files.

So --

  • plug in your USB drive, wait till it mounts
  • on a terminal, cd /media/<mountpoint>
  • from the journal, unmount
  • Journal should complain about umount failing...

  Changed 6 years ago by tomeu

Well, that's some kind of feature ;)

The device icon should appear in the Journal UI when the device is mounted in the DS. Now, the job of the Journal is to do everything possible so the device is mounted in the system if and only if the device is mounted as well in the DS. This seems to fail if some other process keeps the device busy. Is there a way to force an unmount?

As I said, it is planned to stop accessing removable devices through the DS in the next release, so I don't know if this ticket is relevant now.

follow-up: ↓ 9   Changed 6 years ago by martin.langhoff

It is still a dataloss scenario on the distro we want to release as 8.2.0 - unless by "planned... by next release" you mean 8.2.0.

in reply to: ↑ 8   Changed 6 years ago by tomeu

Replying to martin.langhoff:

It is still a dataloss scenario on the distro we want to release as 8.2.0 - unless by "planned... by next release" you mean 8.2.0.

Well, we have other more serious data loss scenarios related to the DS, and don't think we have nobody working on them for 8.2.x.

  Changed 6 years ago by marco

  • next_action changed from never set to design

follow-up: ↓ 12   Changed 6 years ago by kimquirk

  • priority changed from normal to high

how often does this happen? Is there something special (unusual) that you have to do to get it in the state where unmounting from the journal doesn't actually work?

If it is a regression from earlier behavior, we should get to the root cause and figure out a work-around or fix. If this has always been there, but it is a lot easier to trigger in the latest builds, then we might also need to consider a fix or work-around.

If this is the same as it has always been, then a release note will be good for 8.2

in reply to: ↑ 11   Changed 6 years ago by tomeu

Replying to kimquirk:

how often does this happen? Is there something special (unusual) that you have to do to get it in the state where unmounting from the journal doesn't actually work?

You need to use the terminal and leave a process using a file on the removable device.

If it is a regression from earlier behavior, we should get to the root cause and figure out a work-around or fix. If this has always been there, but it is a lot easier to trigger in the latest builds, then we might also need to consider a fix or work-around.

No, this has been like that since always.

If this is the same as it has always been, then a release note will be good for 8.2

Yup.

  Changed 6 years ago by cjb

  • keywords blocks-:8.2.0 polish:8.2.0 relnote added; blocks?:8.2.0 removed

This was rejected as blocker.

Note: See TracTickets for help on using tickets.