ext4: check if device support discard in FITRIM ioctl
authorLukas Czerner <lczerner@redhat.com>
Wed, 23 Feb 2011 17:42:32 +0000 (12:42 -0500)
committerTheodore Ts'o <tytso@mit.edu>
Wed, 23 Feb 2011 17:42:32 +0000 (12:42 -0500)
commit4143179218960a70d821a425e3c23ce44aa93dee
tree8f7aa98378a979ebfa323165ae985d7d5b39a24c
parent0b75a840120b1e647e32342e9cc46631410088d5
ext4: check if device support discard in FITRIM ioctl

For a device that does not support discard, the FITRIM ioctl returns
-EOPNOTSUPP when blkdev_issue_discard() returns this error code, which
is how the user is informed that the device does not support discard.

If there are no suitable free extents to be trimmed, then FITRIM will
return success even though the device does not support discard, which
could confuse the user.  So check explicitly if the device supports
discard and return an error code at the beginning of the FITRIM ioctl
processing.

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
fs/ext4/ioctl.c