[PATCH 04/12] xen: make use of xenbus_read_unsigned() in xen-tpmfront

From: Juergen Gross
Date: Mon Oct 31 2016 - 12:50:20 EST


Use xenbus_read_unsigned() instead of xenbus_scanf() when possible.
This requires to change the type of one read from int to unsigned,
but this case has been wrong before: negative values are not allowed
for the modified case.

Cc: peterhuewe@xxxxxx
Cc: tpmdd@xxxxxxxxxxxx
Cc: jarkko.sakkinen@xxxxxxxxxxxxxxx
Cc: jgunthorpe@xxxxxxxxxxxxxxxxxxxx
Cc: tpmdd-devel@xxxxxxxxxxxxxxxxxxxxx

Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
---
drivers/char/tpm/xen-tpmfront.c | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/drivers/char/tpm/xen-tpmfront.c b/drivers/char/tpm/xen-tpmfront.c
index 62028f4..50072cc 100644
--- a/drivers/char/tpm/xen-tpmfront.c
+++ b/drivers/char/tpm/xen-tpmfront.c
@@ -337,18 +337,14 @@ static int tpmfront_resume(struct xenbus_device *dev)
static void backend_changed(struct xenbus_device *dev,
enum xenbus_state backend_state)
{
- int val;
-
switch (backend_state) {
case XenbusStateInitialised:
case XenbusStateConnected:
if (dev->state == XenbusStateConnected)
break;

- if (xenbus_scanf(XBT_NIL, dev->otherend,
- "feature-protocol-v2", "%d", &val) < 0)
- val = 0;
- if (!val) {
+ if (!xenbus_read_unsigned(dev->otherend, "feature-protocol-v2",
+ 0)) {
xenbus_dev_fatal(dev, -EINVAL,
"vTPM protocol 2 required");
return;
--
2.6.6