Message ID | 1549054223-12220-5-git-send-email-zub@linux.fjfi.cvut.cz (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | block: sed-opal: support shadow MBR done flag and write | expand |
On Fri, Feb 01, 2019 at 09:50:11PM +0100, David Kozub wrote: > Every step ends by calling cmd_finalize (via finalize_and_send) > yet every step adds the token OPAL_ENDLIST on its own. Moving > this into cmd_finalize decreases code duplication. > > Co-authored-by: Jonas Rabenstein <jonas.rabenstein@studium.uni-erlangen.de> > Signed-off-by: David Kozub <zub@linux.fjfi.cvut.cz> > Signed-off-by: Jonas Rabenstein <jonas.rabenstein@studium.uni-erlangen.de> > Reviewed-by: Scott Bauer <sbauer@plzdonthack.me> Looks good, Reviewed-by: Christoph Hellwig <hch@lst.de>
Normally I wouldn't like decreasing the readability (having a STARTLIST without an ENDLIST in the same function), but this makes a lot of sense with 5/16 Acked-by: Jon Derrick <jonathan.derrick@intel.com> On Fri, 2019-02-01 at 21:50 +0100, David Kozub wrote: > Every step ends by calling cmd_finalize (via finalize_and_send) > yet every step adds the token OPAL_ENDLIST on its own. Moving > this into cmd_finalize decreases code duplication. > > Co-authored-by: Jonas Rabenstein <jonas.rabenstein@studium.uni-erlangen.de> > Signed-off-by: David Kozub <zub@linux.fjfi.cvut.cz> > Signed-off-by: Jonas Rabenstein <jonas.rabenstein@studium.uni-erlangen.de> > Reviewed-by: Scott Bauer <sbauer@plzdonthack.me> > --- > block/sed-opal.c | 25 +++---------------------- > 1 file changed, 3 insertions(+), 22 deletions(-) > > diff --git a/block/sed-opal.c b/block/sed-opal.c > index 980705681806..35b1747b650f 100644 > --- a/block/sed-opal.c > +++ b/block/sed-opal.c > @@ -661,6 +661,9 @@ static int cmd_finalize(struct opal_dev *cmd, u32 hsn, u32 tsn) > struct opal_header *hdr; > int err = 0; > > + /* close parameter list */ > + add_token_u8(&err, cmd, OPAL_ENDLIST); > + > add_token_u8(&err, cmd, OPAL_ENDOFDATA); > add_token_u8(&err, cmd, OPAL_STARTLIST); > add_token_u8(&err, cmd, 0); > @@ -1079,7 +1082,6 @@ static int gen_key(struct opal_dev *dev, void *data) > add_token_bytestring(&err, dev, opalmethod[OPAL_GENKEY], > OPAL_UID_LENGTH); > add_token_u8(&err, dev, OPAL_STARTLIST); > - add_token_u8(&err, dev, OPAL_ENDLIST); > > if (err) { > pr_debug("Error building gen key command\n"); > @@ -1142,7 +1144,6 @@ static int get_active_key(struct opal_dev *dev, void *data) > add_token_u8(&err, dev, 10); /* ActiveKey */ > add_token_u8(&err, dev, OPAL_ENDNAME); > add_token_u8(&err, dev, OPAL_ENDLIST); > - add_token_u8(&err, dev, OPAL_ENDLIST); > if (err) { > pr_debug("Error building get active key command\n"); > return err; > @@ -1188,7 +1189,6 @@ static int generic_lr_enable_disable(struct opal_dev *dev, > > add_token_u8(&err, dev, OPAL_ENDLIST); > add_token_u8(&err, dev, OPAL_ENDNAME); > - add_token_u8(&err, dev, OPAL_ENDLIST); > return err; > } > > @@ -1254,8 +1254,6 @@ static int setup_locking_range(struct opal_dev *dev, void *data) > > add_token_u8(&err, dev, OPAL_ENDLIST); > add_token_u8(&err, dev, OPAL_ENDNAME); > - add_token_u8(&err, dev, OPAL_ENDLIST); > - > } > if (err) { > pr_debug("Error building Setup Locking range command.\n"); > @@ -1295,7 +1293,6 @@ static int start_generic_opal_session(struct opal_dev *dev, > > switch (auth) { > case OPAL_ANYBODY_UID: > - add_token_u8(&err, dev, OPAL_ENDLIST); > break; > case OPAL_ADMIN1_UID: > case OPAL_SID_UID: > @@ -1308,7 +1305,6 @@ static int start_generic_opal_session(struct opal_dev *dev, > add_token_bytestring(&err, dev, opaluid[auth], > OPAL_UID_LENGTH); > add_token_u8(&err, dev, OPAL_ENDNAME); > - add_token_u8(&err, dev, OPAL_ENDLIST); > break; > default: > pr_debug("Cannot start Admin SP session with auth %d\n", auth); > @@ -1406,7 +1402,6 @@ static int start_auth_opal_session(struct opal_dev *dev, void *data) > add_token_u8(&err, dev, 3); > add_token_bytestring(&err, dev, lk_ul_user, OPAL_UID_LENGTH); > add_token_u8(&err, dev, OPAL_ENDNAME); > - add_token_u8(&err, dev, OPAL_ENDLIST); > > if (err) { > pr_debug("Error building STARTSESSION command.\n"); > @@ -1429,7 +1424,6 @@ static int revert_tper(struct opal_dev *dev, void *data) > add_token_bytestring(&err, dev, opalmethod[OPAL_REVERT], > OPAL_UID_LENGTH); > add_token_u8(&err, dev, OPAL_STARTLIST); > - add_token_u8(&err, dev, OPAL_ENDLIST); > if (err) { > pr_debug("Error building REVERT TPER command.\n"); > return err; > @@ -1463,7 +1457,6 @@ static int internal_activate_user(struct opal_dev *dev, void *data) > add_token_u8(&err, dev, OPAL_ENDNAME); > add_token_u8(&err, dev, OPAL_ENDLIST); > add_token_u8(&err, dev, OPAL_ENDNAME); > - add_token_u8(&err, dev, OPAL_ENDLIST); > > if (err) { > pr_debug("Error building Activate UserN command.\n"); > @@ -1490,7 +1483,6 @@ static int erase_locking_range(struct opal_dev *dev, void *data) > add_token_bytestring(&err, dev, opalmethod[OPAL_ERASE], > OPAL_UID_LENGTH); > add_token_u8(&err, dev, OPAL_STARTLIST); > - add_token_u8(&err, dev, OPAL_ENDLIST); > > if (err) { > pr_debug("Error building Erase Locking Range Command.\n"); > @@ -1521,7 +1513,6 @@ static int set_mbr_done(struct opal_dev *dev, void *data) > add_token_u8(&err, dev, OPAL_ENDNAME); > add_token_u8(&err, dev, OPAL_ENDLIST); > add_token_u8(&err, dev, OPAL_ENDNAME); > - add_token_u8(&err, dev, OPAL_ENDLIST); > > if (err) { > pr_debug("Error Building set MBR Done command\n"); > @@ -1553,7 +1544,6 @@ static int set_mbr_enable_disable(struct opal_dev *dev, void *data) > add_token_u8(&err, dev, OPAL_ENDNAME); > add_token_u8(&err, dev, OPAL_ENDLIST); > add_token_u8(&err, dev, OPAL_ENDNAME); > - add_token_u8(&err, dev, OPAL_ENDLIST); > > if (err) { > pr_debug("Error Building set MBR done command\n"); > @@ -1585,7 +1575,6 @@ static int generic_pw_cmd(u8 *key, size_t key_len, u8 *cpin_uid, > add_token_u8(&err, dev, OPAL_ENDNAME); > add_token_u8(&err, dev, OPAL_ENDLIST); > add_token_u8(&err, dev, OPAL_ENDNAME); > - add_token_u8(&err, dev, OPAL_ENDLIST); > > return err; > } > @@ -1694,7 +1683,6 @@ static int add_user_to_lr(struct opal_dev *dev, void *data) > add_token_u8(&err, dev, OPAL_ENDNAME); > add_token_u8(&err, dev, OPAL_ENDLIST); > add_token_u8(&err, dev, OPAL_ENDNAME); > - add_token_u8(&err, dev, OPAL_ENDLIST); > > if (err) { > pr_debug("Error building add user to locking range command.\n"); > @@ -1755,7 +1743,6 @@ static int lock_unlock_locking_range(struct opal_dev *dev, void *data) > > add_token_u8(&err, dev, OPAL_ENDLIST); > add_token_u8(&err, dev, OPAL_ENDNAME); > - add_token_u8(&err, dev, OPAL_ENDLIST); > > if (err) { > pr_debug("Error building SET command.\n"); > @@ -1843,11 +1830,8 @@ static int activate_lsp(struct opal_dev *dev, void *data) > } > add_token_u8(&err, dev, OPAL_ENDLIST); > add_token_u8(&err, dev, OPAL_ENDNAME); > - add_token_u8(&err, dev, OPAL_ENDLIST); > - > } else { > add_token_u8(&err, dev, OPAL_STARTLIST); > - add_token_u8(&err, dev, OPAL_ENDLIST); > } > > if (err) { > @@ -1904,7 +1888,6 @@ static int get_lsp_lifecycle(struct opal_dev *dev, void *data) > add_token_u8(&err, dev, 6); /* Lifecycle Column */ > add_token_u8(&err, dev, OPAL_ENDNAME); > > - add_token_u8(&err, dev, OPAL_ENDLIST); > add_token_u8(&err, dev, OPAL_ENDLIST); > > if (err) { > @@ -1964,8 +1947,6 @@ static int get_msid_cpin_pin(struct opal_dev *dev, void *data) > add_token_u8(&err, dev, 4); /* End Column */ > add_token_u8(&err, dev, 3); /* Lifecycle Column */ > add_token_u8(&err, dev, OPAL_ENDNAME); > - > - add_token_u8(&err, dev, OPAL_ENDLIST); > add_token_u8(&err, dev, OPAL_ENDLIST); > > if (err) {
diff --git a/block/sed-opal.c b/block/sed-opal.c index 980705681806..35b1747b650f 100644 --- a/block/sed-opal.c +++ b/block/sed-opal.c @@ -661,6 +661,9 @@ static int cmd_finalize(struct opal_dev *cmd, u32 hsn, u32 tsn) struct opal_header *hdr; int err = 0; + /* close parameter list */ + add_token_u8(&err, cmd, OPAL_ENDLIST); + add_token_u8(&err, cmd, OPAL_ENDOFDATA); add_token_u8(&err, cmd, OPAL_STARTLIST); add_token_u8(&err, cmd, 0); @@ -1079,7 +1082,6 @@ static int gen_key(struct opal_dev *dev, void *data) add_token_bytestring(&err, dev, opalmethod[OPAL_GENKEY], OPAL_UID_LENGTH); add_token_u8(&err, dev, OPAL_STARTLIST); - add_token_u8(&err, dev, OPAL_ENDLIST); if (err) { pr_debug("Error building gen key command\n"); @@ -1142,7 +1144,6 @@ static int get_active_key(struct opal_dev *dev, void *data) add_token_u8(&err, dev, 10); /* ActiveKey */ add_token_u8(&err, dev, OPAL_ENDNAME); add_token_u8(&err, dev, OPAL_ENDLIST); - add_token_u8(&err, dev, OPAL_ENDLIST); if (err) { pr_debug("Error building get active key command\n"); return err; @@ -1188,7 +1189,6 @@ static int generic_lr_enable_disable(struct opal_dev *dev, add_token_u8(&err, dev, OPAL_ENDLIST); add_token_u8(&err, dev, OPAL_ENDNAME); - add_token_u8(&err, dev, OPAL_ENDLIST); return err; } @@ -1254,8 +1254,6 @@ static int setup_locking_range(struct opal_dev *dev, void *data) add_token_u8(&err, dev, OPAL_ENDLIST); add_token_u8(&err, dev, OPAL_ENDNAME); - add_token_u8(&err, dev, OPAL_ENDLIST); - } if (err) { pr_debug("Error building Setup Locking range command.\n"); @@ -1295,7 +1293,6 @@ static int start_generic_opal_session(struct opal_dev *dev, switch (auth) { case OPAL_ANYBODY_UID: - add_token_u8(&err, dev, OPAL_ENDLIST); break; case OPAL_ADMIN1_UID: case OPAL_SID_UID: @@ -1308,7 +1305,6 @@ static int start_generic_opal_session(struct opal_dev *dev, add_token_bytestring(&err, dev, opaluid[auth], OPAL_UID_LENGTH); add_token_u8(&err, dev, OPAL_ENDNAME); - add_token_u8(&err, dev, OPAL_ENDLIST); break; default: pr_debug("Cannot start Admin SP session with auth %d\n", auth); @@ -1406,7 +1402,6 @@ static int start_auth_opal_session(struct opal_dev *dev, void *data) add_token_u8(&err, dev, 3); add_token_bytestring(&err, dev, lk_ul_user, OPAL_UID_LENGTH); add_token_u8(&err, dev, OPAL_ENDNAME); - add_token_u8(&err, dev, OPAL_ENDLIST); if (err) { pr_debug("Error building STARTSESSION command.\n"); @@ -1429,7 +1424,6 @@ static int revert_tper(struct opal_dev *dev, void *data) add_token_bytestring(&err, dev, opalmethod[OPAL_REVERT], OPAL_UID_LENGTH); add_token_u8(&err, dev, OPAL_STARTLIST); - add_token_u8(&err, dev, OPAL_ENDLIST); if (err) { pr_debug("Error building REVERT TPER command.\n"); return err; @@ -1463,7 +1457,6 @@ static int internal_activate_user(struct opal_dev *dev, void *data) add_token_u8(&err, dev, OPAL_ENDNAME); add_token_u8(&err, dev, OPAL_ENDLIST); add_token_u8(&err, dev, OPAL_ENDNAME); - add_token_u8(&err, dev, OPAL_ENDLIST); if (err) { pr_debug("Error building Activate UserN command.\n"); @@ -1490,7 +1483,6 @@ static int erase_locking_range(struct opal_dev *dev, void *data) add_token_bytestring(&err, dev, opalmethod[OPAL_ERASE], OPAL_UID_LENGTH); add_token_u8(&err, dev, OPAL_STARTLIST); - add_token_u8(&err, dev, OPAL_ENDLIST); if (err) { pr_debug("Error building Erase Locking Range Command.\n"); @@ -1521,7 +1513,6 @@ static int set_mbr_done(struct opal_dev *dev, void *data) add_token_u8(&err, dev, OPAL_ENDNAME); add_token_u8(&err, dev, OPAL_ENDLIST); add_token_u8(&err, dev, OPAL_ENDNAME); - add_token_u8(&err, dev, OPAL_ENDLIST); if (err) { pr_debug("Error Building set MBR Done command\n"); @@ -1553,7 +1544,6 @@ static int set_mbr_enable_disable(struct opal_dev *dev, void *data) add_token_u8(&err, dev, OPAL_ENDNAME); add_token_u8(&err, dev, OPAL_ENDLIST); add_token_u8(&err, dev, OPAL_ENDNAME); - add_token_u8(&err, dev, OPAL_ENDLIST); if (err) { pr_debug("Error Building set MBR done command\n"); @@ -1585,7 +1575,6 @@ static int generic_pw_cmd(u8 *key, size_t key_len, u8 *cpin_uid, add_token_u8(&err, dev, OPAL_ENDNAME); add_token_u8(&err, dev, OPAL_ENDLIST); add_token_u8(&err, dev, OPAL_ENDNAME); - add_token_u8(&err, dev, OPAL_ENDLIST); return err; } @@ -1694,7 +1683,6 @@ static int add_user_to_lr(struct opal_dev *dev, void *data) add_token_u8(&err, dev, OPAL_ENDNAME); add_token_u8(&err, dev, OPAL_ENDLIST); add_token_u8(&err, dev, OPAL_ENDNAME); - add_token_u8(&err, dev, OPAL_ENDLIST); if (err) { pr_debug("Error building add user to locking range command.\n"); @@ -1755,7 +1743,6 @@ static int lock_unlock_locking_range(struct opal_dev *dev, void *data) add_token_u8(&err, dev, OPAL_ENDLIST); add_token_u8(&err, dev, OPAL_ENDNAME); - add_token_u8(&err, dev, OPAL_ENDLIST); if (err) { pr_debug("Error building SET command.\n"); @@ -1843,11 +1830,8 @@ static int activate_lsp(struct opal_dev *dev, void *data) } add_token_u8(&err, dev, OPAL_ENDLIST); add_token_u8(&err, dev, OPAL_ENDNAME); - add_token_u8(&err, dev, OPAL_ENDLIST); - } else { add_token_u8(&err, dev, OPAL_STARTLIST); - add_token_u8(&err, dev, OPAL_ENDLIST); } if (err) { @@ -1904,7 +1888,6 @@ static int get_lsp_lifecycle(struct opal_dev *dev, void *data) add_token_u8(&err, dev, 6); /* Lifecycle Column */ add_token_u8(&err, dev, OPAL_ENDNAME); - add_token_u8(&err, dev, OPAL_ENDLIST); add_token_u8(&err, dev, OPAL_ENDLIST); if (err) { @@ -1964,8 +1947,6 @@ static int get_msid_cpin_pin(struct opal_dev *dev, void *data) add_token_u8(&err, dev, 4); /* End Column */ add_token_u8(&err, dev, 3); /* Lifecycle Column */ add_token_u8(&err, dev, OPAL_ENDNAME); - - add_token_u8(&err, dev, OPAL_ENDLIST); add_token_u8(&err, dev, OPAL_ENDLIST); if (err) {