Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 8 Aug 2010 19:13:42 +0300
From:      Kostik Belousov <kostikbel@gmail.com>
To:        Attilio Rao <attilio@freebsd.org>
Cc:        svn-src-projects@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r211076 - projects/sv/sys/net
Message-ID:  <20100808161342.GF22295@deviant.kiev.zoral.com.ua>
In-Reply-To: <201008081544.o78FihwX008357@svn.freebsd.org>
References:  <201008081544.o78FihwX008357@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--LOZHMhvLB6lqiwkv
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sun, Aug 08, 2010 at 03:44:43PM +0000, Attilio Rao wrote:
> Author: attilio
> Date: Sun Aug  8 15:44:43 2010
> New Revision: 211076
> URL: http://svn.freebsd.org/changeset/base/211076
>=20
> Log:
>   - Compile netdump.debug.force just when NETDUMP_DEBUG in included
>   - Fix the usage of nd_force_crash which is not necessarilly to have
>     a static storage
>=20
> Modified:
>   projects/sv/sys/net/netdump_client.c
>=20
> Modified: projects/sv/sys/net/netdump_client.c
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D
> --- projects/sv/sys/net/netdump_client.c	Sun Aug  8 15:35:17 2010	(r21107=
5)
> +++ projects/sv/sys/net/netdump_client.c	Sun Aug  8 15:44:43 2010	(r21107=
6)
> @@ -146,7 +146,9 @@ static int	 netdump_send_arp(void);
>  static void	 netdump_trigger(void *arg, int howto);
>  static int	 netdump_udp_output(struct mbuf *m);
> =20
> +#ifdef NETDUMP_DEBUG
>  static int	 sysctl_force_crash(SYSCTL_HANDLER_ARGS);
> +#endif
>  static int	 sysctl_ip(SYSCTL_HANDLER_ARGS);
>  static int	 sysctl_nic(SYSCTL_HANDLER_ARGS);
> =20
> @@ -166,7 +168,6 @@ static int nd_enable =3D 0;  /* if we shou
>  static struct in_addr nd_server =3D {INADDR_ANY}; /* server address */
>  static struct in_addr nd_client =3D {INADDR_ANY}; /* client (our) addres=
s */
>  struct ifnet *nd_nic =3D NULL;
> -static int nd_force_crash=3D0;
>  static int nd_polls=3D10000; /* Times to poll the NIC (0.5ms each poll) =
before
>  			    * assuming packetloss occurred: 5s by default */
>  static int nd_retries=3D10; /* Times to retransmit lost packets */
> @@ -292,16 +293,18 @@ sysctl_nic(SYSCTL_HANDLER_ARGS)
>  	return error;
>  }
> =20
> +#ifdef NETDUMP_DEBUG
>  static int
>  sysctl_force_crash(SYSCTL_HANDLER_ARGS)=20
>  {
> -	int error;
> +	int error, force_crash;
> =20
> -	error =3D sysctl_handle_int(oidp, &nd_force_crash, nd_force_crash, req);
> +	force_crash =3D 0;
> +	error =3D sysctl_handle_int(oidp, &force_crash, force_crash, req);
>  	if (error || req->newptr =3D=3D NULL)
>  		return error;
> =20
> -	switch (nd_force_crash) {
> +	switch (force_crash) {
>  		case 1:
>  			printf("\nLivelocking system...\n");
>  			for (;;);
> @@ -329,6 +332,7 @@ sysctl_force_crash(SYSCTL_HANDLER_ARGS)=20
>  	}
>  	return 0;
>  }
> +#endif
> =20
>  SYSCTL_NODE(_net, OID_AUTO, dump, CTLFLAG_RW, 0, "netdump");
>  SYSCTL_PROC(_net_dump, OID_AUTO, server, CTLTYPE_STRING|CTLFLAG_RW, &nd_=
server,
> @@ -337,8 +341,6 @@ SYSCTL_PROC(_net_dump, OID_AUTO, client,
>  	0, sysctl_ip, "A", "dump client");
>  SYSCTL_PROC(_net_dump, OID_AUTO, nic, CTLTYPE_STRING|CTLFLAG_RW, &nd_nic,
>  	IFNAMSIZ, sysctl_nic, "A", "NIC to dump on");
> -SYSCTL_PROC(_net_dump, OID_AUTO, crash, CTLTYPE_INT|CTLFLAG_RW,
> -	0, sizeof(nd_force_crash), sysctl_force_crash, "I", "force crashing");
>  SYSCTL_INT(_net_dump, OID_AUTO, polls, CTLTYPE_INT|CTLFLAG_RW, &nd_polls=
, 0,
>  	"times to poll NIC per retry");
>  SYSCTL_INT(_net_dump, OID_AUTO, retries, CTLTYPE_INT|CTLFLAG_RW, &nd_ret=
ries, 0,
> @@ -346,6 +348,10 @@ SYSCTL_INT(_net_dump, OID_AUTO, retries,
>  SYSCTL_INT(_net_dump, OID_AUTO, enable, CTLTYPE_INT|CTLFLAG_RW, &nd_enab=
le,
>  	0, "enable network dump");
>  TUNABLE_INT("net.dump.enable", &nd_enable);
> +#ifdef NETDUMP_DEBUG
> +SYSCTL_PROC(_net_dump, OID_AUTO, crash, CTLTYPE_INT|CTLFLAG_RW, 0, sizeo=
f(int),
> +    sysctl_force_crash, "I", "force crashing");
> +#endif

We have debug.kdb.panic and friends. Might be, it makes sense to move
net.dump.crash there ? debug. looks as a more logical choice for most
sysctls too.

--LOZHMhvLB6lqiwkv
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (FreeBSD)

iEYEARECAAYFAkxe17YACgkQC3+MBN1Mb4j08ACgr9G78ZnXJGBXIEhVgGSS8vS4
J/wAnii3ugkydHeJn5el85/vVOIlQ/XR
=Lgyc
-----END PGP SIGNATURE-----

--LOZHMhvLB6lqiwkv--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100808161342.GF22295>