<HTML><HEAD>
<META content="text/html; charset=utf-8" http-equiv=Content-Type>
<STYLE id=mysingle_style type=text/css>.search-word {
        BACKGROUND-COLOR: #ffee94
}
P {
        MARGIN-BOTTOM: 5px; FONT-SIZE: 10pt; FONT-FAMILY: Arial, arial; MARGIN-TOP: 5px
}
TD {
        MARGIN-BOTTOM: 5px; FONT-SIZE: 10pt; FONT-FAMILY: Arial, arial; MARGIN-TOP: 5px
}
LI {
        MARGIN-BOTTOM: 5px; FONT-SIZE: 10pt; FONT-FAMILY: Arial, arial; MARGIN-TOP: 5px
}
BODY {
        FONT-SIZE: 10pt; FONT-FAMILY: Arial, arial
}
</STYLE>

<META content=IE=5 http-equiv=X-UA-Compatible>
<META content=IE=5 http-equiv=X-UA-Compatible>
<META content=IE=5 http-equiv=X-UA-Compatible>
<META content=IE=5 http-equiv=X-UA-Compatible>
<STYLE id=knox_style type=text/css>P {
        MARGIN-BOTTOM: 5px; FONT-SIZE: 10pt; FONT-FAMILY: Arial, arial; MARGIN-TOP: 5px
}
</STYLE>

<META content=IE=5 http-equiv=X-UA-Compatible>
<META name=GENERATOR content="MSHTML 11.00.9600.18315">
<STYLE id=knox_style type=text/css>P {
        MARGIN-BOTTOM: 5px; FONT-SIZE: 10pt; FONT-FAMILY: Arial, arial; MARGIN-TOP: 5px
}
</STYLE>

<META content=IE=5 http-equiv=X-UA-Compatible></HEAD>
<BODY>
<P>Dear Daniel,</P>
<P>Thanks for the comments.</P>
<P>This contribution was inspired by already available IOCTL DRM_IOCTL_MODE_OBJ_SETPROPERTY.</P>
<P>The atomic APIs are relatively new and are not being used fully/extensively on older version of Linux kernel.</P>
<P>The old world of IOCTLs and properties is still in use, therefore, I was not much aware about the atomic ones.</P>
<P>Thanks for the heads up.</P>
<P>Thanks</P>
<P>-Satendra</P>
<P> </P>
<P>--------- <B>Original Message</B> ---------</P>
<P><B>Sender</B> : Daniel Stone <daniel@fooishbar.org></P>
<P><B>Date</B> : 2017-01-20 20:27 (GMT+5:30)</P>
<P><B>Title</B> : Re: [RFC] [GPU][DRM][PROPERTY] -Added a new ioctl in Linux DRM KMS driver.</P>
<P> </P><PRE>Hi Satendra,

On 20 January 2017 at 08:12, Satendra Singh Thakur
<satendra.t@samsung.com> wrote:
> -Added a new ioctl in Linux DRM KMS driver.
>  This ioctl allows user to set the values of an object’s multiple
>  properties in one go.
> -In the absence of such ioctl, User would be calling one ioctl to set each
>  property value;
>  Thus, user needs to call N ioctls to set values of N properties of an
>  object,  which is a time consuming and costly because each ioctl involves
>   a system call entering/exiting kernel (context switch).
> -This ioctl will set N properties (provided that HW allows it)
>  in a single context switch
> -This ioctl can be used to set multiple properties of ether a plane
>  or a crtc or a connector (i.e. single object )
> -This ioctl can't be used to set one property of a plane and
>  one property of crtc in one go.

The atomic API already exists to set multiple properties at once, and
has the advantage of being, well, atomic. The API you propose
duplicates atomic, but it also has the possibility of only
half-succeeding, leaving the device in a strange halfway state which
is not what the user intended.

Cheers,
Daniel

</PRE>
<table id=confidentialsignimg><tr><td>
<!--<p> <img border="0" src="http://www.samsung.net/pt_images/PCL/securityimage/MSI_20140519003732214.gif"/></p> -->
<p><img border="0" src="cid:XOK0LK7CT9SZ@namo.co.kr"/></p> 
</td></tr></table></BODY></HTML><img src='http://ext.samsung.net/mail/ext/v1/external/status/update?userid=satendra.t&do=bWFpbElEPTIwMTcwMTIzMDUyODU4ZXBjbXM1cDdjMTgyZDVhNzZkMzQ0NDNiNGY5ZjEwNTY4YzBlODRlMSZyZWNpcGllbnRBZGRyZXNzPWRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmc_' border=0 width=0 height=0 style='display:none'>