Lines Matching full:hp
419 struct compat_sg_io_hdr __user *hp = buf; in get_sg_io_pack_id() local
421 return get_user(*pack_id, &hp->pack_id); in get_sg_io_pack_id()
425 struct sg_io_hdr __user *hp = buf; in get_sg_io_pack_id() local
427 return get_user(*pack_id, &hp->pack_id); in get_sg_io_pack_id()
444 sg_io_hdr_t *hp; in sg_read() local
480 hp = &srp->header; in sg_read()
485 old_hdr->reply_len = (int) hp->timeout; in sg_read()
487 old_hdr->pack_id = hp->pack_id; in sg_read()
489 ((srp->data.cmd_opcode >= 0xc0) && (12 == hp->cmd_len)) ? 1 : 0; in sg_read()
490 old_hdr->target_status = hp->masked_status; in sg_read()
491 old_hdr->host_status = hp->host_status; in sg_read()
492 old_hdr->driver_status = hp->driver_status; in sg_read()
493 if ((CHECK_CONDITION & hp->masked_status) || in sg_read()
499 switch (hp->host_status) { in sg_read()
521 hp->masked_status == GOOD) ? 0 : EIO; in sg_read()
556 sg_io_hdr_t *hp = &srp->header; in sg_new_read() local
569 hp->sb_len_wr = 0; in sg_new_read()
570 if ((hp->mx_sb_len > 0) && hp->sbp) { in sg_new_read()
571 if ((CHECK_CONDITION & hp->masked_status) || in sg_new_read()
574 sb_len = (hp->mx_sb_len > sb_len) ? sb_len : hp->mx_sb_len; in sg_new_read()
577 if (copy_to_user(hp->sbp, srp->sense_b, len)) { in sg_new_read()
581 hp->driver_status = DRIVER_SENSE; in sg_new_read()
582 hp->sb_len_wr = len; in sg_new_read()
585 if (hp->masked_status || hp->host_status || hp->driver_status) in sg_new_read()
586 hp->info |= SG_INFO_CHECK; in sg_new_read()
587 err = put_sg_io_hdr(hp, buf); in sg_new_read()
604 sg_io_hdr_t *hp; in sg_write() local
663 hp = &srp->header; in sg_write()
664 hp->interface_id = '\0'; /* indicator of old interface tunnelled */ in sg_write()
665 hp->cmd_len = (unsigned char) cmd_size; in sg_write()
666 hp->iovec_count = 0; in sg_write()
667 hp->mx_sb_len = 0; in sg_write()
669 hp->dxfer_direction = (old_hdr.reply_len > SZ_SG_HEADER) ? in sg_write()
672 hp->dxfer_direction = (mxsize > 0) ? SG_DXFER_FROM_DEV : SG_DXFER_NONE; in sg_write()
673 hp->dxfer_len = mxsize; in sg_write()
674 if ((hp->dxfer_direction == SG_DXFER_TO_DEV) || in sg_write()
675 (hp->dxfer_direction == SG_DXFER_TO_FROM_DEV)) in sg_write()
676 hp->dxferp = (char __user *)buf + cmd_size; in sg_write()
678 hp->dxferp = NULL; in sg_write()
679 hp->sbp = NULL; in sg_write()
680 hp->timeout = old_hdr.reply_len; /* structure abuse ... */ in sg_write()
681 hp->flags = input_size; /* structure abuse ... */ in sg_write()
682 hp->pack_id = old_hdr.pack_id; in sg_write()
683 hp->usr_ptr = NULL; in sg_write()
693 if (hp->dxfer_direction == SG_DXFER_TO_FROM_DEV) { in sg_write()
714 sg_io_hdr_t *hp; in sg_new_write() local
729 hp = &srp->header; in sg_new_write()
730 if (get_sg_io_hdr(hp, buf)) { in sg_new_write()
734 if (hp->interface_id != 'S') { in sg_new_write()
738 if (hp->flags & SG_FLAG_MMAP_IO) { in sg_new_write()
739 if (hp->dxfer_len > sfp->reserve.bufflen) { in sg_new_write()
743 if (hp->flags & SG_FLAG_DIRECT_IO) { in sg_new_write()
754 if ((!hp->cmdp) || (hp->cmd_len < 6) || (hp->cmd_len > sizeof (cmnd))) { in sg_new_write()
758 if (copy_from_user(cmnd, hp->cmdp, hp->cmd_len)) { in sg_new_write()
780 sg_io_hdr_t *hp = &srp->header; in sg_common_write() local
783 hp->status = 0; in sg_common_write()
784 hp->masked_status = 0; in sg_common_write()
785 hp->msg_status = 0; in sg_common_write()
786 hp->info = 0; in sg_common_write()
787 hp->host_status = 0; in sg_common_write()
788 hp->driver_status = 0; in sg_common_write()
789 hp->resid = 0; in sg_common_write()
792 (int) cmnd[0], (int) hp->cmd_len)); in sg_common_write()
794 if (hp->dxfer_len >= SZ_256M) { in sg_common_write()
818 hp->duration = jiffies_to_msecs(jiffies); in sg_common_write()
819 if (hp->interface_id != '\0' && /* v3 (or later) interface */ in sg_common_write()
820 (SG_FLAG_Q_AT_TAIL & hp->flags)) in sg_common_write()
1726 sg_io_hdr_t *hp = &srp->header; in sg_start_req() local
1727 int dxfer_len = (int) hp->dxfer_len; in sg_start_req()
1728 int dxfer_dir = hp->dxfer_direction; in sg_start_req()
1729 unsigned int iov_count = hp->iovec_count; in sg_start_req()
1734 int rw = hp->dxfer_direction == SG_DXFER_TO_DEV ? ITER_SOURCE : ITER_DEST; in sg_start_req()
1752 rq = scsi_alloc_request(q, hp->dxfer_direction == SG_DXFER_TO_DEV ? in sg_start_req()
1758 if (hp->cmd_len > sizeof(scmd->cmnd)) { in sg_start_req()
1763 memcpy(scmd->cmnd, cmd, hp->cmd_len); in sg_start_req()
1764 scmd->cmd_len = hp->cmd_len; in sg_start_req()
1773 if (sg_allow_dio && hp->flags & SG_FLAG_DIRECT_IO && in sg_start_req()
1775 blk_rq_aligned(q, (unsigned long)hp->dxferp, dxfer_len)) in sg_start_req()
1786 } else if (hp->flags & SG_FLAG_MMAP_IO) { in sg_start_req()
1805 md->null_mapped = hp->dxferp ? 0 : 1; in sg_start_req()
1812 res = blk_rq_map_user_io(rq, md, hp->dxferp, hp->dxfer_len, in sg_start_req()
1819 hp->info |= SG_INFO_DIRECT_IO; in sg_start_req()
2527 const sg_io_hdr_t *hp; in sg_proc_debug_helper() local
2544 hp = &srp->header; in sg_proc_debug_helper()
2545 new_interface = (hp->interface_id == '\0') ? 0 : 1; in sg_proc_debug_helper()
2548 (SG_FLAG_MMAP_IO & hp->flags)) in sg_proc_debug_helper()
2553 if (SG_INFO_DIRECT_IO_MASK & hp->info) in sg_proc_debug_helper()
2567 seq_printf(s, " dur=%d", hp->duration); in sg_proc_debug_helper()
2571 (new_interface ? hp->timeout : in sg_proc_debug_helper()
2573 (ms > hp->duration ? ms - hp->duration : 0)); in sg_proc_debug_helper()