Bug 986648 - RFE: optimize automatic partitioning (and devicefactory) use of SSD
RFE: optimize automatic partitioning (and devicefactory) use of SSD
Status: NEW
Product: Fedora
Classification: Fedora
Component: python-blivet (Show other bugs)
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: blivet-maint-list@redhat.com
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2013-07-21 05:13 EDT by Artur Szymczak
Modified: 2018-02-14 21:37 EST (History)
13 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
anaconda.log (11.79 KB, text/plain)
2013-07-23 05:04 EDT, Artur Szymczak
no flags Details
anaconda.program.log (126.33 KB, text/plain)
2013-07-23 05:05 EDT, Artur Szymczak
no flags Details
anaconda.storage.log (1.35 MB, text/plain)
2013-07-23 05:06 EDT, Artur Szymczak
no flags Details
/etc/fstab (541 bytes, text/plain)
2013-07-23 05:06 EDT, Artur Szymczak
no flags Details
/sys/block/sda/queue/scheduler (21 bytes, text/plain)
2013-07-23 05:07 EDT, Artur Szymczak
no flags Details

  None (edit)
Description Artur Szymczak 2013-07-21 05:13:13 EDT
Description of problem:
Could you add support for SSD disk detection in anaconda, and proper handling it? I mean, that anconda should properly:
- detect erase block, and add proper mkfs options during creating FS
- add relevant options to fstab (like discard, noatime or relatime)
- other
Comment 1 Steve Tyler 2013-07-21 18:01:17 EDT
Could you be more specific about what actually happened when you attempted to install to the SSD?

Did you get an exception?
Was the SSD detected?
Was the file system corrupt?

If the install succeeded, there should be log files in /var/log/anaconda/ on the installed system. Could you attach those as separate, uncompressed, text/plain files?
Comment 2 Steve Tyler 2013-07-21 18:37:07 EDT
FYI, you can configure mount options and file system tuning in a kickstart file:

15.4. Kickstart Options
part or partition
--fsoptions ...
--fsprofile ...

How are you installing?

Disclaimer: I have never used these options.
Comment 3 Artur Szymczak 2013-07-23 05:04:58 EDT
Created attachment 777237 [details]
Comment 4 Artur Szymczak 2013-07-23 05:05:41 EDT
Created attachment 777238 [details]
Comment 5 Artur Szymczak 2013-07-23 05:06:09 EDT
Created attachment 777239 [details]
Comment 6 Artur Szymczak 2013-07-23 05:06:38 EDT
Created attachment 777240 [details]
Comment 7 Artur Szymczak 2013-07-23 05:07:13 EDT
Created attachment 777241 [details]
Comment 8 Artur Szymczak 2013-07-23 05:08:19 EDT
Q: Did you get an exception?
A: No exception.

Q: Was the SSD detected?
A: Yes.

Q: Was the file system corrupt?
A: No.
Comment 9 Artur Szymczak 2013-07-23 05:09:56 EDT
(In reply to Steve Tyler from comment #2)
> FYI, you can configure mount options and file system tuning in a kickstart
> file:

End user, ould expect, that one's ssd wold be treated as expected automatically by anaconda, without kickstart intervention. But, thanks for you input.
Comment 10 Artur Szymczak 2013-07-23 05:22:11 EDT
I expect, that if anaconda would detect SSD drive as a 'target' drive, then it will:
- detect erase block for this ssd (using /sys or using https://github.com/bradfa/flashbench)
- properly align partition/lvm/luks on this drive (using information from above)
- use correct mkfs options to enhance performance (eg. http://wiki.gentoo.org/wiki/SSD)

Those steps, are essential, because it is hard to change it after installation.

And anaconda optionally could (it is not required, because one can change it after system is boot):
- activate trime on all LUKS/LVM/FS
- change I/O scheduler (eg. noop)
Comment 11 Steve Tyler 2013-07-23 07:56:40 EDT
Thanks, Artur.

  model: ATA OCZ-AGILITY4  path: /dev/sda  type: 1
Comment 12 Thomas Holmquist 2013-10-14 16:23:28 EDT
I think this is a dupe of bug#759920

Anyways, short of doing regex on the model of the drive you can fairly accurately detect SSDs through a combination of:

cat /sys/block/sdX/queue/rotational
cat /sys/block/sdX/removable
Comment 13 Thomas Holmquist 2013-11-21 16:48:59 EST
It looks like Ubuntu will be integrating this into their installer: http://www.phoronix.com/scan.php?page=news_item&px=MTUxOTY
Comment 14 David Tonhofer 2014-05-15 09:57:10 EDT
Additional problems that are likely to be of interest:

1) Does the SSD need a block of unallocated data to function appropriately?
   - How can that be decided?
   - How can anaconda do that automagically (because doing it manually is a PITA)

2) What happens to an SSD if the partition is marked as "encrypted". Is
   encryption weakened? Is the SSD inappropriately used? Currently, the
   partition is not filled with random data in the first place, and thus
   most of the space allocated to the partition can be used by SSD controller
   during write consolidation, but is this really a good thing?
Comment 15 Fedora Admin XMLRPC Client 2015-09-28 16:25:13 EDT
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Note You need to log in before you can comment on or make changes to this bug.