Merge branch 'master'
This commit is contained in:
@@ -65,10 +65,9 @@ extern struct sysdev_class cpu_sysdev_class;
|
||||
|
||||
#ifdef CONFIG_HOTPLUG_CPU
|
||||
/* Stop CPUs going up and down. */
|
||||
extern struct semaphore cpucontrol;
|
||||
#define lock_cpu_hotplug() down(&cpucontrol)
|
||||
#define unlock_cpu_hotplug() up(&cpucontrol)
|
||||
#define lock_cpu_hotplug_interruptible() down_interruptible(&cpucontrol)
|
||||
extern void lock_cpu_hotplug(void);
|
||||
extern void unlock_cpu_hotplug(void);
|
||||
extern int lock_cpu_hotplug_interruptible(void);
|
||||
#define hotcpu_notifier(fn, pri) { \
|
||||
static struct notifier_block fn##_nb = \
|
||||
{ .notifier_call = fn, .priority = pri }; \
|
||||
|
@@ -11,7 +11,7 @@ struct vm_area_struct;
|
||||
/*
|
||||
* GFP bitmasks..
|
||||
*/
|
||||
/* Zone modifiers in GFP_ZONEMASK (see linux/mmzone.h - low two bits) */
|
||||
/* Zone modifiers in GFP_ZONEMASK (see linux/mmzone.h - low three bits) */
|
||||
#define __GFP_DMA ((__force gfp_t)0x01u)
|
||||
#define __GFP_HIGHMEM ((__force gfp_t)0x02u)
|
||||
#ifdef CONFIG_DMA_IS_DMA32
|
||||
@@ -74,7 +74,12 @@ struct vm_area_struct;
|
||||
#define GFP_DMA32 __GFP_DMA32
|
||||
|
||||
|
||||
#define gfp_zone(mask) ((__force int)((mask) & (__force gfp_t)GFP_ZONEMASK))
|
||||
static inline int gfp_zone(gfp_t gfp)
|
||||
{
|
||||
int zone = GFP_ZONEMASK & (__force int) gfp;
|
||||
BUG_ON(zone >= GFP_ZONETYPES);
|
||||
return zone;
|
||||
}
|
||||
|
||||
/*
|
||||
* There is only one page-allocator function, and two main namespaces to
|
||||
|
@@ -16,8 +16,6 @@
|
||||
#ifndef _LINUX_JBD_H
|
||||
#define _LINUX_JBD_H
|
||||
|
||||
#if defined(CONFIG_JBD) || defined(CONFIG_JBD_MODULE) || !defined(__KERNEL__)
|
||||
|
||||
/* Allow this file to be included directly into e2fsprogs */
|
||||
#ifndef __KERNEL__
|
||||
#include "jfs_compat.h"
|
||||
@@ -1083,19 +1081,4 @@ extern int jbd_blocks_per_page(struct inode *inode);
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
|
||||
#endif /* CONFIG_JBD || CONFIG_JBD_MODULE || !__KERNEL__ */
|
||||
|
||||
/*
|
||||
* Compatibility no-ops which allow the kernel to compile without CONFIG_JBD
|
||||
* go here.
|
||||
*/
|
||||
|
||||
#if defined(__KERNEL__) && !(defined(CONFIG_JBD) || defined(CONFIG_JBD_MODULE))
|
||||
|
||||
#define J_ASSERT(expr) do {} while (0)
|
||||
#define J_ASSERT_BH(bh, expr) do {} while (0)
|
||||
#define buffer_jbd(bh) 0
|
||||
#define journal_buffer_journal_lru(bh) 0
|
||||
|
||||
#endif /* defined(__KERNEL__) && !defined(CONFIG_JBD) */
|
||||
#endif /* _LINUX_JBD_H */
|
||||
|
@@ -85,7 +85,6 @@ struct notifier_block;
|
||||
extern int register_memory_notifier(struct notifier_block *nb);
|
||||
extern void unregister_memory_notifier(struct notifier_block *nb);
|
||||
|
||||
extern struct sysdev_class memory_sysdev_class;
|
||||
#endif /* CONFIG_MEMORY_HOTPLUG */
|
||||
|
||||
#define hotplug_memory_notifier(fn, pri) { \
|
||||
|
@@ -144,7 +144,8 @@ extern unsigned int kobjsize(const void *objp);
|
||||
|
||||
#define VM_GROWSDOWN 0x00000100 /* general info on the segment */
|
||||
#define VM_GROWSUP 0x00000200
|
||||
#define VM_SHM 0x00000400 /* shared memory area, don't swap out */
|
||||
#define VM_SHM 0x00000000 /* Means nothing: delete it later */
|
||||
#define VM_PFNMAP 0x00000400 /* Page-ranges managed without "struct page", just pure PFN */
|
||||
#define VM_DENYWRITE 0x00000800 /* ETXTBSY on write attempts.. */
|
||||
|
||||
#define VM_EXECUTABLE 0x00001000
|
||||
@@ -157,7 +158,7 @@ extern unsigned int kobjsize(const void *objp);
|
||||
|
||||
#define VM_DONTCOPY 0x00020000 /* Do not copy this vma on fork */
|
||||
#define VM_DONTEXPAND 0x00040000 /* Cannot expand with mremap() */
|
||||
#define VM_RESERVED 0x00080000 /* Pages managed in a special way */
|
||||
#define VM_RESERVED 0x00080000 /* Count as reserved_vm like IO */
|
||||
#define VM_ACCOUNT 0x00100000 /* Is a VM accounted object */
|
||||
#define VM_HUGETLB 0x00400000 /* Huge TLB Page VM */
|
||||
#define VM_NONLINEAR 0x00800000 /* Is non-linear (remap_file_pages) */
|
||||
@@ -311,8 +312,6 @@ struct page {
|
||||
|
||||
extern void FASTCALL(__page_cache_release(struct page *));
|
||||
|
||||
#ifdef CONFIG_HUGETLB_PAGE
|
||||
|
||||
static inline int page_count(struct page *page)
|
||||
{
|
||||
if (PageCompound(page))
|
||||
@@ -329,23 +328,6 @@ static inline void get_page(struct page *page)
|
||||
|
||||
void put_page(struct page *page);
|
||||
|
||||
#else /* CONFIG_HUGETLB_PAGE */
|
||||
|
||||
#define page_count(p) (atomic_read(&(p)->_count) + 1)
|
||||
|
||||
static inline void get_page(struct page *page)
|
||||
{
|
||||
atomic_inc(&page->_count);
|
||||
}
|
||||
|
||||
static inline void put_page(struct page *page)
|
||||
{
|
||||
if (put_page_testzero(page))
|
||||
__page_cache_release(page);
|
||||
}
|
||||
|
||||
#endif /* CONFIG_HUGETLB_PAGE */
|
||||
|
||||
/*
|
||||
* Multiple processes may "see" the same page. E.g. for untouched
|
||||
* mappings of /dev/null, all processes see the same page full of
|
||||
@@ -682,6 +664,7 @@ struct zap_details {
|
||||
unsigned long truncate_count; /* Compare vm_truncate_count */
|
||||
};
|
||||
|
||||
struct page *vm_normal_page(struct vm_area_struct *, unsigned long, pte_t);
|
||||
unsigned long zap_page_range(struct vm_area_struct *vma, unsigned long address,
|
||||
unsigned long size, struct zap_details *);
|
||||
unsigned long unmap_vmas(struct mmu_gather **tlb,
|
||||
@@ -971,7 +954,7 @@ unsigned long vmalloc_to_pfn(void *addr);
|
||||
int remap_pfn_range(struct vm_area_struct *, unsigned long addr,
|
||||
unsigned long pfn, unsigned long size, pgprot_t);
|
||||
|
||||
struct page *follow_page(struct mm_struct *, unsigned long address,
|
||||
struct page *follow_page(struct vm_area_struct *, unsigned long address,
|
||||
unsigned int foll_flags);
|
||||
#define FOLL_WRITE 0x01 /* check pte is writable */
|
||||
#define FOLL_TOUCH 0x02 /* mark page accessed */
|
||||
|
@@ -63,7 +63,7 @@
|
||||
/* class 5 */
|
||||
#define MMC_ERASE_GROUP_START 35 /* ac [31:0] data addr R1 */
|
||||
#define MMC_ERASE_GROUP_END 36 /* ac [31:0] data addr R1 */
|
||||
#define MMC_ERASE 37 /* ac R1b */
|
||||
#define MMC_ERASE 38 /* ac R1b */
|
||||
|
||||
/* class 9 */
|
||||
#define MMC_FAST_IO 39 /* ac <Complex> R4 */
|
||||
@@ -74,7 +74,7 @@
|
||||
|
||||
/* class 8 */
|
||||
#define MMC_APP_CMD 55 /* ac [31:16] RCA R1 */
|
||||
#define MMC_GEN_CMD 56 /* adtc [0] RD/WR R1b */
|
||||
#define MMC_GEN_CMD 56 /* adtc [0] RD/WR R1 */
|
||||
|
||||
/* SD commands type argument response */
|
||||
/* class 8 */
|
||||
|
@@ -91,21 +91,11 @@ struct per_cpu_pageset {
|
||||
* will be a maximum of 4 (2 ** 2) zonelists, for 3 modifiers there will
|
||||
* be 8 (2 ** 3) zonelists. GFP_ZONETYPES defines the number of possible
|
||||
* combinations of zone modifiers in "zone modifier space".
|
||||
*
|
||||
* NOTE! Make sure this matches the zones in <linux/gfp.h>
|
||||
*/
|
||||
#define GFP_ZONEMASK 0x03
|
||||
/*
|
||||
* As an optimisation any zone modifier bits which are only valid when
|
||||
* no other zone modifier bits are set (loners) should be placed in
|
||||
* the highest order bits of this field. This allows us to reduce the
|
||||
* extent of the zonelists thus saving space. For example in the case
|
||||
* of three zone modifier bits, we could require up to eight zonelists.
|
||||
* If the left most zone modifier is a "loner" then the highest valid
|
||||
* zonelist would be four allowing us to allocate only five zonelists.
|
||||
* Use the first form when the left most bit is not a "loner", otherwise
|
||||
* use the second.
|
||||
*/
|
||||
/* #define GFP_ZONETYPES (GFP_ZONEMASK + 1) */ /* Non-loner */
|
||||
#define GFP_ZONETYPES ((GFP_ZONEMASK + 1) / 2 + 1) /* Loner */
|
||||
#define GFP_ZONEMASK 0x07
|
||||
#define GFP_ZONETYPES 5
|
||||
|
||||
/*
|
||||
* On machines where it is needed (eg PCs) we divide physical memory
|
||||
|
@@ -7,8 +7,6 @@
|
||||
|
||||
#define IPT_SCTP_VALID_FLAGS 0x07
|
||||
|
||||
#define ELEMCOUNT(x) (sizeof(x)/sizeof(x[0]))
|
||||
|
||||
|
||||
struct ipt_sctp_flag_info {
|
||||
u_int8_t chunktype;
|
||||
@@ -59,21 +57,21 @@ struct ipt_sctp_info {
|
||||
#define SCTP_CHUNKMAP_RESET(chunkmap) \
|
||||
do { \
|
||||
int i; \
|
||||
for (i = 0; i < ELEMCOUNT(chunkmap); i++) \
|
||||
for (i = 0; i < ARRAY_SIZE(chunkmap); i++) \
|
||||
chunkmap[i] = 0; \
|
||||
} while (0)
|
||||
|
||||
#define SCTP_CHUNKMAP_SET_ALL(chunkmap) \
|
||||
do { \
|
||||
int i; \
|
||||
for (i = 0; i < ELEMCOUNT(chunkmap); i++) \
|
||||
for (i = 0; i < ARRAY_SIZE(chunkmap); i++) \
|
||||
chunkmap[i] = ~0; \
|
||||
} while (0)
|
||||
|
||||
#define SCTP_CHUNKMAP_COPY(destmap, srcmap) \
|
||||
do { \
|
||||
int i; \
|
||||
for (i = 0; i < ELEMCOUNT(chunkmap); i++) \
|
||||
for (i = 0; i < ARRAY_SIZE(chunkmap); i++) \
|
||||
destmap[i] = srcmap[i]; \
|
||||
} while (0)
|
||||
|
||||
@@ -81,7 +79,7 @@ struct ipt_sctp_info {
|
||||
({ \
|
||||
int i; \
|
||||
int flag = 1; \
|
||||
for (i = 0; i < ELEMCOUNT(chunkmap); i++) { \
|
||||
for (i = 0; i < ARRAY_SIZE(chunkmap); i++) { \
|
||||
if (chunkmap[i]) { \
|
||||
flag = 0; \
|
||||
break; \
|
||||
@@ -94,7 +92,7 @@ struct ipt_sctp_info {
|
||||
({ \
|
||||
int i; \
|
||||
int flag = 1; \
|
||||
for (i = 0; i < ELEMCOUNT(chunkmap); i++) { \
|
||||
for (i = 0; i < ARRAY_SIZE(chunkmap); i++) { \
|
||||
if (chunkmap[i] != ~0) { \
|
||||
flag = 0; \
|
||||
break; \
|
||||
|
@@ -287,11 +287,7 @@ extern void __mod_page_state(unsigned long offset, unsigned long delta);
|
||||
#define ClearPageReclaim(page) clear_bit(PG_reclaim, &(page)->flags)
|
||||
#define TestClearPageReclaim(page) test_and_clear_bit(PG_reclaim, &(page)->flags)
|
||||
|
||||
#ifdef CONFIG_HUGETLB_PAGE
|
||||
#define PageCompound(page) test_bit(PG_compound, &(page)->flags)
|
||||
#else
|
||||
#define PageCompound(page) 0
|
||||
#endif
|
||||
#define SetPageCompound(page) set_bit(PG_compound, &(page)->flags)
|
||||
#define ClearPageCompound(page) clear_bit(PG_compound, &(page)->flags)
|
||||
|
||||
|
@@ -1199,6 +1199,7 @@
|
||||
#define PCI_DEVICE_ID_VIA_3269_0 0x0269
|
||||
#define PCI_DEVICE_ID_VIA_K8T800PRO_0 0x0282
|
||||
#define PCI_DEVICE_ID_VIA_8363_0 0x0305
|
||||
#define PCI_DEVICE_ID_VIA_P4M800CE 0x0314
|
||||
#define PCI_DEVICE_ID_VIA_8371_0 0x0391
|
||||
#define PCI_DEVICE_ID_VIA_8501_0 0x0501
|
||||
#define PCI_DEVICE_ID_VIA_82C561 0x0561
|
||||
|
@@ -89,7 +89,7 @@ static inline void page_dup_rmap(struct page *page)
|
||||
/*
|
||||
* Called from mm/vmscan.c to handle paging out
|
||||
*/
|
||||
int page_referenced(struct page *, int is_locked, int ignore_token);
|
||||
int page_referenced(struct page *, int is_locked);
|
||||
int try_to_unmap(struct page *);
|
||||
|
||||
/*
|
||||
@@ -109,7 +109,7 @@ unsigned long page_address_in_vma(struct page *, struct vm_area_struct *);
|
||||
#define anon_vma_prepare(vma) (0)
|
||||
#define anon_vma_link(vma) do {} while (0)
|
||||
|
||||
#define page_referenced(page,l,i) TestClearPageReferenced(page)
|
||||
#define page_referenced(page,l) TestClearPageReferenced(page)
|
||||
#define try_to_unmap(page) SWAP_FAIL
|
||||
|
||||
#endif /* CONFIG_MMU */
|
||||
|
@@ -908,7 +908,6 @@ do { if (atomic_dec_and_test(&(tsk)->usage)) __put_task_struct(tsk); } while(0)
|
||||
#define PF_SYNCWRITE 0x00200000 /* I am doing a sync write */
|
||||
#define PF_BORROWED_MM 0x00400000 /* I am a kthread doing use_mm */
|
||||
#define PF_RANDOMIZE 0x00800000 /* randomize virtual address space */
|
||||
#define PF_HOTPLUG_CPU 0x01000000 /* Currently performing CPU hotplug */
|
||||
|
||||
/*
|
||||
* Only the _current_ task can read/write to tsk->flags, but other
|
||||
|
@@ -121,6 +121,9 @@
|
||||
|
||||
#define PORT_IP3106 70
|
||||
|
||||
/* Hilscher netx */
|
||||
#define PORT_NETX 71
|
||||
|
||||
#ifdef __KERNEL__
|
||||
|
||||
#include <linux/config.h>
|
||||
|
@@ -206,6 +206,7 @@ enum {
|
||||
* @nfct: Associated connection, if any
|
||||
* @ipvs_property: skbuff is owned by ipvs
|
||||
* @nfctinfo: Relationship of this skb to the connection
|
||||
* @nfct_reasm: netfilter conntrack re-assembly pointer
|
||||
* @nf_bridge: Saved data about a bridged frame - see br_netfilter.c
|
||||
* @tc_index: Traffic control index
|
||||
* @tc_verd: traffic control verdict
|
||||
@@ -264,16 +265,14 @@ struct sk_buff {
|
||||
nohdr:1,
|
||||
nfctinfo:3;
|
||||
__u8 pkt_type:3,
|
||||
fclone:2;
|
||||
fclone:2,
|
||||
ipvs_property:1;
|
||||
__be16 protocol;
|
||||
|
||||
void (*destructor)(struct sk_buff *skb);
|
||||
#ifdef CONFIG_NETFILTER
|
||||
__u32 nfmark;
|
||||
struct nf_conntrack *nfct;
|
||||
#if defined(CONFIG_IP_VS) || defined(CONFIG_IP_VS_MODULE)
|
||||
__u8 ipvs_property:1;
|
||||
#endif
|
||||
#if defined(CONFIG_NF_CONNTRACK) || defined(CONFIG_NF_CONNTRACK_MODULE)
|
||||
struct sk_buff *nfct_reasm;
|
||||
#endif
|
||||
|
@@ -239,6 +239,11 @@ static inline void put_swap_token(struct mm_struct *mm)
|
||||
__put_swap_token(mm);
|
||||
}
|
||||
|
||||
static inline void disable_swap_token(void)
|
||||
{
|
||||
put_swap_token(swap_token_mm);
|
||||
}
|
||||
|
||||
#else /* CONFIG_SWAP */
|
||||
|
||||
#define total_swap_pages 0
|
||||
@@ -283,6 +288,7 @@ static inline swp_entry_t get_swap_page(void)
|
||||
#define put_swap_token(x) do { } while(0)
|
||||
#define grab_swap_token() do { } while(0)
|
||||
#define has_swap_token(x) 0
|
||||
#define disable_swap_token() do { } while(0)
|
||||
|
||||
#endif /* CONFIG_SWAP */
|
||||
#endif /* __KERNEL__*/
|
||||
|
@@ -34,8 +34,7 @@
|
||||
#define UINPUT_BUFFER_SIZE 16
|
||||
#define UINPUT_NUM_REQUESTS 16
|
||||
|
||||
/* state flags => bit index for {set|clear|test}_bit ops */
|
||||
#define UIST_CREATED 0
|
||||
enum uinput_state { UIST_NEW_DEVICE, UIST_SETUP_COMPLETE, UIST_CREATED };
|
||||
|
||||
struct uinput_request {
|
||||
int id;
|
||||
@@ -52,11 +51,12 @@ struct uinput_request {
|
||||
|
||||
struct uinput_device {
|
||||
struct input_dev *dev;
|
||||
unsigned long state;
|
||||
struct semaphore sem;
|
||||
enum uinput_state state;
|
||||
wait_queue_head_t waitq;
|
||||
unsigned char ready,
|
||||
head,
|
||||
tail;
|
||||
unsigned char ready;
|
||||
unsigned char head;
|
||||
unsigned char tail;
|
||||
struct input_event buff[UINPUT_BUFFER_SIZE];
|
||||
|
||||
struct uinput_request *requests[UINPUT_NUM_REQUESTS];
|
||||
@@ -91,6 +91,7 @@ struct uinput_ff_erase {
|
||||
#define UI_SET_SNDBIT _IOW(UINPUT_IOCTL_BASE, 106, int)
|
||||
#define UI_SET_FFBIT _IOW(UINPUT_IOCTL_BASE, 107, int)
|
||||
#define UI_SET_PHYS _IOW(UINPUT_IOCTL_BASE, 108, char*)
|
||||
#define UI_SET_SWBIT _IOW(UINPUT_IOCTL_BASE, 109, int)
|
||||
|
||||
#define UI_BEGIN_FF_UPLOAD _IOWR(UINPUT_IOCTL_BASE, 200, struct uinput_ff_upload)
|
||||
#define UI_END_FF_UPLOAD _IOW(UINPUT_IOCTL_BASE, 201, struct uinput_ff_upload)
|
||||
|
@@ -47,6 +47,7 @@ struct usb_driver;
|
||||
* @urb_list: urbs queued to this endpoint; maintained by usbcore
|
||||
* @hcpriv: for use by HCD; typically holds hardware dma queue head (QH)
|
||||
* with one or more transfer descriptors (TDs) per urb
|
||||
* @kobj: kobject for sysfs info
|
||||
* @extra: descriptors following this endpoint in the configuration
|
||||
* @extralen: how many bytes of "extra" are valid
|
||||
*
|
||||
|
Reference in New Issue
Block a user