History

Merge 5.3-rc5 into usb-next

We need the usb fixes in here as well for other patches to build on.

Greg Kroah-Hartman committed 7 years ago

Commit 7ffc95e2 parents 1e296b5 d1abaeb173 files · +1441 −814Browse files

Showing the changes to include/linux (9 of 173 files). Show all

Unified · Split

9 files
  1. include/linux/blk_types.h +1 −4
  2. include/linux/dma-noncoherent.h +9 −4
  3. include/linux/gfp.h +4 −8
  4. include/linux/memcontrol.h +19 −0
  5. include/linux/mempolicy.h +2 −0
  6. include/linux/mm_types.h +10 −1
  7. include/linux/pci.h +2 −0
  8. include/linux/usb.h +1 −1
  9. include/linux/usb/hcd.h +3 −0
include/linux/blk_types.h+1−4
@@ -311,7 +311,6 @@ enum req_flag_bits { · 310 unmodified lines
311311 __REQ_RAHEAD, /* read ahead, can fail anytime */
312312 __REQ_BACKGROUND, /* background IO */
313313 __REQ_NOWAIT, /* Don't wait if request will block */
314− __REQ_NOWAIT_INLINE, /* Return would-block error inline */
315314 /*
316315 * When a shared kthread needs to issue a bio for a cgroup, doing
317316 * so synchronously can lead to priority inversions as the kthread
@@ -346,7 +345,6 @@ enum req_flag_bits { · 28 unmodified lines
346345 #define REQ_RAHEAD (1ULL << __REQ_RAHEAD)
347346 #define REQ_BACKGROUND (1ULL << __REQ_BACKGROUND)
348347 #define REQ_NOWAIT (1ULL << __REQ_NOWAIT)
349−#define REQ_NOWAIT_INLINE (1ULL << __REQ_NOWAIT_INLINE)
350348 #define REQ_CGROUP_PUNT (1ULL << __REQ_CGROUP_PUNT)
351349
352350 #define REQ_NOUNMAP (1ULL << __REQ_NOUNMAP)
@@ -420,13 +418,12 @@ static inline int op_stat_group(unsigned int op) · 67 unmodified lines
420418
421419 typedef unsigned int blk_qc_t;
422420 #define BLK_QC_T_NONE -1U
423−#define BLK_QC_T_EAGAIN -2U
424421 #define BLK_QC_T_SHIFT 16
425422 #define BLK_QC_T_INTERNAL (1U << 31)
426423
427424 static inline bool blk_qc_t_valid(blk_qc_t cookie)
428425 {
429− return cookie != BLK_QC_T_NONE && cookie != BLK_QC_T_EAGAIN;
426+ return cookie != BLK_QC_T_NONE;
430427 }
431428
432429 static inline unsigned int blk_qc_t_to_queue_num(blk_qc_t cookie)
include/linux/dma-noncoherent.h+9−4
@@ -42,13 +42,18 @@ void arch_dma_free(struct device *dev, size_t size, void *cpu_addr, · 41 unmodified lines
4242 dma_addr_t dma_addr, unsigned long attrs);
4343 long arch_dma_coherent_to_pfn(struct device *dev, void *cpu_addr,
4444 dma_addr_t dma_addr);
45−
46−#ifdef CONFIG_ARCH_HAS_DMA_MMAP_PGPROT
4745 pgprot_t arch_dma_mmap_pgprot(struct device *dev, pgprot_t prot,
4846 unsigned long attrs);
47+
48+#ifdef CONFIG_MMU
49+pgprot_t dma_pgprot(struct device *dev, pgprot_t prot, unsigned long attrs);
4950 #else
50−# define arch_dma_mmap_pgprot(dev, prot, attrs) pgprot_noncached(prot)
51−#endif
51+static inline pgprot_t dma_pgprot(struct device *dev, pgprot_t prot,
52+ unsigned long attrs)
53+{
54+ return prot; /* no protection bits supported without page tables */
55+}
56+#endif /* CONFIG_MMU */
5257
5358 #ifdef CONFIG_DMA_NONCOHERENT_CACHE_SYNC
5459 void arch_dma_cache_sync(struct device *dev, void *vaddr, size_t size,
include/linux/gfp.h+4−8
@@ -510,22 +510,18 @@ alloc_pages(gfp_t gfp_mask, unsigned int order) · 509 unmodified lines
510510 }
511511 extern struct page *alloc_pages_vma(gfp_t gfp_mask, int order,
512512 struct vm_area_struct *vma, unsigned long addr,
513− int node, bool hugepage);
514−#define alloc_hugepage_vma(gfp_mask, vma, addr, order) \
515− alloc_pages_vma(gfp_mask, order, vma, addr, numa_node_id(), true)
513+ int node);
516514 #else
517515 #define alloc_pages(gfp_mask, order) \
518516 alloc_pages_node(numa_node_id(), gfp_mask, order)
519−#define alloc_pages_vma(gfp_mask, order, vma, addr, node, false)\
520− alloc_pages(gfp_mask, order)
521−#define alloc_hugepage_vma(gfp_mask, vma, addr, order) \
517+#define alloc_pages_vma(gfp_mask, order, vma, addr, node)\
522518 alloc_pages(gfp_mask, order)
523519 #endif
524520 #define alloc_page(gfp_mask) alloc_pages(gfp_mask, 0)
525521 #define alloc_page_vma(gfp_mask, vma, addr) \
526− alloc_pages_vma(gfp_mask, 0, vma, addr, numa_node_id(), false)
522+ alloc_pages_vma(gfp_mask, 0, vma, addr, numa_node_id())
527523 #define alloc_page_vma_node(gfp_mask, vma, addr, node) \
528− alloc_pages_vma(gfp_mask, 0, vma, addr, node, false)
524+ alloc_pages_vma(gfp_mask, 0, vma, addr, node)
529525
530526 extern unsigned long __get_free_pages(gfp_t gfp_mask, unsigned int order);
531527 extern unsigned long get_zeroed_page(gfp_t gfp_mask);
include/linux/memcontrol.h+19−0
@@ -668,6 +668,7 @@ static inline unsigned long lruvec_page_state_local(struct lruvec *lruvec, · 667 unmodified lines
668668
669669 void __mod_lruvec_state(struct lruvec *lruvec, enum node_stat_item idx,
670670 int val);
671+void __mod_lruvec_slab_state(void *p, enum node_stat_item idx, int val);
671672
672673 static inline void mod_lruvec_state(struct lruvec *lruvec,
673674 enum node_stat_item idx, int val)
@@ -1072,6 +1073,14 @@ static inline void mod_lruvec_page_state(struct page *page, · 398 unmodified lines
10721073 mod_node_page_state(page_pgdat(page), idx, val);
10731074 }
10741075
1076+static inline void __mod_lruvec_slab_state(void *p, enum node_stat_item idx,
1077+ int val)
1078+{
1079+ struct page *page = virt_to_head_page(p);
1080+
1081+ __mod_node_page_state(page_pgdat(page), idx, val);
1082+}
1083+
10751084 static inline
10761085 unsigned long mem_cgroup_soft_limit_reclaim(pg_data_t *pgdat, int order,
10771086 gfp_t gfp_mask,
@@ -1159,6 +1168,16 @@ static inline void __dec_lruvec_page_state(struct page *page, · 81 unmodified lines
11591168 __mod_lruvec_page_state(page, idx, -1);
11601169 }
11611170
1171+static inline void __inc_lruvec_slab_state(void *p, enum node_stat_item idx)
1172+{
1173+ __mod_lruvec_slab_state(p, idx, 1);
1174+}
1175+
1176+static inline void __dec_lruvec_slab_state(void *p, enum node_stat_item idx)
1177+{
1178+ __mod_lruvec_slab_state(p, idx, -1);
1179+}
1180+
11621181 /* idx can be of type enum memcg_stat_item or node_stat_item */
11631182 static inline void inc_memcg_state(struct mem_cgroup *memcg,
11641183 int idx)
include/linux/mempolicy.h+2−0
@@ -139,6 +139,8 @@ struct mempolicy *mpol_shared_policy_lookup(struct shared_policy *sp, · 138 unmodified lines
139139 struct mempolicy *get_task_policy(struct task_struct *p);
140140 struct mempolicy *__get_vma_policy(struct vm_area_struct *vma,
141141 unsigned long addr);
142+struct mempolicy *get_vma_policy(struct vm_area_struct *vma,
143+ unsigned long addr);
142144 bool vma_policy_mof(struct vm_area_struct *vma);
143145
144146 extern void numa_default_policy(void);
include/linux/mm_types.h+10−1
@@ -159,7 +159,16 @@ struct page { · 158 unmodified lines
159159 /** @pgmap: Points to the hosting device page map. */
160160 struct dev_pagemap *pgmap;
161161 void *zone_device_data;
162− unsigned long _zd_pad_1; /* uses mapping */
162+ /*
163+ * ZONE_DEVICE private pages are counted as being
164+ * mapped so the next 3 words hold the mapping, index,
165+ * and private fields from the source anonymous or
166+ * page cache page while the page is migrated to device
167+ * private memory.
168+ * ZONE_DEVICE MEMORY_DEVICE_FS_DAX pages also
169+ * use the mapping, index, and private fields when
170+ * pmem backed DAX files are mapped.
171+ */
163172 };
164173
165174 /** @rcu_head: You can use this to free a page by RCU. */
include/linux/pci.h+2−0
@@ -1567,8 +1567,10 @@ extern bool pcie_ports_native; · 1566 unmodified lines
15671567
15681568 #ifdef CONFIG_PCIEASPM
15691569 bool pcie_aspm_support_enabled(void);
1570+bool pcie_aspm_enabled(struct pci_dev *pdev);
15701571 #else
15711572 static inline bool pcie_aspm_support_enabled(void) { return false; }
1573+static inline bool pcie_aspm_enabled(struct pci_dev *pdev) { return false; }
15721574 #endif
15731575
15741576 #ifdef CONFIG_PCIEAER
include/linux/usb.h+1−1
@@ -1463,7 +1463,7 @@ typedef void (*usb_complete_t)(struct urb *); · 1462 unmodified lines
14631463 * field rather than determining a dma address themselves.
14641464 *
14651465 * Note that transfer_buffer must still be set if the controller
1466− * does not support DMA (as indicated by bus.uses_dma) and when talking
1466+ * does not support DMA (as indicated by hcd_uses_dma()) and when talking
14671467 * to root hub. If you have to trasfer between highmem zone and the device
14681468 * on such controller, create a bounce buffer or bail out with an error.
14691469 * If transfer_buffer cannot be set (is in highmem) and the controller is DMA
include/linux/usb/hcd.h+3−0
@@ -422,6 +422,9 @@ static inline bool hcd_periodic_completion_in_progress(struct usb_hcd *hcd, · 421 unmodified lines
422422 return hcd->high_prio_bh.completing_ep == ep;
423423 }
424424
425+#define hcd_uses_dma(hcd) \
426+ (IS_ENABLED(CONFIG_HAS_DMA) && (hcd)->self.uses_dma)
427+
425428 extern int usb_hcd_link_urb_to_ep(struct usb_hcd *hcd, struct urb *urb);
426429 extern int usb_hcd_check_unlink_urb(struct usb_hcd *hcd, struct urb *urb,
427430 int status);

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t