Commit Graph

1130 Commits

Author SHA1 Message Date
Poul-Henning Kamp
dcc756789c Don't attempt to build ports with missing dependencies.
Approved by:	re (gjb)
2013-09-17 15:19:26 +00:00
Hiren Panchasara
9a01d0a5b4 We are exceeding default limit (256) of bracket nesting and clang does not like
it. We should probably fix the code but appeasing clang with this fix for now.
gcc does not have such limit.

Reviewed by:	jmg
Approved by:	re (hrs), sbruno (mentor, implicit)
2013-09-12 02:31:32 +00:00
Ian Lepore
dbcdf3225a Fix a compiler warning about signed vs unsigned compare. 2013-09-01 14:06:57 +00:00
Jean-Sébastien Pédron
0adf4921fb drm/radeon: Import the Radeon KMS driver
This driver is based on Linux 3.8 and a previous effort by kan@.

More informations about this project can be found on the FreeBSD wiki:
    https://wiki.freebsd.org/AMD_GPU

The driver is split into:

  sys/dev/drm2:
    The driver sources.

  sys/modules/drm2/radeonkmw:
    The driver main kernel module's Makefile.

  sys/modules/drm2/radeonkmsfw:
    All firmware kernel module Makefiles. There's one directory and one
    Makefile for each firmware.

  sys/contrib/dev/drm2/radeonkmsfw:
    All firmware binary sources.

  tools/tools/drm/radeon
    Tools to update firmwares or regenerate some headers.

Merging the driver to FreeBSD 9.x may be possible but not a priority for
now.

Help from:	kib@, kan@
Tested by:	avg@, kwm@, ray@,
		Alexander Yerenkow <yerenkow@gmail.com>,
		Anders Bolt-Evensen <andersbo87@me.com>,
		Denis Djubajlo <stdedjub@googlemail.com>,
		J.R. Oldroyd <fbsd@opal.com>,
		Mikaël Urankar <mikael.urankar@gmail.com>,
		Pierre-Emmanuel Pédron <pepcitron@gmail.com>,
		Sam Fourman Jr. <sfourman@gmail.com>,
		Wade <wade-is-great@live.com>,
		(probably other I forgot...)
HW donations:	kyzh, Yakaz
2013-08-25 19:37:15 +00:00
Jean-Sébastien Pédron
a435cf5cd5 drm: Update drm_pciids.h based on Linux 3.8
This header can be easily updated using the new "gen-drm_pciids" script,
available in tools/tools/drm. The script uses the Linux' drm_pciids.h
header for new IDs, the FreeBSD's one because we add the name of the
device to each IDs, and the PCI IDs database (misc/pciids port) to fill
this name automatically for new IDS.

To call the script:
  tools/tools/drm/gen-drm_pciids					\
    /path/to/linux/drm_pciids.h						\
    /path/to/freebsd/drm_pciids.h					\
    /path/to/pciids/pci.ids
2013-08-25 12:20:57 +00:00
Bjoern A. Zeeb
89ee862616 Catch up with various changes to if_data and make this compile again
on HEAD.  Seems to be one of the the only tools giving us access to
ifi_baudrate and ifi_baudrate_pf values.

MFC after:	3 days
2013-08-20 14:37:06 +00:00
Hans Petter Selasky
f7b25aedae Fix some signed comparison compile warnings. 2013-08-12 09:15:33 +00:00
Hans Petter Selasky
8030839bd2 Initial commit of my USB test code which can exercise connected USB
devices and the FreeBSD USB stack itself. This program can be used to
test compliance against well established usb.org standards, also
called chapter-9 tests. The host platform can act as either USB device
or USB host depending on the available hardware. The basic USB
communication happens through FreeBSD's own libusb v2, and some
sysctls are also used to invoke specific error conditions. This test
program can be used to verify correct operation of external USB
harddisks under heavy load and various other conditions. The software
is driven via a simple command line interface. Main supported USB host
classes are "USB mass storage" and "USB modems".
2013-08-09 20:08:42 +00:00
David E. O'Brien
5711939b63 * Add random_adaptors.[ch] which is basically a store of random_adaptor's.
random_adaptor is basically an adapter that plugs in to random(4).
  random_adaptor can only be plugged in to random(4) very early in bootup.
  Unplugging random_adaptor from random(4) is not supported, and is probably a
  bad idea anyway, due to potential loss of entropy pools.
  We currently have 3 random_adaptors:
  + yarrow
  + rdrand (ivy.c)
  + nehemeiah

* Remove platform dependent logic from probe.c, and move it into
  corresponding registration routines of each random_adaptor provider.
  probe.c doesn't do anything other than picking a specific random_adaptor
  from a list of registered ones.

* If the kernel doesn't have any random_adaptor adapters present then the
  creation of /dev/random is postponed until next random_adaptor is kldload'ed.

* Fix randomdev_soft.c to refer to its own random_adaptor, instead of a
  system wide one.

Submitted by: arthurmesh@gmail.com, obrien
Obtained from: Juniper Networks
Reviewed by: so (des)
2013-08-09 15:31:50 +00:00
David E. O'Brien
26da3555ff Improve the sysctl symbol extraction from the kernel so that it find more
(all?) sysctl's.  Previously some where missed, depending on how they were
defined.
2013-08-07 20:35:26 +00:00
Andrey V. Elsukov
0689b6d106 Fix formatting warning.
MFC after:	1 week
2013-08-06 10:35:05 +00:00
Navdeep Parhar
3ce4b127dc Teach cxgbetool to display T5 congestion manager context. 2013-08-01 22:48:17 +00:00
David E. O'Brien
0e6a0799a9 Back out r253779 & r253786. 2013-07-31 17:21:18 +00:00
David E. O'Brien
99ff83da74 Decouple yarrow from random(4) device.
* Make Yarrow an optional kernel component -- enabled by "YARROW_RNG" option.
  The files sha2.c, hash.c, randomdev_soft.c and yarrow.c comprise yarrow.

* random(4) device doesn't really depend on rijndael-*.  Yarrow, however, does.

* Add random_adaptors.[ch] which is basically a store of random_adaptor's.
  random_adaptor is basically an adapter that plugs in to random(4).
  random_adaptor can only be plugged in to random(4) very early in bootup.
  Unplugging random_adaptor from random(4) is not supported, and is probably a
  bad idea anyway, due to potential loss of entropy pools.
  We currently have 3 random_adaptors:
  + yarrow
  + rdrand (ivy.c)
  + nehemeiah

* Remove platform dependent logic from probe.c, and move it into
  corresponding registration routines of each random_adaptor provider.
  probe.c doesn't do anything other than picking a specific random_adaptor
  from a list of registered ones.

* If the kernel doesn't have any random_adaptor adapters present then the
  creation of /dev/random is postponed until next random_adaptor is kldload'ed.

* Fix randomdev_soft.c to refer to its own random_adaptor, instead of a
  system wide one.

Submitted by: arthurmesh@gmail.com, obrien
Obtained from: Juniper Networks
Reviewed by: obrien
2013-07-29 20:26:27 +00:00
Andrey V. Elsukov
a87be193b3 Include stdint.h to fix build.
Pointed by:	Olivier Cochard-Labbé
2013-07-29 12:49:32 +00:00
Andriy Gapon
a29cc9a34b Revert r253748,253749
This WIP should not have been committed yet.

Pointyhat to:	avg
2013-07-28 18:44:17 +00:00
Andriy Gapon
c722ec3a51 remove needless inclusion of machine/cpu.h in userland
MFC after:	21 days
2013-07-28 18:35:43 +00:00
Navdeep Parhar
caf20efcde Add support for packet-sniffing tracers to cxgbe(4). This works with
all T4 and T5 based cards and is useful for analyzing TSO, LRO, TOE, and
for general purpose monitoring without tapping any cxgbe or cxl ifnet
directly.

Tracers on the T4/T5 chips provide access to Ethernet frames exactly as
they were received from or transmitted on the wire.  On transmit, a
tracer will capture a frame after TSO segmentation, hw VLAN tag
insertion, hw L3 & L4 checksum insertion, etc.  It will also capture
frames generated by the TCP offload engine (TOE traffic is normally
invisible to the kernel).  On receive, a tracer will capture a frame
before hw VLAN extraction, runt filtering, other badness filtering,
before the steering/drop/L2-rewrite filters or the TOE have had a go at
it, and of course before sw LRO in the driver.

There are 4 tracers on a chip.  A tracer can trace only in one direction
(tx or rx).  For now cxgbetool will set up tracers to capture the first
128B of every transmitted or received frame on a given port.  This is a
small subset of what the hardware can do.  A pseudo ifnet with the same
name as the nexus driver (t4nex0 or t5nex0) will be created for tracing.
The data delivered to this ifnet is an additional copy made inside the
chip.  Normal delivery to cxgbe<n> or cxl<n> will be made as usual.

/* watch cxl0, which is the first port hanging off t5nex0. */
# cxgbetool t5nex0 tracer 0 tx0  (watch what cxl0 is transmitting)
# cxgbetool t5nex0 tracer 1 rx0  (watch what cxl0 is receiving)
# cxgbetool t5nex0 tracer list
# tcpdump -i t5nex0   <== all that cxl0 sees and puts on the wire

If you were doing TSO, a tcpdump on cxl0 may have shown you ~64K
"frames" with no L3/L4 checksum but this will show you the frames that
were actually transmitted.

/* all done */
# cxgbetool t5nex0 tracer 0 disable
# cxgbetool t5nex0 tracer 1 disable
# cxgbetool t5nex0 tracer list
# ifconfig t5nex0 destroy
2013-07-26 22:04:11 +00:00
Andrey Zonov
20dd2f38dc Remove define and documentation for vm_pageout_algorithm missed in r253587 2013-07-26 02:00:06 +00:00
Andriy Gapon
3ab5cdbc13 zfsboottest: remove explicit -Werror
Unfortunately sys/boot is compliled without -Werror at the moment.

MFC after:	7 days
2013-07-24 09:50:44 +00:00
Andrey V. Elsukov
c80211e3cf Prepare network statistics structures for migration to PCPU counters.
Use uint64_t as type for all fields of structures.

Changed structures: ahstat, arpstat, espstat, icmp6_ifstat, icmp6stat,
in6_ifstat, ip6stat, ipcompstat, ipipstat, ipsecstat, mrt6stat, mrtstat,
pfkeystat, pim6stat, pimstat, rip6stat, udpstat.

Discussed with:	arch@
2013-07-09 09:32:06 +00:00
Andriy Gapon
7407491bef zfsboottest.sh: remove checks for things that are not strictly required
MFC after:	10 days
2013-07-09 08:30:31 +00:00
Andriy Gapon
9871c8ab5b zfsboottest: sync with changes in zfs boot code
- spa status can not be called before spa init
- libzfs.h inclusion is now required
- fix alternative code for explicit root dataset lookup

MFC after:	10 days
2013-07-09 08:29:14 +00:00
Navdeep Parhar
7ee2959cb5 Count the number of hits for a filter by default.
MFC after:	3 days
2013-07-01 17:32:07 +00:00
Adrian Chadd
874c906c45 Add include path to the ar9300 HAL. 2013-06-25 17:50:48 +00:00
Eitan Adler
1cbff2a999 Remove CVS from the base system.
Discussed with:	many
Reviewed by:	peter, zi
Approved by:	core
2013-06-15 20:29:07 +00:00
Adrian Chadd
67a6ee573d Link the AR9300 EEPROM dump tool into the build. 2013-06-14 08:12:54 +00:00
Adrian Chadd
4c8f505c3f Begin fleshing out an AR9300 EEPROM dump helper utility. 2013-06-14 08:12:40 +00:00
Adrian Chadd
4cfeefe1c7 Add missing formatting strings.
Thanks to: clang
2013-06-14 08:11:45 +00:00
Ed Maste
371df6c6ad Switch to 2-clause license and standard text
Approved by:	bms@
2013-06-06 21:09:27 +00:00
Luigi Rizzo
b303f675df new features (mostly for testing netmap capabilities)
+ pkt-gen -f rx now remains active even when traffic stops
  Previous behaviour (exit after 1 second of silence) can be
  restored with the -W option

+ the -X option does a hexdump of the content of a packet (both tx and rx).
  This can be useful to check what goes in and out.

+ the -I option instructs the sender to use indirect buffers
  (not really useful other than to test the kernel module in the
  VALE switch)
2013-06-05 17:37:59 +00:00
Adrian Chadd
2cdc5a48f6 Add RX STBC statistics. 2013-06-04 23:52:57 +00:00
Luigi Rizzo
f18be5766f Bring in a number of new features, mostly implemented by Michio Honda:
- the VALE switch now support up to 254 destinations per switch,
  unicast or broadcast (multicast goes to all ports).

- we can attach hw interfaces and the host stack to a VALE switch,
  which means we will be able to use it more or less as a native bridge
  (minor tweaks still necessary).
  A 'vale-ctl' program is supplied in tools/tools/netmap
  to attach/detach ports the switch, and list current configuration.

- the lookup function in the VALE switch can be reassigned to
  something else, similar to the pf hooks. This will enable
  attaching the firewall, or other processing functions (e.g. in-kernel
  openvswitch) directly on the netmap port.

The internal API used by device drivers does not change.

Userspace applications should be recompiled because we
bump NETMAP_API as we now use some fields in the struct nmreq
that were previously ignored -- otherwise, data structures
are the same.

Manpages will be committed separately.
2013-05-30 14:07:14 +00:00
Luigi Rizzo
1cb4c501ae add support for rate-limiting in the sender (-R ...)
Obtained from:	Giuseppe Lettieri
2013-05-30 11:10:42 +00:00
Luigi Rizzo
0dea02f39e add a compile-time option to copy packets instead of doing
the buffer swapping.
2013-05-30 11:09:41 +00:00
Luigi Rizzo
00c2805055 remove use of deprecated ioctl() 2013-05-30 11:08:16 +00:00
Joel Dahl
1d1f5c6b8e mdoc: silence a few mandoc lint warnings. 2013-05-28 09:33:46 +00:00
Adrian Chadd
d2e0ac3c78 Implement beacon event debugging in athalq. 2013-05-22 01:03:41 +00:00
Brooks Davis
6893d87392 Cleanups and markup improvements suggested by trociny and joel. 2013-05-20 20:32:58 +00:00
Joel Dahl
7a019d4487 Minor mdoc improvements. 2013-05-16 20:55:20 +00:00
Brooks Davis
561e967f2f Add a sample script to create filesystem images from an installed tree
created by installworld+distribution with the -DNO_ROOT option.
2013-05-16 14:38:12 +00:00
Adrian Chadd
14a75019c2 Add the AR9300 descriptor decoding code. 2013-05-05 09:38:25 +00:00
Adrian Chadd
443db1d0c5 This is a simple script to output the delta between each TX and TXSTATUS.
Useful for debugging TDMA.
2013-05-05 09:38:02 +00:00
Luigi Rizzo
eb41b16f81 sync with my local copy (this file may go away, eventually) 2013-04-30 13:13:32 +00:00
Nick Hibma
fcb107b9a6 Replace a silly command sequence with a proper if-then-else.
Generate images sparsely. This saves space and time, especially when
generating images inside a VM (PR 173482).
Add a 'true' statement to last_orders to prevent some version of sh from
tripping over an empty function.
2013-04-28 22:12:40 +00:00
Nick Hibma
2b235be6d3 Doing a cpio from /var/empty if dir was not specified or non-existent
copies its mode to the destination. This is not desirable.
Rephrase this code to be more sensible.

PR:		173483
MFC after:	1 week
2013-04-28 21:44:44 +00:00
Eitan Adler
4e3b8d2037 Remove the WITH_IDEA option and build it unconditionally.
The European version of the patent expired in 2011.
The US version of the patent expired in 2012 or prior.

Reviewed by:	des
No objection from:	cperciva, ehaupt
2013-04-26 23:24:41 +00:00
Gabor Kovesdan
84a17a97ce - Correct mispellings of word and
Submitted by:	Christoph Mallon <christoph.mallon@gmx.de> (via private mail)
2013-04-17 11:48:46 +00:00
Sergey Kandaurov
5911f5a7fa Fix build.
- pass a format string to printf
- catch up with constifying uz_name

MFC after:	3 days
2013-04-12 21:29:37 +00:00
Navdeep Parhar
e22981b241 Set and display the IP fragment bit correctly when dealing with
the filter mode.

MFC after:	3 days.
2013-04-11 16:50:58 +00:00