Auto-update from upstream
This commit is contained in:
commit
4eaefb3952
@ -242,7 +242,7 @@ int iommu_map_sg(struct device *dev, struct iommu_table *tbl,
|
||||
dma_addr_t dma_next = 0, dma_addr;
|
||||
unsigned long flags;
|
||||
struct scatterlist *s, *outs, *segstart;
|
||||
int outcount;
|
||||
int outcount, incount;
|
||||
unsigned long handle;
|
||||
|
||||
BUG_ON(direction == DMA_NONE);
|
||||
@ -252,6 +252,7 @@ int iommu_map_sg(struct device *dev, struct iommu_table *tbl,
|
||||
|
||||
outs = s = segstart = &sglist[0];
|
||||
outcount = 1;
|
||||
incount = nelems;
|
||||
handle = 0;
|
||||
|
||||
/* Init first segment length for backout at failure */
|
||||
@ -338,10 +339,10 @@ int iommu_map_sg(struct device *dev, struct iommu_table *tbl,
|
||||
|
||||
DBG("mapped %d elements:\n", outcount);
|
||||
|
||||
/* For the sake of iommu_free_sg, we clear out the length in the
|
||||
/* For the sake of iommu_unmap_sg, we clear out the length in the
|
||||
* next entry of the sglist if we didn't fill the list completely
|
||||
*/
|
||||
if (outcount < nelems) {
|
||||
if (outcount < incount) {
|
||||
outs++;
|
||||
outs->dma_address = DMA_ERROR_CODE;
|
||||
outs->dma_length = 0;
|
||||
|
@ -180,7 +180,9 @@ static ssize_t driver_bind(struct device_driver *drv,
|
||||
up(&dev->sem);
|
||||
put_device(dev);
|
||||
}
|
||||
return err;
|
||||
if (err)
|
||||
return err;
|
||||
return count;
|
||||
}
|
||||
static DRIVER_ATTR(bind, S_IWUSR, NULL, driver_bind);
|
||||
|
||||
|
@ -312,6 +312,8 @@ found:
|
||||
if (drv->link.driver.probe) {
|
||||
if (drv->link.driver.probe(&dev->dev)) {
|
||||
dev->dev.driver = NULL;
|
||||
dev->card_link = NULL;
|
||||
up_write(&dev->dev.bus->subsys.rwsem);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
@ -175,7 +175,7 @@ ToDo/Notes:
|
||||
the ntfs inode in memory if present. Also, the ntfs inode has its
|
||||
own locking so it does not matter if the vfs inode is locked.
|
||||
- Fix bug in mft record writing where we forgot to set the device in
|
||||
the buffers when mapping them after the VM had discarded them
|
||||
the buffers when mapping them after the VM had discarded them.
|
||||
Thanks to Martin MOKREJŠ for the bug report.
|
||||
|
||||
2.1.22 - Many bug and race fixes and error handling improvements.
|
||||
|
@ -924,6 +924,7 @@ static int ntfs_write_mst_block(struct page *page,
|
||||
LCN lcn;
|
||||
unsigned int vcn_ofs;
|
||||
|
||||
bh->b_bdev = vol->sb->s_bdev;
|
||||
/* Obtain the vcn and offset of the current block. */
|
||||
vcn = (VCN)block << bh_size_bits;
|
||||
vcn_ofs = vcn & vol->cluster_size_mask;
|
||||
|
@ -765,7 +765,8 @@ snd_pmac_ctrl_intr(int irq, void *devid, struct pt_regs *regs)
|
||||
*/
|
||||
static void snd_pmac_sound_feature(pmac_t *chip, int enable)
|
||||
{
|
||||
ppc_md.feature_call(PMAC_FTR_SOUND_CHIP_ENABLE, chip->node, 0, enable);
|
||||
if (ppc_md.feature_call)
|
||||
ppc_md.feature_call(PMAC_FTR_SOUND_CHIP_ENABLE, chip->node, 0, enable);
|
||||
}
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user