xen: make use of xenbus_read_unsigned() in xen-kbdfront
Use xenbus_read_unsigned() instead of xenbus_scanf() when possible. This requires to change the type of the reads from int to unsigned, but these cases have been wrong before: negative values are not allowed for the modified cases. Cc: dmitry.torokhov@gmail.com Cc: linux-input@vger.kernel.org Signed-off-by: Juergen Gross <jgross@suse.com> Acked-by: David Vrabel <david.vrabel@citrix.com>
This commit is contained in:
parent
0240933469
commit
81362c6f15
|
@ -108,7 +108,8 @@ static irqreturn_t input_handler(int rq, void *dev_id)
|
|||
static int xenkbd_probe(struct xenbus_device *dev,
|
||||
const struct xenbus_device_id *id)
|
||||
{
|
||||
int ret, i, abs;
|
||||
int ret, i;
|
||||
unsigned int abs;
|
||||
struct xenkbd_info *info;
|
||||
struct input_dev *kbd, *ptr;
|
||||
|
||||
|
@ -127,8 +128,7 @@ static int xenkbd_probe(struct xenbus_device *dev,
|
|||
if (!info->page)
|
||||
goto error_nomem;
|
||||
|
||||
if (xenbus_scanf(XBT_NIL, dev->otherend, "feature-abs-pointer", "%d", &abs) < 0)
|
||||
abs = 0;
|
||||
abs = xenbus_read_unsigned(dev->otherend, "feature-abs-pointer", 0);
|
||||
if (abs) {
|
||||
ret = xenbus_write(XBT_NIL, dev->nodename,
|
||||
"request-abs-pointer", "1");
|
||||
|
@ -322,11 +322,8 @@ static void xenkbd_backend_changed(struct xenbus_device *dev,
|
|||
|
||||
case XenbusStateInitWait:
|
||||
InitWait:
|
||||
ret = xenbus_scanf(XBT_NIL, info->xbdev->otherend,
|
||||
"feature-abs-pointer", "%d", &val);
|
||||
if (ret < 0)
|
||||
val = 0;
|
||||
if (val) {
|
||||
if (xenbus_read_unsigned(info->xbdev->otherend,
|
||||
"feature-abs-pointer", 0)) {
|
||||
ret = xenbus_write(XBT_NIL, info->xbdev->nodename,
|
||||
"request-abs-pointer", "1");
|
||||
if (ret)
|
||||
|
|
Loading…
Reference in New Issue