Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
01b3add8
Commit
01b3add8
authored
Aug 12, 2016
by
James Bottomley
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'mkp-scsi/4.8/scsi-fixes' into fixes
parents
29b4817d
e120dcb6
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
35 additions
and
24 deletions
+35
-24
drivers/scsi/aacraid/commctrl.c
drivers/scsi/aacraid/commctrl.c
+11
-2
drivers/scsi/fcoe/fcoe_ctlr.c
drivers/scsi/fcoe/fcoe_ctlr.c
+1
-1
drivers/scsi/ipr.c
drivers/scsi/ipr.c
+6
-5
drivers/scsi/megaraid/megaraid_sas_base.c
drivers/scsi/megaraid/megaraid_sas_base.c
+3
-3
drivers/scsi/megaraid/megaraid_sas_fusion.c
drivers/scsi/megaraid/megaraid_sas_fusion.c
+1
-1
drivers/scsi/mpt3sas/mpt3sas_base.c
drivers/scsi/mpt3sas/mpt3sas_base.c
+11
-11
drivers/scsi/ses.c
drivers/scsi/ses.c
+2
-1
No files found.
drivers/scsi/aacraid/commctrl.c
View file @
01b3add8
...
@@ -63,7 +63,7 @@ static int ioctl_send_fib(struct aac_dev * dev, void __user *arg)
...
@@ -63,7 +63,7 @@ static int ioctl_send_fib(struct aac_dev * dev, void __user *arg)
struct
fib
*
fibptr
;
struct
fib
*
fibptr
;
struct
hw_fib
*
hw_fib
=
(
struct
hw_fib
*
)
0
;
struct
hw_fib
*
hw_fib
=
(
struct
hw_fib
*
)
0
;
dma_addr_t
hw_fib_pa
=
(
dma_addr_t
)
0LL
;
dma_addr_t
hw_fib_pa
=
(
dma_addr_t
)
0LL
;
unsigned
size
;
unsigned
int
size
,
o
size
;
int
retval
;
int
retval
;
if
(
dev
->
in_reset
)
{
if
(
dev
->
in_reset
)
{
...
@@ -87,7 +87,8 @@ static int ioctl_send_fib(struct aac_dev * dev, void __user *arg)
...
@@ -87,7 +87,8 @@ static int ioctl_send_fib(struct aac_dev * dev, void __user *arg)
* will not overrun the buffer when we copy the memory. Return
* will not overrun the buffer when we copy the memory. Return
* an error if we would.
* an error if we would.
*/
*/
size
=
le16_to_cpu
(
kfib
->
header
.
Size
)
+
sizeof
(
struct
aac_fibhdr
);
osize
=
size
=
le16_to_cpu
(
kfib
->
header
.
Size
)
+
sizeof
(
struct
aac_fibhdr
);
if
(
size
<
le16_to_cpu
(
kfib
->
header
.
SenderSize
))
if
(
size
<
le16_to_cpu
(
kfib
->
header
.
SenderSize
))
size
=
le16_to_cpu
(
kfib
->
header
.
SenderSize
);
size
=
le16_to_cpu
(
kfib
->
header
.
SenderSize
);
if
(
size
>
dev
->
max_fib_size
)
{
if
(
size
>
dev
->
max_fib_size
)
{
...
@@ -118,6 +119,14 @@ static int ioctl_send_fib(struct aac_dev * dev, void __user *arg)
...
@@ -118,6 +119,14 @@ static int ioctl_send_fib(struct aac_dev * dev, void __user *arg)
goto
cleanup
;
goto
cleanup
;
}
}
/* Sanity check the second copy */
if
((
osize
!=
le16_to_cpu
(
kfib
->
header
.
Size
)
+
sizeof
(
struct
aac_fibhdr
))
||
(
size
<
le16_to_cpu
(
kfib
->
header
.
SenderSize
)))
{
retval
=
-
EINVAL
;
goto
cleanup
;
}
if
(
kfib
->
header
.
Command
==
cpu_to_le16
(
TakeABreakPt
))
{
if
(
kfib
->
header
.
Command
==
cpu_to_le16
(
TakeABreakPt
))
{
aac_adapter_interrupt
(
dev
);
aac_adapter_interrupt
(
dev
);
/*
/*
...
...
drivers/scsi/fcoe/fcoe_ctlr.c
View file @
01b3add8
...
@@ -2923,7 +2923,7 @@ static int fcoe_ctlr_vlan_recv(struct fcoe_ctlr *fip, struct sk_buff *skb)
...
@@ -2923,7 +2923,7 @@ static int fcoe_ctlr_vlan_recv(struct fcoe_ctlr *fip, struct sk_buff *skb)
mutex_unlock
(
&
fip
->
ctlr_mutex
);
mutex_unlock
(
&
fip
->
ctlr_mutex
);
drop:
drop:
kfree
(
skb
);
kfree
_skb
(
skb
);
return
rc
;
return
rc
;
}
}
...
...
drivers/scsi/ipr.c
View file @
01b3add8
...
@@ -10410,8 +10410,11 @@ static int ipr_probe(struct pci_dev *pdev, const struct pci_device_id *dev_id)
...
@@ -10410,8 +10410,11 @@ static int ipr_probe(struct pci_dev *pdev, const struct pci_device_id *dev_id)
__ipr_remove
(
pdev
);
__ipr_remove
(
pdev
);
return
rc
;
return
rc
;
}
}
spin_lock_irqsave
(
ioa_cfg
->
host
->
host_lock
,
flags
);
ioa_cfg
->
scan_enabled
=
1
;
schedule_work
(
&
ioa_cfg
->
work_q
);
spin_unlock_irqrestore
(
ioa_cfg
->
host
->
host_lock
,
flags
);
scsi_scan_host
(
ioa_cfg
->
host
);
ioa_cfg
->
iopoll_weight
=
ioa_cfg
->
chip_cfg
->
iopoll_weight
;
ioa_cfg
->
iopoll_weight
=
ioa_cfg
->
chip_cfg
->
iopoll_weight
;
if
(
ioa_cfg
->
iopoll_weight
&&
ioa_cfg
->
sis64
&&
ioa_cfg
->
nvectors
>
1
)
{
if
(
ioa_cfg
->
iopoll_weight
&&
ioa_cfg
->
sis64
&&
ioa_cfg
->
nvectors
>
1
)
{
...
@@ -10421,10 +10424,8 @@ static int ipr_probe(struct pci_dev *pdev, const struct pci_device_id *dev_id)
...
@@ -10421,10 +10424,8 @@ static int ipr_probe(struct pci_dev *pdev, const struct pci_device_id *dev_id)
}
}
}
}
spin_lock_irqsave
(
ioa_cfg
->
host
->
host_lock
,
flags
);
scsi_scan_host
(
ioa_cfg
->
host
);
ioa_cfg
->
scan_enabled
=
1
;
schedule_work
(
&
ioa_cfg
->
work_q
);
spin_unlock_irqrestore
(
ioa_cfg
->
host
->
host_lock
,
flags
);
return
0
;
return
0
;
}
}
...
...
drivers/scsi/megaraid/megaraid_sas_base.c
View file @
01b3add8
...
@@ -5037,7 +5037,7 @@ static int megasas_init_fw(struct megasas_instance *instance)
...
@@ -5037,7 +5037,7 @@ static int megasas_init_fw(struct megasas_instance *instance)
/* Find first memory bar */
/* Find first memory bar */
bar_list
=
pci_select_bars
(
instance
->
pdev
,
IORESOURCE_MEM
);
bar_list
=
pci_select_bars
(
instance
->
pdev
,
IORESOURCE_MEM
);
instance
->
bar
=
find_first_bit
(
&
bar_list
,
sizeof
(
unsigned
long
));
instance
->
bar
=
find_first_bit
(
&
bar_list
,
sizeof
(
unsigned
long
));
if
(
pci_request_selected_regions
(
instance
->
pdev
,
instance
->
bar
,
if
(
pci_request_selected_regions
(
instance
->
pdev
,
1
<<
instance
->
bar
,
"megasas: LSI"
))
{
"megasas: LSI"
))
{
dev_printk
(
KERN_DEBUG
,
&
instance
->
pdev
->
dev
,
"IO memory region busy!
\n
"
);
dev_printk
(
KERN_DEBUG
,
&
instance
->
pdev
->
dev
,
"IO memory region busy!
\n
"
);
return
-
EBUSY
;
return
-
EBUSY
;
...
@@ -5339,7 +5339,7 @@ static int megasas_init_fw(struct megasas_instance *instance)
...
@@ -5339,7 +5339,7 @@ static int megasas_init_fw(struct megasas_instance *instance)
iounmap
(
instance
->
reg_set
);
iounmap
(
instance
->
reg_set
);
fail_ioremap:
fail_ioremap:
pci_release_selected_regions
(
instance
->
pdev
,
instance
->
bar
);
pci_release_selected_regions
(
instance
->
pdev
,
1
<<
instance
->
bar
);
return
-
EINVAL
;
return
-
EINVAL
;
}
}
...
@@ -5360,7 +5360,7 @@ static void megasas_release_mfi(struct megasas_instance *instance)
...
@@ -5360,7 +5360,7 @@ static void megasas_release_mfi(struct megasas_instance *instance)
iounmap
(
instance
->
reg_set
);
iounmap
(
instance
->
reg_set
);
pci_release_selected_regions
(
instance
->
pdev
,
instance
->
bar
);
pci_release_selected_regions
(
instance
->
pdev
,
1
<<
instance
->
bar
);
}
}
/**
/**
...
...
drivers/scsi/megaraid/megaraid_sas_fusion.c
View file @
01b3add8
...
@@ -2603,7 +2603,7 @@ megasas_release_fusion(struct megasas_instance *instance)
...
@@ -2603,7 +2603,7 @@ megasas_release_fusion(struct megasas_instance *instance)
iounmap
(
instance
->
reg_set
);
iounmap
(
instance
->
reg_set
);
pci_release_selected_regions
(
instance
->
pdev
,
instance
->
bar
);
pci_release_selected_regions
(
instance
->
pdev
,
1
<<
instance
->
bar
);
}
}
/**
/**
...
...
drivers/scsi/mpt3sas/mpt3sas_base.c
View file @
01b3add8
...
@@ -2188,6 +2188,17 @@ mpt3sas_base_map_resources(struct MPT3SAS_ADAPTER *ioc)
...
@@ -2188,6 +2188,17 @@ mpt3sas_base_map_resources(struct MPT3SAS_ADAPTER *ioc)
}
else
}
else
ioc
->
msix96_vector
=
0
;
ioc
->
msix96_vector
=
0
;
if
(
ioc
->
is_warpdrive
)
{
ioc
->
reply_post_host_index
[
0
]
=
(
resource_size_t
__iomem
*
)
&
ioc
->
chip
->
ReplyPostHostIndex
;
for
(
i
=
1
;
i
<
ioc
->
cpu_msix_table_sz
;
i
++
)
ioc
->
reply_post_host_index
[
i
]
=
(
resource_size_t
__iomem
*
)
((
u8
__iomem
*
)
&
ioc
->
chip
->
Doorbell
+
(
0x4000
+
((
i
-
1
)
*
4
)));
}
list_for_each_entry
(
reply_q
,
&
ioc
->
reply_queue_list
,
list
)
list_for_each_entry
(
reply_q
,
&
ioc
->
reply_queue_list
,
list
)
pr_info
(
MPT3SAS_FMT
"%s: IRQ %d
\n
"
,
pr_info
(
MPT3SAS_FMT
"%s: IRQ %d
\n
"
,
reply_q
->
name
,
((
ioc
->
msix_enable
)
?
"PCI-MSI-X enabled"
:
reply_q
->
name
,
((
ioc
->
msix_enable
)
?
"PCI-MSI-X enabled"
:
...
@@ -5280,17 +5291,6 @@ mpt3sas_base_attach(struct MPT3SAS_ADAPTER *ioc)
...
@@ -5280,17 +5291,6 @@ mpt3sas_base_attach(struct MPT3SAS_ADAPTER *ioc)
if
(
r
)
if
(
r
)
goto
out_free_resources
;
goto
out_free_resources
;
if
(
ioc
->
is_warpdrive
)
{
ioc
->
reply_post_host_index
[
0
]
=
(
resource_size_t
__iomem
*
)
&
ioc
->
chip
->
ReplyPostHostIndex
;
for
(
i
=
1
;
i
<
ioc
->
cpu_msix_table_sz
;
i
++
)
ioc
->
reply_post_host_index
[
i
]
=
(
resource_size_t
__iomem
*
)
((
u8
__iomem
*
)
&
ioc
->
chip
->
Doorbell
+
(
0x4000
+
((
i
-
1
)
*
4
)));
}
pci_set_drvdata
(
ioc
->
pdev
,
ioc
->
shost
);
pci_set_drvdata
(
ioc
->
pdev
,
ioc
->
shost
);
r
=
_base_get_ioc_facts
(
ioc
,
CAN_SLEEP
);
r
=
_base_get_ioc_facts
(
ioc
,
CAN_SLEEP
);
if
(
r
)
if
(
r
)
...
...
drivers/scsi/ses.c
View file @
01b3add8
...
@@ -778,6 +778,8 @@ static void ses_intf_remove_enclosure(struct scsi_device *sdev)
...
@@ -778,6 +778,8 @@ static void ses_intf_remove_enclosure(struct scsi_device *sdev)
if
(
!
edev
)
if
(
!
edev
)
return
;
return
;
enclosure_unregister
(
edev
);
ses_dev
=
edev
->
scratch
;
ses_dev
=
edev
->
scratch
;
edev
->
scratch
=
NULL
;
edev
->
scratch
=
NULL
;
...
@@ -789,7 +791,6 @@ static void ses_intf_remove_enclosure(struct scsi_device *sdev)
...
@@ -789,7 +791,6 @@ static void ses_intf_remove_enclosure(struct scsi_device *sdev)
kfree
(
edev
->
component
[
0
].
scratch
);
kfree
(
edev
->
component
[
0
].
scratch
);
put_device
(
&
edev
->
edev
);
put_device
(
&
edev
->
edev
);
enclosure_unregister
(
edev
);
}
}
static
void
ses_intf_remove
(
struct
device
*
cdev
,
static
void
ses_intf_remove
(
struct
device
*
cdev
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment