Commit 9ec041ea authored by Luca Boccassi's avatar Luca Boccassi Committed by Jens Axboe

sed-opal: add support flag for SUM in status ioctl

Not every OPAL drive supports SUM (Single User Mode), so report this
information to userspace via the get-status ioctl so that we can adjust
the formatting options accordingly.
Tested on a kingston drive (which supports it) and a samsung one
(which does not).
Signed-off-by: default avatarLuca Boccassi <bluca@debian.org>
Link: https://lore.kernel.org/r/20230210010612.28729-1-luca.boccassi@gmail.comSigned-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 0aa2988e
...@@ -487,6 +487,8 @@ static int opal_discovery0_end(struct opal_dev *dev) ...@@ -487,6 +487,8 @@ static int opal_discovery0_end(struct opal_dev *dev)
break; break;
case FC_SINGLEUSER: case FC_SINGLEUSER:
single_user = check_sum(body->features); single_user = check_sum(body->features);
if (single_user)
dev->flags |= OPAL_FL_SUM_SUPPORTED;
break; break;
case FC_GEOMETRY: case FC_GEOMETRY:
check_geometry(dev, body); check_geometry(dev, body);
......
...@@ -144,6 +144,7 @@ struct opal_read_write_table { ...@@ -144,6 +144,7 @@ struct opal_read_write_table {
#define OPAL_FL_LOCKED 0x00000008 #define OPAL_FL_LOCKED 0x00000008
#define OPAL_FL_MBR_ENABLED 0x00000010 #define OPAL_FL_MBR_ENABLED 0x00000010
#define OPAL_FL_MBR_DONE 0x00000020 #define OPAL_FL_MBR_DONE 0x00000020
#define OPAL_FL_SUM_SUPPORTED 0x00000040
struct opal_status { struct opal_status {
__u32 flags; __u32 flags;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment