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
Unified · Split
| @@ -3124,7 +3124,11 @@ bytes respectively. Such letter suffixes can also be entirely omitted. · 3123 unmodified lines | |||
| 3124 | controller if no parameter or 1 is given or disable | 3124 | controller if no parameter or 1 is given or disable |
| 3125 | it if 0 is given (See Documentation/cgroups/memory.txt) | 3125 | it if 0 is given (See Documentation/cgroups/memory.txt) |
| 3126 | 3126 | ||
| 3127 | swiotlb= [IA-64] Number of I/O TLB slabs | 3127 | swiotlb= [ARM,IA-64,PPC,MIPS,X86] |
| 3128 | Format: { <int> | force } | ||
| 3129 | <int> -- Number of I/O TLB slabs | ||
| 3130 | force -- force using of bounce buffers even if they | ||
| 3131 | wouldn't be automatically used by the kernel | ||
| 3128 | 3132 | ||
| 3129 | switches= [HW,M68k] | 3133 | switches= [HW,M68k] |
| 3130 | 3134 | ||
| @@ -510,7 +510,8 @@ phys_addr_t swiotlb_tbl_map_single(struct device *hwdev, · 509 unmodified lines | |||
| 510 | 510 | ||
| 511 | not_found: | 511 | not_found: |
| 512 | spin_unlock_irqrestore(&io_tlb_lock, flags); | 512 | spin_unlock_irqrestore(&io_tlb_lock, flags); |
| 513 | dev_warn(hwdev, "swiotlb buffer is full\n"); | 513 | if (printk_ratelimit()) |
| 514 | dev_warn(hwdev, "swiotlb buffer is full (sz: %zd bytes)\n", size); | ||
| 514 | return SWIOTLB_MAP_ERROR; | 515 | return SWIOTLB_MAP_ERROR; |
| 515 | found: | 516 | found: |
| 516 | spin_unlock_irqrestore(&io_tlb_lock, flags); | 517 | spin_unlock_irqrestore(&io_tlb_lock, flags); |