Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
f3b6be8b
Commit
f3b6be8b
authored
Jun 07, 2004
by
Vojtech Pavlik
Browse files
Options
Browse Files
Download
Plain Diff
Merge bkbits:input into suse.cz:/home/vojtech/bk/input
parents
8f10a98a
7b0f9236
Changes
23
Hide whitespace changes
Inline
Side-by-side
Showing
23 changed files
with
117 additions
and
51 deletions
+117
-51
arch/arm/mm/fault-armv.c
arch/arm/mm/fault-armv.c
+13
-1
arch/arm/mm/proc-syms.c
arch/arm/mm/proc-syms.c
+0
-3
arch/arm/tools/mach-types
arch/arm/tools/mach-types
+15
-2
arch/i386/kernel/dmi_scan.c
arch/i386/kernel/dmi_scan.c
+1
-0
arch/ppc/mm/tlb.c
arch/ppc/mm/tlb.c
+11
-0
drivers/char/synclink.c
drivers/char/synclink.c
+1
-1
drivers/video/sbuslib.c
drivers/video/sbuslib.c
+1
-0
include/asm-arm/cacheflush.h
include/asm-arm/cacheflush.h
+1
-11
include/asm-ppc/pgtable.h
include/asm-ppc/pgtable.h
+5
-1
include/asm-ppc/tlbflush.h
include/asm-ppc/tlbflush.h
+7
-0
include/asm-ppc64/pgtable.h
include/asm-ppc64/pgtable.h
+4
-1
include/asm-ppc64/tlbflush.h
include/asm-ppc64/tlbflush.h
+2
-0
include/linux/netfilter.h
include/linux/netfilter.h
+6
-0
include/linux/netfilter_arp.h
include/linux/netfilter_arp.h
+1
-0
include/linux/netfilter_ipv4/ip_tables.h
include/linux/netfilter_ipv4/ip_tables.h
+8
-0
include/linux/netfilter_ipv6/ip6_tables.h
include/linux/netfilter_ipv6/ip6_tables.h
+2
-0
include/linux/watchdog.h
include/linux/watchdog.h
+1
-0
include/net/tcp.h
include/net/tcp.h
+3
-0
kernel/sched.c
kernel/sched.c
+7
-0
net/ipv4/netfilter/arp_tables.c
net/ipv4/netfilter/arp_tables.c
+8
-8
net/ipv4/netfilter/ip_tables.c
net/ipv4/netfilter/ip_tables.c
+10
-12
net/ipv6/netfilter/ip6_tables.c
net/ipv6/netfilter/ip6_tables.c
+9
-10
net/sunrpc/auth_gss/auth_gss.c
net/sunrpc/auth_gss/auth_gss.c
+1
-1
No files found.
arch/arm/mm/fault-armv.c
View file @
f3b6be8b
...
...
@@ -8,6 +8,7 @@
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*/
#include <linux/module.h>
#include <linux/sched.h>
#include <linux/kernel.h>
#include <linux/mm.h>
...
...
@@ -75,7 +76,7 @@ static int adjust_pte(struct vm_area_struct *vma, unsigned long address)
return
0
;
}
void
__flush_dcache_page
(
struct
page
*
page
)
static
void
__flush_dcache_page
(
struct
page
*
page
)
{
struct
address_space
*
mapping
=
page_mapping
(
page
);
struct
mm_struct
*
mm
=
current
->
active_mm
;
...
...
@@ -111,6 +112,17 @@ void __flush_dcache_page(struct page *page)
flush_dcache_mmap_unlock
(
mapping
);
}
void
flush_dcache_page
(
struct
page
*
page
)
{
struct
address_space
*
mapping
=
page_mapping
(
page
);
if
(
mapping
&&
!
mapping_mapped
(
mapping
))
set_bit
(
PG_dcache_dirty
,
&
page
->
flags
);
else
__flush_dcache_page
(
page
);
}
EXPORT_SYMBOL
(
flush_dcache_page
);
static
void
make_coherent
(
struct
vm_area_struct
*
vma
,
unsigned
long
addr
,
struct
page
*
page
,
int
dirty
)
{
...
...
arch/arm/mm/proc-syms.c
View file @
f3b6be8b
...
...
@@ -14,8 +14,6 @@
#include <asm/proc-fns.h>
#include <asm/tlbflush.h>
EXPORT_SYMBOL
(
__flush_dcache_page
);
#ifndef MULTI_CPU
EXPORT_SYMBOL
(
cpu_dcache_clean_area
);
EXPORT_SYMBOL
(
cpu_set_pte
);
...
...
@@ -28,7 +26,6 @@ EXPORT_SYMBOL_NOVERS(__cpuc_flush_kern_all);
EXPORT_SYMBOL_NOVERS
(
__cpuc_flush_user_all
);
EXPORT_SYMBOL_NOVERS
(
__cpuc_flush_user_range
);
EXPORT_SYMBOL_NOVERS
(
__cpuc_coherent_kern_range
);
EXPORT_SYMBOL_NOVERS
(
__cpuc_flush_dcache_page
);
#else
EXPORT_SYMBOL
(
cpu_cache
);
#endif
...
...
arch/arm/tools/mach-types
View file @
f3b6be8b
...
...
@@ -6,7 +6,7 @@
# To add an entry into this database, please see Documentation/arm/README,
# or contact rmk@arm.linux.org.uk
#
# Last update:
Thu Apr 29 19:06:33
2004
# Last update:
Fri May 28 13:17:46
2004
#
# machine_is_xxx CONFIG_xxxx MACH_TYPE_xxx number
#
...
...
@@ -509,7 +509,7 @@ s3c5500 MACH_S3C5500 S3C5500 498
smdk5500 MACH_SMDK5500 SMDK5500 499
signalsync MACH_SIGNALSYNC SIGNALSYNC 500
nbc MACH_NBC NBC 501
er4525 MACH_ER4525 ER4525
502
kodiak MACH_KODIAK KODIAK
502
netbookpro MACH_NETBOOKPRO NETBOOKPRO 503
hw90200 MACH_HW90200 HW90200 504
condor MACH_CONDOR CONDOR 505
...
...
@@ -533,3 +533,16 @@ emc1000 MACH_EMC1000 EMC1000 522
tidsc25 MACH_TIDSC25 TIDSC25 523
akcpmxl MACH_AKCPMXL AKCPMXL 524
av3xx MACH_AV3XX AV3XX 525
avila MACH_AVILA AVILA 526
pxa_mpm10 MACH_PXA_MPM10 PXA_MPM10 527
pxa_kyanite MACH_PXA_KYANITE PXA_KYANITE 528
sgold MACH_SGOLD SGOLD 529
oscar MACH_OSCAR OSCAR 530
epxa4usb2 MACH_EPXA4USB2 EPXA4USB2 531
xsengine MACH_XSENGINE XSENGINE 532
ip600 MACH_IP600 IP600 533
mcan2 MACH_MCAN2 MCAN2 534
ddi_blueridge MACH_DDI_BLUERIDGE DDI_BLUERIDGE 535
skyminder MACH_SKYMINDER SKYMINDER 536
lpd79520 MACH_LPD79520 LPD79520 537
edb9302 MACH_EDB9302 EDB9302 538
arch/i386/kernel/dmi_scan.c
View file @
f3b6be8b
...
...
@@ -797,6 +797,7 @@ static __initdata struct dmi_blacklist dmi_blacklist[]={
{
exploding_pnp_bios
,
"ASUS P4P800"
,
{
/* PnPBIOS GPF on boot */
MATCH
(
DMI_BOARD_VENDOR
,
"ASUSTeK Computer Inc."
),
MATCH
(
DMI_BOARD_NAME
,
"P4P800"
),
NO_MATCH
,
NO_MATCH
}
},
/* Machines which have problems handling enabled local APICs */
...
...
arch/ppc/mm/tlb.c
View file @
f3b6be8b
...
...
@@ -66,6 +66,17 @@ void flush_hash_one_pte(pte_t *ptep)
flush_hash_pages
(
mm
->
context
,
addr
,
ptephys
,
1
);
}
/*
* Called by ptep_set_access_flags, must flush on CPUs for which the
* DSI handler can't just "fixup" the TLB on a write fault
*/
void
flush_tlb_page_nohash
(
struct
vm_area_struct
*
vma
,
unsigned
long
addr
)
{
if
(
Hash
!=
0
)
return
;
_tlbie
(
addr
);
}
/*
* Called at the end of a mmu_gather operation to make sure the
* TLB flush is completely done.
...
...
drivers/char/synclink.c
View file @
f3b6be8b
...
...
@@ -4525,7 +4525,7 @@ static int mgsl_init_tty(void)
/* enumerate user specified ISA adapters
*/
static
int
mgsl_enum_isa_devices
(
void
)
static
void
mgsl_enum_isa_devices
(
void
)
{
struct
mgsl_struct
*
info
;
int
i
;
...
...
drivers/video/sbuslib.c
View file @
f3b6be8b
...
...
@@ -122,6 +122,7 @@ int sbusfb_ioctl_helper(unsigned long cmd, unsigned long arg,
cmap
.
red
=
&
red
;
cmap
.
green
=
&
green
;
cmap
.
blue
=
&
blue
;
cmap
.
transp
=
NULL
;
for
(
i
=
0
;
i
<
count
;
i
++
)
{
int
err
;
...
...
include/asm-arm/cacheflush.h
View file @
f3b6be8b
...
...
@@ -291,17 +291,7 @@ flush_cache_page(struct vm_area_struct *vma, unsigned long user_addr)
* about to change to user space. This is the same method as used on SPARC64.
* See update_mmu_cache for the user space part.
*/
extern
void
__flush_dcache_page
(
struct
page
*
);
static
inline
void
flush_dcache_page
(
struct
page
*
page
)
{
struct
address_space
*
mapping
=
page_mapping
(
page
);
if
(
mapping
&&
!
mapping_mapped
(
mapping
))
set_bit
(
PG_dcache_dirty
,
&
page
->
flags
);
else
__flush_dcache_page
(
page
);
}
extern
void
flush_dcache_page
(
struct
page
*
);
#define flush_dcache_mmap_lock(mapping) \
spin_lock_irq(&(mapping)->tree_lock)
...
...
include/asm-ppc/pgtable.h
View file @
f3b6be8b
...
...
@@ -555,8 +555,12 @@ static inline void __ptep_set_access_flags(pte_t *ptep, pte_t entry, int dirty)
(
_PAGE_DIRTY
|
_PAGE_ACCESSED
|
_PAGE_RW
);
pte_update
(
ptep
,
0
,
bits
);
}
#define ptep_set_access_flags(__vma, __address, __ptep, __entry, __dirty) \
__ptep_set_access_flags(__ptep, __entry, __dirty)
do { \
__ptep_set_access_flags(__ptep, __entry, __dirty); \
flush_tlb_page_nohash(__vma, __address); \
} while(0)
/*
* Macro to mark a page protection value as "uncacheable".
...
...
include/asm-ppc/tlbflush.h
View file @
f3b6be8b
...
...
@@ -29,6 +29,9 @@ static inline void flush_tlb_mm(struct mm_struct *mm)
static
inline
void
flush_tlb_page
(
struct
vm_area_struct
*
vma
,
unsigned
long
vmaddr
)
{
_tlbie
(
vmaddr
);
}
static
inline
void
flush_tlb_page_nohash
(
struct
vm_area_struct
*
vma
,
unsigned
long
vmaddr
)
{
_tlbie
(
vmaddr
);
}
static
inline
void
flush_tlb_range
(
struct
vm_area_struct
*
vma
,
unsigned
long
start
,
unsigned
long
end
)
{
__tlbia
();
}
...
...
@@ -44,6 +47,9 @@ static inline void flush_tlb_mm(struct mm_struct *mm)
static
inline
void
flush_tlb_page
(
struct
vm_area_struct
*
vma
,
unsigned
long
vmaddr
)
{
_tlbie
(
vmaddr
);
}
static
inline
void
flush_tlb_page_nohash
(
struct
vm_area_struct
*
vma
,
unsigned
long
vmaddr
)
{
_tlbie
(
vmaddr
);
}
static
inline
void
flush_tlb_range
(
struct
mm_struct
*
mm
,
unsigned
long
start
,
unsigned
long
end
)
{
__tlbia
();
}
...
...
@@ -56,6 +62,7 @@ struct mm_struct;
struct
vm_area_struct
;
extern
void
flush_tlb_mm
(
struct
mm_struct
*
mm
);
extern
void
flush_tlb_page
(
struct
vm_area_struct
*
vma
,
unsigned
long
vmaddr
);
extern
void
flush_tlb_page_nohash
(
struct
vm_area_struct
*
vma
,
unsigned
long
addr
);
extern
void
flush_tlb_range
(
struct
vm_area_struct
*
vma
,
unsigned
long
start
,
unsigned
long
end
);
extern
void
flush_tlb_kernel_range
(
unsigned
long
start
,
unsigned
long
end
);
...
...
include/asm-ppc64/pgtable.h
View file @
f3b6be8b
...
...
@@ -428,7 +428,10 @@ static inline void __ptep_set_access_flags(pte_t *ptep, pte_t entry, int dirty)
:
"cc"
);
}
#define ptep_set_access_flags(__vma, __address, __ptep, __entry, __dirty) \
__ptep_set_access_flags(__ptep, __entry, __dirty)
do { \
__ptep_set_access_flags(__ptep, __entry, __dirty); \
flush_tlb_page_nohash(__vma, __address); \
} while(0)
/*
* Macro to mark a page protection value as "uncacheable".
...
...
include/asm-ppc64/tlbflush.h
View file @
f3b6be8b
...
...
@@ -6,6 +6,7 @@
*
* - flush_tlb_mm(mm) flushes the specified mm context TLB's
* - flush_tlb_page(vma, vmaddr) flushes one page
* - flush_tlb_page_nohash(vma, vmaddr) flushes one page if SW loaded TLB
* - flush_tlb_range(vma, start, end) flushes a range of pages
* - flush_tlb_kernel_range(start, end) flushes a range of kernel pages
* - flush_tlb_pgtables(mm, start, end) flushes a range of page tables
...
...
@@ -39,6 +40,7 @@ static inline void flush_tlb_pending(void)
#define flush_tlb_mm(mm) flush_tlb_pending()
#define flush_tlb_page(vma, addr) flush_tlb_pending()
#define flush_tlb_page_nohash(vma, addr) do { } while (0)
#define flush_tlb_range(vma, start, end) \
do { (void)(start); flush_tlb_pending(); } while (0)
#define flush_tlb_kernel_range(start, end) flush_tlb_pending()
...
...
include/linux/netfilter.h
View file @
f3b6be8b
...
...
@@ -171,6 +171,12 @@ extern void nf_reinject(struct sk_buff *skb,
struct
nf_info
*
info
,
unsigned
int
verdict
);
extern
inline
struct
ipt_target
*
ipt_find_target_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
);
extern
inline
struct
ip6t_target
*
ip6t_find_target_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
);
extern
inline
struct
arpt_target
*
arpt_find_target_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
);
extern
void
(
*
ip_ct_attach
)(
struct
sk_buff
*
,
struct
nf_ct_info
*
);
#ifdef CONFIG_NETFILTER_DEBUG
...
...
include/linux/netfilter_arp.h
View file @
f3b6be8b
...
...
@@ -17,4 +17,5 @@
#define NF_ARP_FORWARD 2
#define NF_ARP_NUMHOOKS 3
static
DECLARE_MUTEX
(
arpt_mutex
);
#endif
/* __LINUX_ARP_NETFILTER_H */
include/linux/netfilter_ipv4/ip_tables.h
View file @
f3b6be8b
...
...
@@ -283,6 +283,8 @@ struct ipt_get_entries
struct
ipt_entry
entrytable
[
0
];
};
extern
struct
semaphore
ipt_mutex
;
/* Standard return verdict, or do jump. */
#define IPT_STANDARD_TARGET ""
/* Error verdict. */
...
...
@@ -334,6 +336,7 @@ ipt_get_target(struct ipt_entry *e)
/*
* Main firewall chains definitions and global var's definitions.
*/
static
DECLARE_MUTEX
(
ipt_mutex
);
#ifdef __KERNEL__
#include <linux/init.h>
...
...
@@ -406,6 +409,11 @@ struct ipt_target
struct
module
*
me
;
};
extern
struct
ipt_target
*
ipt_find_target_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
);
extern
struct
arpt_target
*
arpt_find_target_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
);
extern
int
ipt_register_target
(
struct
ipt_target
*
target
);
extern
void
ipt_unregister_target
(
struct
ipt_target
*
target
);
...
...
include/linux/netfilter_ipv6/ip6_tables.h
View file @
f3b6be8b
...
...
@@ -106,6 +106,8 @@ struct ip6t_counters
u_int64_t
pcnt
,
bcnt
;
/* Packet and byte counters */
};
static
DECLARE_MUTEX
(
ip6t_mutex
);
/* Values for "flag" field in struct ip6t_ip6 (general ip6 structure). */
#define IP6T_F_PROTO 0x01
/* Set if rule cares about upper
protocols */
...
...
include/linux/watchdog.h
View file @
f3b6be8b
...
...
@@ -10,6 +10,7 @@
#define _LINUX_WATCHDOG_H
#include <linux/ioctl.h>
#include <linux/types.h>
#define WATCHDOG_IOCTL_BASE 'W'
...
...
include/net/tcp.h
View file @
f3b6be8b
...
...
@@ -970,6 +970,9 @@ extern int tcp_sync_mss(struct sock *sk, u32 pmtu);
extern
const
char
timer_bug_msg
[];
/* tcp_diag.c */
extern
void
tcp_get_info
(
struct
sock
*
,
struct
tcp_info
*
);
/* Read 'sendfile()'-style from a TCP socket */
typedef
int
(
*
sk_read_actor_t
)(
read_descriptor_t
*
,
struct
sk_buff
*
,
unsigned
int
,
size_t
);
...
...
kernel/sched.c
View file @
f3b6be8b
...
...
@@ -762,6 +762,13 @@ static int try_to_wake_up(task_t * p, unsigned int state, int sync)
load
=
source_load
(
cpu
);
this_load
=
target_load
(
this_cpu
);
/*
* If sync wakeup then subtract the (maximum possible) effect of
* the currently running task from the load of the current CPU:
*/
if
(
sync
)
this_load
-=
SCHED_LOAD_SCALE
;
/* Don't pull the task off an idle CPU to a busy one */
if
(
load
<
SCHED_LOAD_SCALE
&&
load
+
this_load
>
SCHED_LOAD_SCALE
&&
this_load
>
load
)
...
...
net/ipv4/netfilter/arp_tables.c
View file @
f3b6be8b
...
...
@@ -56,7 +56,6 @@ do { \
#endif
#define SMP_ALIGN(x) (((x) + SMP_CACHE_BYTES-1) & ~(SMP_CACHE_BYTES-1))
static
DECLARE_MUTEX
(
arpt_mutex
);
#define ASSERT_READ_LOCK(x) ARP_NF_ASSERT(down_trylock(&arpt_mutex) != 0)
#define ASSERT_WRITE_LOCK(x) ARP_NF_ASSERT(down_trylock(&arpt_mutex) != 0)
...
...
@@ -388,12 +387,12 @@ find_inlist_lock(struct list_head *head,
}
#endif
static
inline
struct
arpt_table
*
find_table_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
)
static
inline
struct
arpt_table
*
arpt_
find_table_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
)
{
return
find_inlist_lock
(
&
arpt_tables
,
name
,
"arptable_"
,
error
,
mutex
);
}
st
atic
inline
struct
arpt_target
*
find_target_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
)
st
ruct
arpt_target
*
arpt_
find_target_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
)
{
return
find_inlist_lock
(
&
arpt_target
,
name
,
"arpt_"
,
error
,
mutex
);
}
...
...
@@ -543,7 +542,7 @@ static inline int check_entry(struct arpt_entry *e, const char *name, unsigned i
}
t
=
arpt_get_target
(
e
);
target
=
find_target_lock
(
t
->
u
.
user
.
name
,
&
ret
,
&
arpt_mutex
);
target
=
arpt_
find_target_lock
(
t
->
u
.
user
.
name
,
&
ret
,
&
arpt_mutex
);
if
(
!
target
)
{
duprintf
(
"check_entry: `%s' not found
\n
"
,
t
->
u
.
user
.
name
);
goto
out
;
...
...
@@ -843,7 +842,7 @@ static int get_entries(const struct arpt_get_entries *entries,
int
ret
;
struct
arpt_table
*
t
;
t
=
find_table_lock
(
entries
->
name
,
&
ret
,
&
arpt_mutex
);
t
=
arpt_
find_table_lock
(
entries
->
name
,
&
ret
,
&
arpt_mutex
);
if
(
t
)
{
duprintf
(
"t->private->number = %u
\n
"
,
t
->
private
->
number
);
...
...
@@ -909,7 +908,7 @@ static int do_replace(void __user *user, unsigned int len)
duprintf
(
"arp_tables: Translated table
\n
"
);
t
=
find_table_lock
(
tmp
.
name
,
&
ret
,
&
arpt_mutex
);
t
=
arpt_
find_table_lock
(
tmp
.
name
,
&
ret
,
&
arpt_mutex
);
if
(
!
t
)
goto
free_newinfo_counters_untrans
;
...
...
@@ -1002,7 +1001,7 @@ static int do_add_counters(void __user *user, unsigned int len)
goto
free
;
}
t
=
find_table_lock
(
tmp
.
name
,
&
ret
,
&
arpt_mutex
);
t
=
arpt_
find_table_lock
(
tmp
.
name
,
&
ret
,
&
arpt_mutex
);
if
(
!
t
)
goto
free
;
...
...
@@ -1075,7 +1074,7 @@ static int do_arpt_get_ctl(struct sock *sk, int cmd, void __user *user, int *len
break
;
}
name
[
ARPT_TABLE_MAXNAMELEN
-
1
]
=
'\0'
;
t
=
find_table_lock
(
name
,
&
ret
,
&
arpt_mutex
);
t
=
arpt_
find_table_lock
(
name
,
&
ret
,
&
arpt_mutex
);
if
(
t
)
{
struct
arpt_getinfo
info
;
...
...
@@ -1323,6 +1322,7 @@ static void __exit fini(void)
EXPORT_SYMBOL
(
arpt_register_table
);
EXPORT_SYMBOL
(
arpt_unregister_table
);
EXPORT_SYMBOL
(
arpt_do_table
);
EXPORT_SYMBOL
(
arpt_find_target_lock
);
EXPORT_SYMBOL
(
arpt_register_target
);
EXPORT_SYMBOL
(
arpt_unregister_target
);
...
...
net/ipv4/netfilter/ip_tables.c
View file @
f3b6be8b
...
...
@@ -61,9 +61,6 @@ do { \
#endif
#define SMP_ALIGN(x) (((x) + SMP_CACHE_BYTES-1) & ~(SMP_CACHE_BYTES-1))
/* Mutex protects lists (only traversed in user context). */
static
DECLARE_MUTEX
(
ipt_mutex
);
/* Must have mutex */
#define ASSERT_READ_LOCK(x) IP_NF_ASSERT(down_trylock(&ipt_mutex) != 0)
#define ASSERT_WRITE_LOCK(x) IP_NF_ASSERT(down_trylock(&ipt_mutex) != 0)
...
...
@@ -418,7 +415,7 @@ find_inlist_lock_noload(struct list_head *head,
{
void
*
ret
;
#if 0
#if 0
duprintf("find_inlist: searching for `%s' in %s.\n",
name, head == &ipt_target ? "ipt_target"
: head == &ipt_match ? "ipt_match"
...
...
@@ -461,7 +458,7 @@ find_inlist_lock(struct list_head *head,
#endif
static
inline
struct
ipt_table
*
find_table_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
)
ipt_
find_table_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
)
{
return
find_inlist_lock
(
&
ipt_tables
,
name
,
"iptable_"
,
error
,
mutex
);
}
...
...
@@ -472,8 +469,8 @@ find_match_lock(const char *name, int *error, struct semaphore *mutex)
return
find_inlist_lock
(
&
ipt_match
,
name
,
"ipt_"
,
error
,
mutex
);
}
st
atic
inline
st
ruct
ipt_target
*
find_target_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
)
struct
ipt_target
*
ipt_
find_target_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
)
{
return
find_inlist_lock
(
&
ipt_target
,
name
,
"ipt_"
,
error
,
mutex
);
}
...
...
@@ -688,7 +685,7 @@ check_entry(struct ipt_entry *e, const char *name, unsigned int size,
goto
cleanup_matches
;
t
=
ipt_get_target
(
e
);
target
=
find_target_lock
(
t
->
u
.
user
.
name
,
&
ret
,
&
ipt_mutex
);
target
=
ipt_
find_target_lock
(
t
->
u
.
user
.
name
,
&
ret
,
&
ipt_mutex
);
if
(
!
target
)
{
duprintf
(
"check_entry: `%s' not found
\n
"
,
t
->
u
.
user
.
name
);
goto
cleanup_matches
;
...
...
@@ -1025,7 +1022,7 @@ get_entries(const struct ipt_get_entries *entries,
int
ret
;
struct
ipt_table
*
t
;
t
=
find_table_lock
(
entries
->
name
,
&
ret
,
&
ipt_mutex
);
t
=
ipt_
find_table_lock
(
entries
->
name
,
&
ret
,
&
ipt_mutex
);
if
(
t
)
{
duprintf
(
"t->private->number = %u
\n
"
,
t
->
private
->
number
);
...
...
@@ -1092,7 +1089,7 @@ do_replace(void __user *user, unsigned int len)
duprintf
(
"ip_tables: Translated table
\n
"
);
t
=
find_table_lock
(
tmp
.
name
,
&
ret
,
&
ipt_mutex
);
t
=
ipt_
find_table_lock
(
tmp
.
name
,
&
ret
,
&
ipt_mutex
);
if
(
!
t
)
goto
free_newinfo_counters_untrans
;
...
...
@@ -1195,7 +1192,7 @@ do_add_counters(void __user *user, unsigned int len)
goto
free
;
}
t
=
find_table_lock
(
tmp
.
name
,
&
ret
,
&
ipt_mutex
);
t
=
ipt_
find_table_lock
(
tmp
.
name
,
&
ret
,
&
ipt_mutex
);
if
(
!
t
)
goto
free
;
...
...
@@ -1270,7 +1267,7 @@ do_ipt_get_ctl(struct sock *sk, int cmd, void __user *user, int *len)
break
;
}
name
[
IPT_TABLE_MAXNAMELEN
-
1
]
=
'\0'
;
t
=
find_table_lock
(
name
,
&
ret
,
&
ipt_mutex
);
t
=
ipt_
find_table_lock
(
name
,
&
ret
,
&
ipt_mutex
);
if
(
t
)
{
struct
ipt_getinfo
info
;
...
...
@@ -1855,6 +1852,7 @@ EXPORT_SYMBOL(ipt_unregister_match);
EXPORT_SYMBOL
(
ipt_do_table
);
EXPORT_SYMBOL
(
ipt_register_target
);
EXPORT_SYMBOL
(
ipt_unregister_target
);
EXPORT_SYMBOL
(
ipt_find_target_lock
);
module_init
(
init
);
module_exit
(
fini
);
net/ipv6/netfilter/ip6_tables.c
View file @
f3b6be8b
...
...
@@ -66,8 +66,6 @@ do { \
#endif
#define SMP_ALIGN(x) (((x) + SMP_CACHE_BYTES-1) & ~(SMP_CACHE_BYTES-1))
/* Mutex protects lists (only traversed in user context). */
static
DECLARE_MUTEX
(
ip6t_mutex
);
/* Must have mutex */
#define ASSERT_READ_LOCK(x) IP_NF_ASSERT(down_trylock(&ip6t_mutex) != 0)
...
...
@@ -544,7 +542,7 @@ find_inlist_lock(struct list_head *head,
#endif
static
inline
struct
ip6t_table
*
find_table_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
)
ip6t_
find_table_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
)
{
return
find_inlist_lock
(
&
ip6t_tables
,
name
,
"ip6table_"
,
error
,
mutex
);
}
...
...
@@ -555,8 +553,8 @@ find_match_lock(const char *name, int *error, struct semaphore *mutex)
return
find_inlist_lock
(
&
ip6t_match
,
name
,
"ip6t_"
,
error
,
mutex
);
}
st
atic
inline
st
ruct
ip6t_target
*
find_target_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
)
struct
ip6t_target
*
ip6t_
find_target_lock
(
const
char
*
name
,
int
*
error
,
struct
semaphore
*
mutex
)
{
return
find_inlist_lock
(
&
ip6t_target
,
name
,
"ip6t_"
,
error
,
mutex
);
}
...
...
@@ -771,7 +769,7 @@ check_entry(struct ip6t_entry *e, const char *name, unsigned int size,
goto
cleanup_matches
;
t
=
ip6t_get_target
(
e
);
target
=
find_target_lock
(
t
->
u
.
user
.
name
,
&
ret
,
&
ip6t_mutex
);
target
=
ip6t_
find_target_lock
(
t
->
u
.
user
.
name
,
&
ret
,
&
ip6t_mutex
);
if
(
!
target
)
{
duprintf
(
"check_entry: `%s' not found
\n
"
,
t
->
u
.
user
.
name
);
goto
cleanup_matches
;
...
...
@@ -1111,7 +1109,7 @@ get_entries(const struct ip6t_get_entries *entries,
int
ret
;
struct
ip6t_table
*
t
;
t
=
find_table_lock
(
entries
->
name
,
&
ret
,
&
ip6t_mutex
);
t
=
ip6t_
find_table_lock
(
entries
->
name
,
&
ret
,
&
ip6t_mutex
);
if
(
t
)
{
duprintf
(
"t->private->number = %u
\n
"
,
t
->
private
->
number
);
...
...
@@ -1174,7 +1172,7 @@ do_replace(void __user *user, unsigned int len)
duprintf
(
"ip_tables: Translated table
\n
"
);
t
=
find_table_lock
(
tmp
.
name
,
&
ret
,
&
ip6t_mutex
);
t
=
ip6t_
find_table_lock
(
tmp
.
name
,
&
ret
,
&
ip6t_mutex
);
if
(
!
t
)
goto
free_newinfo_counters_untrans
;
...
...
@@ -1276,7 +1274,7 @@ do_add_counters(void __user *user, unsigned int len)
goto
free
;
}
t
=
find_table_lock
(
tmp
.
name
,
&
ret
,
&
ip6t_mutex
);
t
=
ip6t_
find_table_lock
(
tmp
.
name
,
&
ret
,
&
ip6t_mutex
);
if
(
!
t
)
goto
free
;
...
...
@@ -1351,7 +1349,7 @@ do_ip6t_get_ctl(struct sock *sk, int cmd, void __user *user, int *len)
break
;
}
name
[
IP6T_TABLE_MAXNAMELEN
-
1
]
=
'\0'
;
t
=
find_table_lock
(
name
,
&
ret
,
&
ip6t_mutex
);
t
=
ip6t_
find_table_lock
(
name
,
&
ret
,
&
ip6t_mutex
);
if
(
t
)
{
struct
ip6t_getinfo
info
;
...
...
@@ -1964,6 +1962,7 @@ static void __exit fini(void)
EXPORT_SYMBOL
(
ip6t_register_table
);
EXPORT_SYMBOL
(
ip6t_unregister_table
);
EXPORT_SYMBOL
(
ip6t_do_table
);
EXPORT_SYMBOL
(
ip6t_find_target_lock
);
EXPORT_SYMBOL
(
ip6t_register_match
);
EXPORT_SYMBOL
(
ip6t_unregister_match
);
EXPORT_SYMBOL
(
ip6t_register_target
);
...
...
net/sunrpc/auth_gss/auth_gss.c
View file @
f3b6be8b
...
...
@@ -493,7 +493,7 @@ gss_pipe_downcall(struct file *filp, const char *src, size_t mlen)
spin_unlock
(
&
gss_auth
->
lock
);
rpc_release_client
(
clnt
);
kfree
(
obj
.
data
);
dprintk
(
"RPC: gss_pipe_downcall returning length %u
\n
"
,
mlen
);
dprintk
(
"RPC: gss_pipe_downcall returning length %
Z
u
\n
"
,
mlen
);
return
mlen
;
err:
if
(
ctx
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment