<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/powerpc, branch releng/10.2</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=releng%2F10.2</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=releng%2F10.2'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2015-06-21T06:28:26Z</updated>
<entry>
<title>MFC r282213:</title>
<updated>2015-06-21T06:28:26Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2015-06-21T06:28:26Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=65b53c583d5c05d46b33ccbe2b713498ce2a376c'/>
<id>urn:sha1:65b53c583d5c05d46b33ccbe2b713498ce2a376c</id>
<content type='text'>
Add kern.racct.enable tunable and RACCT_DISABLED config option.
The point of this is to be able to add RACCT (with RACCT_DISABLED)
to GENERIC, to avoid having to rebuild the kernel to use rctl(8).

MFC r282901:

Build GENERIC with RACCT/RCTL support by default.  Note that it still
needs to be enabled by adding "kern.racct.enable=1" to /boot/loader.conf.

Note those two are MFC-ed together, because the latter one changes the
name of RACCT_DISABLED option to RACCT_DEFAULT_TO_DISABLED.  Should have
committed the renaming separately...

Relnotes:	yes
Sponsored by:	The FreeBSD Foundation
</content>
</entry>
<entry>
<title>MFC r276480, r276485, r276498, r277225, r277226, r277227, r277230,</title>
<updated>2015-06-06T09:28:40Z</updated>
<author>
<name>Navdeep Parhar</name>
<email>np@FreeBSD.org</email>
</author>
<published>2015-06-06T09:28:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=92949ecf9d3b74b02e4a17d1238534c535766034'/>
<id>urn:sha1:92949ecf9d3b74b02e4a17d1238534c535766034</id>
<content type='text'>
r277637, and r283149 (by emaste@).

r276485 is the real change here, the rest deal with the fallout of
mp_ring's reliance on 64b atomics.

Use the incorrectly spelled 'eigth' from struct pkthdr in this branch
instead of MFC'ing r261733, which would have renamed the field of a
public structure in a -STABLE branch.
---

r276480:
Temporarily unplug cxgbe(4) from !amd64 builds.

r276485:
cxgbe(4): major tx rework.

a) Front load as much work as possible in if_transmit, before any driver
lock or software queue has to get involved.

b) Replace buf_ring with a brand new mp_ring (multiproducer ring).  This
is specifically for the tx multiqueue model where one of the if_transmit
producer threads becomes the consumer and other producers carry on as
usual.  mp_ring is implemented as standalone code and it should be
possible to use it in any driver with tx multiqueue.  It also has:
- the ability to enqueue/dequeue multiple items.  This might become
  significant if packet batching is ever implemented.
- an abdication mechanism to allow a thread to give up writing tx
  descriptors and have another if_transmit thread take over.  A thread
  that's writing tx descriptors can end up doing so for an unbounded
  time period if a) there are other if_transmit threads continuously
  feeding the sofware queue, and b) the chip keeps up with whatever the
  thread is throwing at it.
- accurate statistics about interesting events even when the stats come
  at the expense of additional branches/conditional code.

The NIC txq lock is uncontested on the fast path at this point.  I've
left it there for synchronization with the control events (interface
up/down, modload/unload).

c) Add support for "type 1" coalescing work request in the normal NIC tx
path.  This work request is optimized for frames with a single item in
the DMA gather list.  These are very common when forwarding packets.
Note that netmap tx in cxgbe already uses these "type 1" work requests.

d) Do not request automatic cidx updates every 32 descriptors.  Instead,
request updates via bits in individual work requests (still every 32
descriptors approximately).  Also, request an automatic final update
when the queue idles after activity.  This means NIC tx reclaim is still
performed lazily but it will catch up quickly as soon as the queue
idles.  This seems to be the best middle ground and I'll probably do
something similar for netmap tx as well.

e) Implement a faster tx path for WRQs (used by TOE tx and control
queues, _not_ by the normal NIC tx).  Allow work requests to be written
directly to the hardware descriptor ring if room is available.  I will
convert t4_tom and iw_cxgbe modules to this faster style gradually.

r276498:
cxgbe(4): remove buf_ring specific restriction on the txq size.

r277225:
Make cxgbe(4) buildable with the gcc in base.

r277226:
Allow cxgbe(4) to be built on i386.  Driver attach will succeed only on
a subset of i386 systems.

r277227:
Plug cxgbe(4) back into !powerpc &amp;&amp; !arm builds, instead of building it
on amd64 only.

r277230:
Build cxgbe(4) on powerpc64 too.

r277637:
Make sure the compiler flag to get cxgbe(4) to compile with gcc is used
only when gcc is being used.  This is what r277225 should have been.
</content>
</entry>
<entry>
<title>MFC 281266:</title>
<updated>2015-06-02T14:54:53Z</updated>
<author>
<name>John Baldwin</name>
<email>jhb@FreeBSD.org</email>
</author>
<published>2015-06-02T14:54:53Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=df0a3be9ebc8ce5854a576df0008416c1af619b1'/>
<id>urn:sha1:df0a3be9ebc8ce5854a576df0008416c1af619b1</id>
<content type='text'>
Move the 32-bit compatible procfs types from freebsd32.h to &lt;sys/procfs.h&gt;
and export them to userland.
- Define __HAVE_REG32 on platforms that define a reg32 structure and check
  for this in &lt;sys/procfs.h&gt; to control when to export prstatus32, etc.
- Add prstatus32_t and prpsinfo32_t typedefs for the 32-bit structures.
  libbfd looks for these types, and having them fixes 'gcore' in gdb of a
  32-bit process on a 64-bit platform.
- Use the structure definitions from &lt;sys/procfs.h&gt; in gcore's elf32 core
  dump code instead of duplicating the definitions.
</content>
</entry>
<entry>
<title>MFC r282120:</title>
<updated>2015-05-05T19:47:17Z</updated>
<author>
<name>Hans Petter Selasky</name>
<email>hselasky@FreeBSD.org</email>
</author>
<published>2015-05-05T19:47:17Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=440008368eed296de8925b38cd19d2f960e76cdf'/>
<id>urn:sha1:440008368eed296de8925b38cd19d2f960e76cdf</id>
<content type='text'>
The add_bounce_page() function can be called when loading physical
pages which pass a NULL virtual address. If the BUS_DMA_KEEP_PG_OFFSET
flag is set, use the physical address to compute the page offset
instead. The physical address should always be valid when adding
bounce pages and should contain the same page offset like the virtual
address.

Submitted by:	Svatopluk Kraus &lt;onwahe@gmail.com&gt;
Reviewed by:	jhb@
</content>
</entry>
<entry>
<title>MFC r274670, r274671, r276168:</title>
<updated>2015-02-14T21:16:19Z</updated>
<author>
<name>Luiz Otavio O Souza</name>
<email>loos@FreeBSD.org</email>
</author>
<published>2015-02-14T21:16:19Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=46fc0bd37383ae033192d9bff66daf2cf75a0f48'/>
<id>urn:sha1:46fc0bd37383ae033192d9bff66daf2cf75a0f48</id>
<content type='text'>
Moves all the duplicate code to a single function.

Verify for invalid modes and unwanted flags before pass the new flags to
driver.

Make gpio_default_map_gpios() static.  No functional changes.

Improves the GPIO API description a little bit.

gpio_pin_max must return the maximum supported pin number and not the total
number of pins on the system.
</content>
</entry>
<entry>
<title>MFC r273799:</title>
<updated>2015-02-14T20:37:33Z</updated>
<author>
<name>Luiz Otavio O Souza</name>
<email>loos@FreeBSD.org</email>
</author>
<published>2015-02-14T20:37:33Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=ce1028c24b1e3414eabe8c6bbb2e44271903e082'/>
<id>urn:sha1:ce1028c24b1e3414eabe8c6bbb2e44271903e082</id>
<content type='text'>
Make the GPIO children attach to the first unit available and not only to
unit 0.

This fix a bug where a GPIO controller could fail to attach its children
(gpioc and gpiobus) if another GPIO driver attach first.
</content>
</entry>
<entry>
<title>MFC r275779, r275963, r276101, r276161, r276297:</title>
<updated>2015-02-12T00:25:33Z</updated>
<author>
<name>Ian Lepore</name>
<email>ian@FreeBSD.org</email>
</author>
<published>2015-02-12T00:25:33Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c181eced071f6968a4d375c7fe5a94cc1fa3e7bd'/>
<id>urn:sha1:c181eced071f6968a4d375c7fe5a94cc1fa3e7bd</id>
<content type='text'>
  Move ofw_cpu.c to sys/dev/ofw so that it can be used by other
  architectures.

  Add driver for CPU frequency/voltage control on the Raspberry Pi.

  On initialization, do not use bcm_mbox_intr() to read the pending messages.
  This fixes the hang that happens on boot while initializing the cpufreq on
  Raspberry Pi.
</content>
</entry>
<entry>
<title>MFC r278001:</title>
<updated>2015-02-07T08:47:15Z</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2015-02-07T08:47:15Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=35dc11bbb5a0b84b0abebb5645bff216e20d51c1'/>
<id>urn:sha1:35dc11bbb5a0b84b0abebb5645bff216e20d51c1</id>
<content type='text'>
Do not qualify the mcontext_t *mcp argument for set_mcontext(9) as const.
</content>
</entry>
<entry>
<title>MFC r266969 and r276717:</title>
<updated>2015-02-05T20:03:02Z</updated>
<author>
<name>Hans Petter Selasky</name>
<email>hselasky@FreeBSD.org</email>
</author>
<published>2015-02-05T20:03:02Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c5ffcba2d99f7aa7cf1e956137a32d562d5c511e'/>
<id>urn:sha1:c5ffcba2d99f7aa7cf1e956137a32d562d5c511e</id>
<content type='text'>
Add 64-bit DMA support in the XHCI controller driver.
- Fix some comments and whitespaces while at it.
- Add support for PAE.
</content>
</entry>
<entry>
<title>MFC r277792:</title>
<updated>2015-02-03T00:29:58Z</updated>
<author>
<name>Nathan Whitehorn</name>
<email>nwhitehorn@FreeBSD.org</email>
</author>
<published>2015-02-03T00:29:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=0fddc405c9d716c09fd7dac91fe00c45e3f064ee'/>
<id>urn:sha1:0fddc405c9d716c09fd7dac91fe00c45e3f064ee</id>
<content type='text'>
Fix bug in mapppings of multiple pages exposed by updates to the VSCSI
support in QEMU. Each page of a many page mapping was getting mapped to
the same physical address, which is not the desired behavior.
</content>
</entry>
</feed>
