Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: IB/uverbs: Fix check of is_closed flag check in ib_uverbs_async_handler() RDMA/nes: Fix off-by-one in nes_reg_user_mr() error path
This commit is contained in:
@@ -423,7 +423,7 @@ static void ib_uverbs_async_handler(struct ib_uverbs_file *file,
|
|||||||
unsigned long flags;
|
unsigned long flags;
|
||||||
|
|
||||||
spin_lock_irqsave(&file->async_file->lock, flags);
|
spin_lock_irqsave(&file->async_file->lock, flags);
|
||||||
if (!file->async_file->is_closed) {
|
if (file->async_file->is_closed) {
|
||||||
spin_unlock_irqrestore(&file->async_file->lock, flags);
|
spin_unlock_irqrestore(&file->async_file->lock, flags);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@@ -2456,10 +2456,8 @@ static struct ib_mr *nes_reg_user_mr(struct ib_pd *pd, u64 start, u64 length,
|
|||||||
if ((page_count!=0)&&(page_count<<12)-(region->offset&(4096-1))>=region->length)
|
if ((page_count!=0)&&(page_count<<12)-(region->offset&(4096-1))>=region->length)
|
||||||
goto enough_pages;
|
goto enough_pages;
|
||||||
if ((page_count&0x01FF) == 0) {
|
if ((page_count&0x01FF) == 0) {
|
||||||
if (page_count>(1024*512)) {
|
if (page_count >= 1024 * 512) {
|
||||||
ib_umem_release(region);
|
ib_umem_release(region);
|
||||||
pci_free_consistent(nesdev->pcidev, 4096, vpbl.pbl_vbase,
|
|
||||||
vpbl.pbl_pbase);
|
|
||||||
nes_free_resource(nesadapter,
|
nes_free_resource(nesadapter,
|
||||||
nesadapter->allocated_mrs, stag_index);
|
nesadapter->allocated_mrs, stag_index);
|
||||||
kfree(nesmr);
|
kfree(nesmr);
|
||||||
|
Reference in New Issue
Block a user