* [Patch] scsi_ioctl: support persistent reserve commands through ioctl for non-root user.
@ 2015-08-01 9:51 jiang.biao2
2015-09-03 16:13 ` Lee Duncan
0 siblings, 1 reply; 2+ messages in thread
From: jiang.biao2 @ 2015-08-01 9:51 UTC (permalink / raw)
To: linux-scsi, JBottomley
scsi_ioctl: support persistent reserve commands through ioctl for
non-root user.
Scsi persistent reserve commands need to be used for non-root user in
many scenarios.
EPERM error will be returned by sg_io() when PERSISTENT_RESERVE_OUT
or PERSISTENT_RESERVE_IN command is sent through ioctl() for
non-root user.
Add PERSISTENT_RESERVE_OUT and PERSISTENT_RESERVE_IN into
blk_default_cmd_filter in blk_set_cmd_filter_defaults() to support
persistent reserve commands for non-root user.
Signed-off-by: Jiang Biao <jiang.biao2@zte.com.cn>
Signed-off-by: Li Ping <li.ping288@zte.com.cn>
Reviewed-by: Liu Jianjun <liu.jianjun3@zte.com.cn>
diff -urpN block/scsi_ioctl.c block_new/scsi_ioctl.c
--- block/scsi_ioctl.c 2015-08-01 17:07:47.000000000 +0800
+++ block_new/scsi_ioctl.c 2015-08-01 17:09:56.000000000 +0800
@@ -202,6 +202,9 @@ static void blk_set_cmd_filter_defaults(
__set_bit(GPCMD_LOAD_UNLOAD, filter->write_ok);
__set_bit(GPCMD_SET_STREAMING, filter->write_ok);
__set_bit(GPCMD_SET_READ_AHEAD, filter->write_ok);
+ /* Persistent reserve command*/
+ __set_bit(PERSISTENT_RESERVE_IN, filter->read_ok);
+ __set_bit(PERSISTENT_RESERVE_OUT, filter->write_ok);
}
int blk_verify_command(unsigned char *cmd, fmode_t has_write_perm)
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [Patch] scsi_ioctl: support persistent reserve commands through ioctl for non-root user.
2015-08-01 9:51 [Patch] scsi_ioctl: support persistent reserve commands through ioctl for non-root user jiang.biao2
@ 2015-09-03 16:13 ` Lee Duncan
0 siblings, 0 replies; 2+ messages in thread
From: Lee Duncan @ 2015-09-03 16:13 UTC (permalink / raw)
To: jiang.biao2, linux-scsi, JBottomley
On 08/01/2015 02:51 AM, jiang.biao2@zte.com.cn wrote:
> scsi_ioctl: support persistent reserve commands through ioctl for
> non-root user.
>
> Scsi persistent reserve commands need to be used for non-root user in
> many scenarios.
> EPERM error will be returned by sg_io() when PERSISTENT_RESERVE_OUT
> or PERSISTENT_RESERVE_IN command is sent through ioctl() for
> non-root user.
> Add PERSISTENT_RESERVE_OUT and PERSISTENT_RESERVE_IN into
> blk_default_cmd_filter in blk_set_cmd_filter_defaults() to support
> persistent reserve commands for non-root user.
>
> Signed-off-by: Jiang Biao <jiang.biao2@zte.com.cn>
> Signed-off-by: Li Ping <li.ping288@zte.com.cn>
> Reviewed-by: Liu Jianjun <liu.jianjun3@zte.com.cn>
>
> diff -urpN block/scsi_ioctl.c block_new/scsi_ioctl.c
> --- block/scsi_ioctl.c 2015-08-01 17:07:47.000000000 +0800
> +++ block_new/scsi_ioctl.c 2015-08-01 17:09:56.000000000 +0800
> @@ -202,6 +202,9 @@ static void blk_set_cmd_filter_defaults(
> __set_bit(GPCMD_LOAD_UNLOAD, filter->write_ok);
> __set_bit(GPCMD_SET_STREAMING, filter->write_ok);
> __set_bit(GPCMD_SET_READ_AHEAD, filter->write_ok);
> + /* Persistent reserve command*/
> + __set_bit(PERSISTENT_RESERVE_IN, filter->read_ok);
> + __set_bit(PERSISTENT_RESERVE_OUT, filter->write_ok);
> }
>
> int blk_verify_command(unsigned char *cmd, fmode_t has_write_perm)
> N�����r��y���b�X��ǧv�^�){.n�+����{���"�{ay�\x1dʇڙ�,j\a��f���h���z�\x1e�w���\f���j:+v���w�j�m����\a����zZ+�����ݢj"��!tml=
>
I disagree that it is a good idea to give non-root users permanent
access to the reservation commands. This can be used to coopt a disc,
including the root disc.
--
Lee Duncan
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2015-09-03 16:13 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-01 9:51 [Patch] scsi_ioctl: support persistent reserve commands through ioctl for non-root user jiang.biao2
2015-09-03 16:13 ` Lee Duncan
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).