linux-scsi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [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).