All of lore.kernel.org
 help / color / mirror / Atom feed
* [bug report] [S390] z/VM unit record device driver
@ 2016-08-03 12:40 Dan Carpenter
  0 siblings, 0 replies; only message in thread
From: Dan Carpenter @ 2016-08-03 12:40 UTC (permalink / raw)
  To: linux-s390

Hello Frank Munzert,

The patch 810cb5b32ded: "[S390] z/VM unit record device driver" from
Jul 17, 2007, leads to the following static checker warning:

	drivers/s390/char/vmur.c:320 ur_int_handler()
	warn: 'irb' isn't an ERR_PTR

drivers/s390/char/vmur.c
   304  static void ur_int_handler(struct ccw_device *cdev, unsigned long intparm,
   305                             struct irb *irb)
   306  {
   307          struct urdev *urd;
   308  
   309          TRACE("ur_int_handler: intparm=0x%lx cstat=%02x dstat=%02x res=%u\n",
   310                intparm, irb->scsw.cmd.cstat, irb->scsw.cmd.dstat,
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   311                irb->scsw.cmd.count);
                      ^^^^^^^^^^^^^^^^^^^
We already dereferenced irb several times.

   312  
   313          if (!intparm) {
   314                  TRACE("ur_int_handler: unsolicited interrupt\n");
   315                  return;
   316          }
   317          urd = dev_get_drvdata(&cdev->dev);
   318          BUG_ON(!urd);
   319          /* On special conditions irb is an error pointer */
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
This is possibly true.  The static checker is assuming x86_64 rules.

   320          if (IS_ERR(irb))
                    ^^^^^^^^^^
   321                  urd->io_request_rc = PTR_ERR(irb);
   322          else if (irb->scsw.cmd.dstat == (DEV_STAT_CHN_END | DEV_STAT_DEV_END))
   323                  urd->io_request_rc = 0;
   324          else
   325                  urd->io_request_rc = -EIO;
   326  
   327          complete(urd->io_done);
   328  }

regards,
dan carpenter

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2016-08-03 12:40 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-03 12:40 [bug report] [S390] z/VM unit record device driver Dan Carpenter

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.