mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-24 04:34:08 +08:00
[SCSI] sg: remove closed flag
After sg_release() has been called, noone should be able to actually use that filedescriptor anymore. So if closed ever made a difference in the past five years or so, it would have meant a bug. Remove it. Signed-off-by: Joern Engel <joern@logfs.org> Acked-by: Douglas Gilbert <dgilbert@interlog.com> [jejb: fix up checkpatch warnings] Signed-off-by: James Bottomley <JBottomley@Parallels.com>
This commit is contained in:
parent
3f0c6aba0b
commit
ebaf466be5
@ -157,7 +157,6 @@ typedef struct sg_fd { /* holds the state of a file descriptor */
|
||||
Sg_request req_arr[SG_MAX_QUEUE]; /* used as singly-linked list */
|
||||
char low_dma; /* as in parent but possibly overridden to 1 */
|
||||
char force_packid; /* 1 -> pack_id input to read(), 0 -> ignored */
|
||||
volatile char closed; /* 1 -> fd closed but request(s) outstanding */
|
||||
char cmd_q; /* 1 -> allow command queuing, 0 -> don't */
|
||||
char next_cmd_len; /* 0 -> automatic (def), >0 -> use on next write() */
|
||||
char keep_orphan; /* 0 -> drop orphan (def), 1 -> keep for read() */
|
||||
@ -329,8 +328,6 @@ sg_release(struct inode *inode, struct file *filp)
|
||||
return -ENXIO;
|
||||
SCSI_LOG_TIMEOUT(3, printk("sg_release: %s\n", sdp->disk->disk_name));
|
||||
|
||||
sfp->closed = 1;
|
||||
|
||||
sdp->exclude = 0;
|
||||
wake_up_interruptible(&sdp->o_excl_wait);
|
||||
|
||||
@ -1118,8 +1115,11 @@ sg_poll(struct file *filp, poll_table * wait)
|
||||
int count = 0;
|
||||
unsigned long iflags;
|
||||
|
||||
if ((!(sfp = (Sg_fd *) filp->private_data)) || (!(sdp = sfp->parentdp))
|
||||
|| sfp->closed)
|
||||
sfp = filp->private_data;
|
||||
if (!sfp)
|
||||
return POLLERR;
|
||||
sdp = sfp->parentdp;
|
||||
if (!sdp)
|
||||
return POLLERR;
|
||||
poll_wait(filp, &sfp->read_wait, wait);
|
||||
read_lock_irqsave(&sfp->rq_list_lock, iflags);
|
||||
@ -2515,9 +2515,9 @@ static void sg_proc_debug_helper(struct seq_file *s, Sg_device * sdp)
|
||||
fp->reserve.bufflen,
|
||||
(int) fp->reserve.k_use_sg,
|
||||
(int) fp->low_dma);
|
||||
seq_printf(s, " cmd_q=%d f_packid=%d k_orphan=%d closed=%d\n",
|
||||
seq_printf(s, " cmd_q=%d f_packid=%d k_orphan=%d closed=0\n",
|
||||
(int) fp->cmd_q, (int) fp->force_packid,
|
||||
(int) fp->keep_orphan, (int) fp->closed);
|
||||
(int) fp->keep_orphan);
|
||||
for (m = 0, srp = fp->headrp;
|
||||
srp != NULL;
|
||||
++m, srp = srp->nextrp) {
|
||||
|
Loading…
Reference in New Issue
Block a user