* [PATCH] ipv4: move proc stuff from net/ipv4/af_inet.c to net/ipv4/proc.c
@ 2002-10-29 13:42 acme
2002-10-29 13:46 ` David S. Miller
0 siblings, 1 reply; 2+ messages in thread
From: acme @ 2002-10-29 13:42 UTC (permalink / raw)
To: davem; +Cc: linux-kernel
[-- Attachment #1: Type: text/plain, Size: 335 bytes --]
David,
Please consider pulling from:
kernel.bkbits.net:/home/acme/net-2.5
This is to just flush my tree, I have confirmed the crash when
using cat /proc/net/llc/core after psnap.o is loaded, will be fixing it,
have not confirmed the crash using cat /proc/net/arp, will try it again
in a different test case tho.
- Arnaldo
[-- Attachment #2: ip.patch --]
[-- Type: application/octet-stream, Size: 7103 bytes --]
You can import this changeset into BK by piping this whole message to:
'| bk receive [path to repository]' or apply the patch as usual.
===================================================================
ChangeSet@1.821, 2002-10-29 10:31:48-03:00, acme@conectiva.com.br
ipv4: move proc stuff from net/ipv4/af_inet.c to net/ipv4/proc.c
Also make compilation of this misc proc stuff not compile/link if
CONFIG_PROC_FS is not set. Now to seq_file this routines.
include/net/ip_fib.h | 1 +
net/ipv4/Makefile | 3 ++-
net/ipv4/af_inet.c | 29 +++++------------------------
net/ipv4/fib_hash.c | 12 ++++++++++++
net/ipv4/proc.c | 32 ++++++++++++++++++++++++++++++++
5 files changed, 52 insertions(+), 25 deletions(-)
diff -Nru a/include/net/ip_fib.h b/include/net/ip_fib.h
--- a/include/net/ip_fib.h Tue Oct 29 10:33:45 2002
+++ b/include/net/ip_fib.h Tue Oct 29 10:33:45 2002
@@ -277,5 +277,6 @@
}
extern int fib_proc_init(void);
+extern void fib_proc_exit(void);
#endif /* _NET_FIB_H */
diff -Nru a/net/ipv4/Makefile b/net/ipv4/Makefile
--- a/net/ipv4/Makefile Tue Oct 29 10:33:45 2002
+++ b/net/ipv4/Makefile Tue Oct 29 10:33:45 2002
@@ -2,13 +2,14 @@
# Makefile for the Linux TCP/IP (INET) layer.
#
-obj-y := utils.o route.o inetpeer.o proc.o protocol.o \
+obj-y := utils.o route.o inetpeer.o protocol.o \
ip_input.o ip_fragment.o ip_forward.o ip_options.o \
ip_output.o ip_sockglue.o \
tcp.o tcp_input.o tcp_output.o tcp_timer.o tcp_ipv4.o tcp_minisocks.o \
tcp_diag.o raw.o udp.o arp.o icmp.o devinet.o af_inet.o igmp.o \
sysctl_net_ipv4.o fib_frontend.o fib_semantics.o fib_hash.o
+obj-$(CONFIG_PROC_FS) += proc.o
obj-$(CONFIG_IP_MULTIPLE_TABLES) += fib_rules.o
obj-$(CONFIG_IP_ROUTE_NAT) += ip_nat_dumb.o
obj-$(CONFIG_IP_MROUTE) += ipmr.o
diff -Nru a/net/ipv4/af_inet.c b/net/ipv4/af_inet.c
--- a/net/ipv4/af_inet.c Tue Oct 29 10:33:45 2002
+++ b/net/ipv4/af_inet.c Tue Oct 29 10:33:45 2002
@@ -1155,12 +1155,9 @@
#ifdef CONFIG_PROC_FS
+extern int ip_misc_proc_init(void);
extern int raw_get_info(char *, char **, off_t, int);
-extern int snmp_get_info(char *, char **, off_t, int);
-extern int netstat_get_info(char *, char **, off_t, int);
-extern int afinet_get_info(char *, char **, off_t, int);
extern int tcp_get_info(char *, char **, off_t, int);
-extern int udp_get_info(char *, char **, off_t, int);
int __init ipv4_proc_init(void)
{
@@ -1168,45 +1165,29 @@
if (!proc_net_create("raw", 0, raw_get_info))
goto out_raw;
- if (!proc_net_create("netstat", 0, netstat_get_info))
- goto out_netstat;
- if (!proc_net_create("snmp", 0, snmp_get_info))
- goto out_snmp;
- if (!proc_net_create("sockstat", 0, afinet_get_info))
- goto out_sockstat;
if (!proc_net_create("tcp", 0, tcp_get_info))
goto out_tcp;
if (udp_proc_init())
goto out_udp;
if (fib_proc_init())
goto out_fib;
+ if (ip_misc_proc_init())
+ goto out_misc;
out:
return rc;
+out_misc:
+ fib_proc_exit();
out_fib:
udp_proc_exit();
out_udp:
proc_net_remove("tcp");
out_tcp:
- proc_net_remove("sockstat");
-out_sockstat:
- proc_net_remove("snmp");
-out_snmp:
- proc_net_remove("netstat");
-out_netstat:
proc_net_remove("raw");
out_raw:
rc = -ENOMEM;
goto out;
}
-int ip_seq_release(struct inode *inode, struct file *file)
-{
- struct seq_file *seq = (struct seq_file *)file->private_data;
-
- kfree(seq->private);
- seq->private = NULL;
- return seq_release(inode, file);
-}
#else /* CONFIG_PROC_FS */
int __init ipv4_proc_init(void)
{
diff -Nru a/net/ipv4/fib_hash.c b/net/ipv4/fib_hash.c
--- a/net/ipv4/fib_hash.c Tue Oct 29 10:33:45 2002
+++ b/net/ipv4/fib_hash.c Tue Oct 29 10:33:45 2002
@@ -1086,8 +1086,20 @@
rc = -ENOMEM;
return rc;
}
+
+void __init fib_proc_exit(void)
+{
+ remove_proc_entry("route", proc_net);
+}
+
#else /* CONFIG_PROC_FS */
+
int __init fib_proc_init(void)
+{
+ return 0;
+}
+
+void __init fib_proc_exit(void)
{
return 0;
}
diff -Nru a/net/ipv4/proc.c b/net/ipv4/proc.c
--- a/net/ipv4/proc.c Tue Oct 29 10:33:45 2002
+++ b/net/ipv4/proc.c Tue Oct 29 10:33:45 2002
@@ -47,6 +47,8 @@
#include <net/tcp.h>
#include <net/udp.h>
#include <linux/skbuff.h>
+#include <linux/proc_fs.h>
+#include <linux/seq_file.h>
#include <net/sock.h>
#include <net/raw.h>
@@ -211,4 +213,34 @@
if (len < 0)
len = 0;
return len;
+}
+
+int __init ip_misc_proc_init(void)
+{
+ int rc = 0;
+
+ if (!proc_net_create("netstat", 0, netstat_get_info))
+ goto out_netstat;
+ if (!proc_net_create("snmp", 0, snmp_get_info))
+ goto out_snmp;
+ if (!proc_net_create("sockstat", 0, afinet_get_info))
+ goto out_sockstat;
+out:
+ return rc;
+out_sockstat:
+ proc_net_remove("snmp");
+out_snmp:
+ proc_net_remove("netstat");
+out_netstat:
+ rc = -ENOMEM;
+ goto out;
+}
+
+int ip_seq_release(struct inode *inode, struct file *file)
+{
+ struct seq_file *seq = (struct seq_file *)file->private_data;
+
+ kfree(seq->private);
+ seq->private = NULL;
+ return seq_release(inode, file);
}
===================================================================
This BitKeeper patch contains the following changesets:
1.821
## Wrapped with gzip_uu ##
begin 664 bkpatch13737
M'XL(`#F.OCT``^U8;7/:.!#^C'Z%KKT/I"U&+[:1X>BD35\NTS;)I--OF6&,
M+0<W8%%;T&:.^^^WDAU>0AP*<Q\##)*UTNK1[K.KA>?X6R'S;B.,)A(]QW^K
M0G<;D<IDI--YZ$1JX@QS$%PJ!8+V2$UD^^VG=B9UBSD>`LE%J*,1GLN\Z#:H
MPY<C^G8JNXW+]Q^_?7YSB5"_CT]&878MOTJ-^WVD53X/QW%Q'.K16&6.SL.L
MF$AM]UPLIRX8(0S>'NUPXOD+ZA.WLXAH3&GH4AD3Y@K?1;>J&"6S[^GQ.,UF
MOUKI=.X[*K^^IX?";$H\PH(%\T7`T3M,'<$H)JQ-29L%F)(NIUU7M`CO$H*-
M58[O6P._]'"+H+?X_SW""8HPX':[>*+F$D]S%>%"SY($)[F:8+!XVXC;83)(
MX<&)8/_5J)GN1*`"/F_&A<*3\$9BP#%-QZ%.5895@O4H+?`D+:)U[9G2U3S9
M!NO=X#0!'2?G9Q]./PXN+L]/!A^^8EAGYA6P+SY3/\W6A?PQ2&!1J357,PVP
M"@=]PF!;T4$7*W^CUIXOA$A(T.L=%DZS:#R+9;LT`H`9.J-U8P>N6!`_<+U%
MQQ>)B!/A<^;&PZ#&L?4*@3@!Y9PPMG`9$=Y.:/?\LH'*$PON^IU@(0.?\:B3
M\(`((OBP!M5#NM8`>4)X]/<!P:$&H[`8;8-RO0#8.4P"EG0D$Y)'U/.\7:#N
MZ5L#QGSJ[V&I+T!8PZ?[L)A'A;L0-/8D'P:"<I8(-]H%:T/;&BB?>SSX?5#+
M8-M&!4B`5S3V/3]@0^Y&)!*[4&VJ6V>5"\>T2?(A#N[.EX>'`MH_%`CQ"7'Y
M@HO`%S:'^IL9E'09>SR#TJ<,^E@&+9/,.6[E/^T',N+%@\PX(+.>L@YX"<E?
M6N89GJLTQB:&S7D&\E>JFV;HJ&?)N!5.NYEX8#S7T+`VGBEQ:8>(A4\%ZU@.
M!OMRD.$6?>)@+0?+3'F/@UO^.("`[SR@WZGY4L/OK5ML7MT^AIW'A:,L!@FM
M,<]4RARZ<$ZM(C6&[A4ZI;1:^F=S\WQ'^&7?VL11F^Q=&?OWZ;MGYD=Q.)>3
MXVRF"R<#^X<.+'XD\0-_7<:A$O`YI9:_G.Q+8"A#F?O$X/HL:B_5.@8O\1^2
M0RGU.JLDFF8:3#8P)RKS:)JM\N@[F!M@;EJ?PQIH.Q3[1H=@F*%&FN#F]NJC
M(]1H7`/O,9S("GMVB0M+[D:ZJ+&9NLOMH+[UH05?8[$9"*MB;8](V+=BW)7*
MMRO&NX*">M3C!Q84[*FB>/PWF2G&ZV)AY9*#@H$(`8R[0K:8&%C^/E13H']0
M(Y?&DI4DT_EM\YE-^,]>V?,/`!*0^%]T9=6:0L7V@-)>N5S/(.!(.677?AO<
M+[VQ!^_W^>F&BFBD9);DQ]=A*'.=P;T5RX=U!9P0X!PD?T("2BS?O7WYSI_X
M_BC?RU_%=7ROD![`=3>`_/N\*L7Q7_;O)JMND!3.Z/66Z`ZAD9TRRC$GEKKF
MRJB86W-S&+J;63EPUA#^JKPI_K@+DT&4RU#+YC/H%SK4$$'D%:X>!M<P(<T2
MM7F-5-)>G:HBFTQ+/:97H\2(ZC6HZ&:%)DP,3>KT5%-[YC[K+F,[C^S`4@R2
MY2YE]JAP'E7SH/_0G#NS5-.J1[./,6CK_=GYE_=?X!QW>'I+OX!#C-MR.99A
M(9N%SF<1C&8*W/K"-F"?<M"2[X7YMOZJ1I>T?`$]V*RY-7YDFM;K:0XQK>4@
M#G5H/7R3Y!)VE#^6,H#?6'\&=6??/G_N+>VU#K4"9_'T5G_.1B,)MIQ-^FX<
/>\/A,$'_`22`$,GW%0``
`
end
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] ipv4: move proc stuff from net/ipv4/af_inet.c to net/ipv4/proc.c
2002-10-29 13:42 [PATCH] ipv4: move proc stuff from net/ipv4/af_inet.c to net/ipv4/proc.c acme
@ 2002-10-29 13:46 ` David S. Miller
0 siblings, 0 replies; 2+ messages in thread
From: David S. Miller @ 2002-10-29 13:46 UTC (permalink / raw)
To: acme; +Cc: linux-kernel
From: acme@conectiva.com.br
Date: Tue, 29 Oct 2002 11:42:07 -0200 (BRDT)
Please consider pulling from:
kernel.bkbits.net:/home/acme/net-2.5
Pulled, thanks.
I just did a push to Linus, so this will go show up in the next round.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2002-10-29 13:49 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-10-29 13:42 [PATCH] ipv4: move proc stuff from net/ipv4/af_inet.c to net/ipv4/proc.c acme
2002-10-29 13:46 ` David S. Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).