diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-01-27 08:17:09 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-01-27 08:17:09 -0800 |
commit | ba6b5084e6cdd34645dc7430eeef0ebfd09f723f (patch) | |
tree | cd673016995aa6eb95ed3a789c122c0abe61076b | |
parent | 398b60a8de46adfbd43aa4c01753acf0161ec764 (diff) | |
parent | 0cb637bff80d5ba2b916bb19f19ffd59cd4079fd (diff) | |
download | op-kernel-dev-ba6b5084e6cdd34645dc7430eeef0ebfd09f723f.zip op-kernel-dev-ba6b5084e6cdd34645dc7430eeef0ebfd09f723f.tar.gz |
Merge tag 'stable/for-linus-3.14-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb
Pull swiotlb bug-fixes from Konrad Rzeszutek Wilk:
- Don't DoS with 'swiotlb is full' message.
- Documentation update.
* tag 'stable/for-linus-3.14-rc0-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/swiotlb:
swiotlb: Don't DoS us with 'swiotlb buffer is full' (v2)
swiotlb: update format
-rw-r--r-- | Documentation/kernel-parameters.txt | 6 | ||||
-rw-r--r-- | lib/swiotlb.c | 3 |
2 files changed, 7 insertions, 2 deletions
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt index be6ba33..8f441da 100644 --- a/Documentation/kernel-parameters.txt +++ b/Documentation/kernel-parameters.txt @@ -3124,7 +3124,11 @@ bytes respectively. Such letter suffixes can also be entirely omitted. controller if no parameter or 1 is given or disable it if 0 is given (See Documentation/cgroups/memory.txt) - swiotlb= [IA-64] Number of I/O TLB slabs + swiotlb= [ARM,IA-64,PPC,MIPS,X86] + Format: { <int> | force } + <int> -- Number of I/O TLB slabs + force -- force using of bounce buffers even if they + wouldn't be automatically used by the kernel switches= [HW,M68k] diff --git a/lib/swiotlb.c b/lib/swiotlb.c index 615f3de..2e1c102 100644 --- a/lib/swiotlb.c +++ b/lib/swiotlb.c @@ -510,7 +510,8 @@ phys_addr_t swiotlb_tbl_map_single(struct device *hwdev, not_found: spin_unlock_irqrestore(&io_tlb_lock, flags); - dev_warn(hwdev, "swiotlb buffer is full\n"); + if (printk_ratelimit()) + dev_warn(hwdev, "swiotlb buffer is full (sz: %zd bytes)\n", size); return SWIOTLB_MAP_ERROR; found: spin_unlock_irqrestore(&io_tlb_lock, flags); |