Displaying 1 50 of 297,860 commits (0.023s)

FreeBSD — head/sys/vm vm_fault.c

Use vm_page_replace_checked() instead of vm_page_rename() for implementing
optimized copy-on-write faults.  This has two advantages: (1) one less radix
tree operation is performed and (2) vm_page_replace_checked() cannot fail,
making the code simpler.

Submitted by:        Ryan Libby
Reviewed by:        kib
Sponsored by:        EMC / Isilon Storage Division
Differential Revision:        https://reviews.freebsd.org/D4478
Delta File
+10 -17 head/sys/vm/vm_fault.c
+10 -17 1 file

FreeBSD — head/sys/dev/hyperv/vmbus hv_hv.c hyperv_reg.h

hyperv: Move CPUID related bits to hyperv_reg.h and give them clean name

MFC after:        1 week
Sponsored by:        Microsoft OSTC
Differential Revision:        https://reviews.freebsd.org/D6565

FreeBSD — head/lib/libmd md5.h

libmd: Work around C++'s inability to understand C

Reported by:        antoine@ (x265)
Delta File
+8 -0 head/lib/libmd/md5.h
+8 -0 1 file

FreeBSD — head/sys/modules/gpio/gpiobus Makefile, head/sys/modules/gpio/gpioiic Makefile

Fix parallel builds by specifying *all* required headers in SRCS.

Submitted by:        manu
Pointy hat:        ian

FreeBSD — head/contrib/gcc c-decl.c, head/gnu/usr.bin/cc/cc_tools freebsd-native.h

gcc42: Fix minor C99 parse bug

DR #289[0] came down and gcc4.2.1 was on the wrong side of history.
Partially revert GCC r42574 (just remove the error) to rectify the parse
bug to match Clang and other compliant C99 compilers.

An example declaration gcc tripped on before this fix:

  void foobar(int [static 1]);

An example declaration gcc did not trip on before this fix:

  void foobar(int name[static 1]);

Bump __FreeBSD_cc_version.

[0]: http://www.open-std.org/JTC1/SC22/WG14/www/docs/dr_289.htm

Reported by:        allanjude
Sponsored by:        EMC / Isilon Storage Division

FreeBSD — head/sys/conf files NOTES

Add rtwn(4) and rtwnfw(4).
Delta File
+29 -0 head/sys/conf/files
+4 -0 head/sys/conf/NOTES
+33 -0 2 files

FreeBSD — vendor-sys/skein 1.3

Tag skein 1.3
Delta File
+0 -0 vendor-sys/skein/1.3/
+0 -0 1 file

FreeBSD — head/sys/modules/gpio Makefile

[gpio] add gpiospi to the gpio module.
Delta File
+1 -1 head/sys/modules/gpio/Makefile
+1 -1 1 file

FreeBSD — head/sys/sys spigenio.h

[spigen] add the userland ioctl API for spigen.
Delta File
+52 -0 head/sys/sys/spigenio.h
+52 -0 1 file

FreeBSD — head/sys/conf options

[gpiospi] add debug option.

This was missing from the previous commit that introduced gpiospi.
It's required for it to build.

Pointy-hat-to: me
Delta File
+3 -0 head/sys/conf/options
+3 -0 1 file

FreeBSD — head/sys/modules Makefile

Only build gpio modules on armv6, until it's known that they can be built
succesfully on other arches.
Delta File
+5 -1 head/sys/modules/Makefile
+5 -1 1 file

FreeBSD — head/release Makefile.mirrors

Make Makefile.mirrors -ALPHA${N}-aware.

Approved by:        re (implicit)
Sponsored by:        The FreeBSD Foundation
Delta File
+2 -2 head/release/Makefile.mirrors
+2 -2 1 file

FreeBSD — head/sys/conf newvers.sh

Update head from 11.0-CURRENT to 11.0-ALPHA1, marking the official
start of the code slush.

Approved by:        re (implicit)
Sponsored by:        The FreeBSD Foundation
Delta File
+1 -1 head/sys/conf/newvers.sh
+1 -1 1 file

FreeBSD — head/sys/gnu/dts/arm imx6qdl-wandboard.dtsi

Revert changes for local testing, inadvertantly commited in r300811.

FreeBSD — head/sys/conf files, head/sys/dev/gpio gpiopps.c

Add a PPS driver that takes the timing pulse from a gpio pin.  Currently
supports only ofw/fdt systems.  Some day, hinted attachment for non-fdt
systems should be possible too.

FreeBSD — head/sys/boot/efi/libefi efinet.c, head/sys/boot/efi/loader main.c

Fix unit number of EFI net interfaces and ignore psuedo network interfaces.

In r277943, the efinet_match() routine was changed to use an off by one
when matching network interfaces.  The effect was that using "net1"
actually used the device attached to "net0".

Digging into the hardware that needed this workaround more, I found that
UEFI was creating two simple network protocol devices for each physical
NIC.  The first device was a "raw" Ethernet device and the second device
was a "IP" device that used the IP protocol on top of the underlying
"raw" device.  The PXE code in the firmware used the "IP" device to pull
across the loader.efi, so currdev was set to "net1" when booting from the
physical interface "net0".  (The loaded image's device handle referenced
the "IP" device that "net1" claimed.)

However, the IP device isn't suitable for doing raw packet I/O (and the
current code to open devices exclusively actually turns the "IP" devices
off on these systems).

To fix, change the efinet driver to only attach to "raw" devices.  This
is determined by fetching the DEVICE_PATH for each handle which supports
the simple network protocol and examining the last node in the path.  If
the last node in the path is a MAC address, the device is assumed to be
a "raw" device and is added as a 'netX' device.  If the last node is not
a MAC address, the device is ignored.

    [23 lines not shown]

FreeBSD — head/sys/dev/filemon filemon_wrapper.c

filemon exec: Use imgp->execpath rather than vn_fullpath(9).

This will be more accurate as the actual name is provided if ran
from an absolute path in do_execve().

MFC after:        2 weeks
Sponsored by:        EMC / Isilon Storage Division

FreeBSD — head/tools/bsdbox Makefile.depend

DIRDEPS_BUILD: Add a Makefile.depend

Sponsored by:        EMC / Isilon Storage Division
Delta File
+56 -0 head/tools/bsdbox/Makefile.depend
+56 -0 1 file

FreeBSD — head/rescue/rescue Makefile.depend, head/share/mk bsd.crunchgen.mk

DIRDEPS_BUILD: Fix and hookup rescue/rescue to the build.

Sponsored by:        EMC / Isilon Storage Division

FreeBSD — head Makefile.inc1, head/share/mk bsd.crunchgen.mk

WITH_AUTO_OBJ: Fix crunchgen builds.

Passing MAKEOBJDIRPREFIX to the main prog build (rescue) would confuse
WITH_AUTO_OBJ and cause it to create a recursed object directory that
then broke the actual prog build.  This is normally not a problem since
we do not call 'make -f prog.mk obj' before building anything in it.

Crunchgen(1) also assumes that if -o is not passed then if an object
directory does not already exist then it should build in the source
directories.  The normal buildworld process will have already ran 'make
obj' in each of the component directories so this is not a problem.
With WITH_AUTO_OBJ though this is not the case.  So we must tell
crunchgen(1) that MK_AUTO_OBJ=yes will create the directory and to not
require it be present before generating its Makefile.

Sponsored by:        EMC / Isilon Storage Division

FreeBSD — head/share/mk meta.autodep.mk

Don't strip paths away from META_XTRAS.

This would otherwise disallow using meta files from a foreign build that
spread them around in directories outside our own .OBJDIR.

Sponsored by:        EMC / Isilon Storage Division
Delta File
+1 -1 head/share/mk/meta.autodep.mk
+1 -1 1 file

FreeBSD — head/share/mk bsd.crunchgen.mk

Avoid redundant 'make objs' tree-walk when building the main prog.

The main prog has a dependency on the submake targets to ensure they are
built.  From bsd.crunchgen.mk though we already have our own dependency
on 'make objs' so there is no need for another one.  Crunchgen(1) is
doing the right thing here so it is not modified.

This also prevents the CC fix tainting the submake environment with
META_MODE and causing rebuilds.  The CC passed is is only intended for
the main prog itself.

Sponsored by:        EMC / Isilon Storage Division
Delta File
+3 -0 head/share/mk/bsd.crunchgen.mk
+3 -0 1 file

FreeBSD — head/share/mk bsd.crunchgen.mk

Pass CC/CXX/CFLAGS/CXXFLAGS/LDFLAGS to the main crunch exec build.

This fixes --sysroot and other CFLAGS/LDFLAGS not being respected
in the crunchgen build since it is not including bsd.sys.mk and
other files.  For example, this fixes building rescue itself without
--sysroot and other CFLAGS.

Sponsored by:        EMC / Isilon Storage Division
Delta File
+4 -1 head/share/mk/bsd.crunchgen.mk
+4 -1 1 file

FreeBSD — head/share/mk bsd.crunchgen.mk

WITH_META_MODE: Only expect a .meta file for the main target.

Since multiple files are generated from one build command, only
the first to run will actually generate a .meta file.  This fix
prevents 'required but missing' rebuilds on each target.

Sponsored by:        EMC / Isilon Storage Division
Delta File
+2 -1 head/share/mk/bsd.crunchgen.mk
+2 -1 1 file

FreeBSD — head/share/mk bsd.crunchgen.mk local.meta.sys.mk

DIRDEPS_BUILD: Don't show finished stats, which confuses crunchgen(1).

It would show 'make error:' lines for each auto object directory created.

Sponsored by:        EMC / Isilon Storage Division

FreeBSD — head/sys/cddl/boot/zfs lz4.c

Use netinet/in.h to avoid include/arpa dependency for DIRDEPS_BUILD.

Sponsored by:        EMC / Isilon Storage Division
Delta File
+1 -1 head/sys/cddl/boot/zfs/lz4.c
+1 -1 1 file

FreeBSD — head/sys/conf kmod.mk kern.post.mk, head/sys/modules Makefile

Add some missing .PHONY.

These are relevant for WITH_META_MODE to ensure they are
always reran and don't generate a .meta file.

Sponsored by:        EMC / Isilon Storage Division

FreeBSD — head/targets/pseudo/kernel Makefile

DIRDEPS_BUILD: Build the kernel in the same place as buildkernel would.

Sponsored by:        EMC / Isilon Storage Division

FreeBSD — head/usr.sbin/extattr Makefile.depend

DIRDEPS_BUILD: Update dependencies.

Sponsored by:        EMC / Isilon Storage Division

FreeBSD — head/share/mk src.sys.env.mk

Fix MAKESYSPATH not being sent to sub-makes after r266566.

Because bmake defaults to .../share/mk now, this code was not doing anything
to help objdir builds (such as the rescue build).  Export the same default.

Sponsored by:        EMC / Isilon Storage Division
Delta File
+3 -0 head/share/mk/src.sys.env.mk
+3 -0 1 file

FreeBSD — head Makefile.inc1, head/sys/conf kern.pre.mk

WITH_META_MODE: Move the kernel support to kern.pre.mk.

This allows using META_MODE directly from the kernel build directory.
This also allows removing a hack from the DIRDEPS_BUILD kernel target.

Sponsored by:        EMC / Isilon Storage Division

FreeBSD — head Makefile.inc1

Remove leftover _crunchide from r283108
Delta File
+0 -1 head/Makefile.inc1
+0 -1 1 file

FreeBSD — head/sys/kern kern_exec.c

exec: Provide execpath in imgp for the process_exec hook.

This was previously set after the hook and only if auxargs were present.
Now always provide it if possible.

MFC after:        2 weeks
Reviewed by:        kib
Sponsored by:        EMC / Isilon Storage Division
Differential Revision:        https://reviews.freebsd.org/D6546
Delta File
+16 -8 head/sys/kern/kern_exec.c
+16 -8 1 file

FreeBSD — head/sys/kern kern_exec.c, head/sys/sys imgact.h

exec: Add credential change information into imgp for process_exec hook.

This allows an EVENTHANDLER(process_exec) hook to see if the new image
will cause credentials to change whether due to setgid/setuid or because
of POSIX saved-id semantics.

This adds 3 new fields into image_params:
  struct ucred *newcred                Non-null if the credentials will change.
  bool credential_setid                True if the new image is setuid or setgid.

This will pre-determine the new credentials before invoking the image
activators, where the process_exec hook is called.  The new credentials
will be installed into the process in the same place as before, after
image activators are done handling the image.

MFC after:        2 weeks
Reviewed by:        kib
Sponsored by:        EMC / Isilon Storage Division
Differential Revision:        https://reviews.freebsd.org/D6544
Delta File
+102 -86 head/sys/kern/kern_exec.c
+4 -0 head/sys/sys/imgact.h
+106 -86 2 files

FreeBSD — head/sys/boot/efi/libefi efinet.c

Use a unique error message if we fail to find the simple network protocol.

While here, fix the various net driver callbacks to return early instead
of crashing if this fails.  (The 'init' callback from the netif interface
doesn't return an error if the protocol lookup fails.)

Sponsored by:        Cisco Systems
Delta File
+8 -1 head/sys/boot/efi/libefi/efinet.c
+8 -1 1 file

FreeBSD — head/sys/boot/efi/libefi Makefile

Apply the printf %S band-aid for efinet.c to fix the arm64 build.
Delta File
+7 -0 head/sys/boot/efi/libefi/Makefile
+7 -0 1 file

FreeBSD — head/sys/boot/efi/loader Makefile

Remove second copy of the -Wno-format band-aid for printf %S.
Delta File
+0 -4 head/sys/boot/efi/loader/Makefile
+0 -4 1 file

FreeBSD — head/sys/dev/rtwn if_rtwnreg.h, head/sys/dev/urtwn if_urtwnvar.h

rtwn, urtwn: drop unused structures.

urtwn(4) uses another implementation of command queue; rtwn(4) don't need
it at all.

FreeBSD — head/sys/dev/gpio ofw_gpiobus.c gpiobusvar.h

Add a convenience function to get a gpio pin's capabilties.

FreeBSD — head/sys/arm/freescale/imx imx_gpio.c

Add support for triggering interrupts on both rising and falling edges.
Also, EOI a gpio interrupt in the post_ithread routine before re-enabling.
Delta File
+67 -39 head/sys/arm/freescale/imx/imx_gpio.c
+67 -39 1 file

FreeBSD — head/sys/boot/efi/libefi efipart.c

Use routines from the recently added devpath.c.

These efipart layer did several devpath related operations inline.  This
just switches it over to using shared code for working with device paths.

Sponsored by:        Cisco Systems
Delta File
+4 -19 head/sys/boot/efi/libefi/efipart.c
+4 -19 1 file

FreeBSD — head/sys/conf files

Include the new AQM files when compiling a kernel with options DUMMYNET.

Reported by:        Nikolay Denev <nike_d AT cytexbg DOT com>
MFC after:        2 weeks (with r300779)
Delta File
+4 -0 head/sys/conf/files
+4 -0 1 file

FreeBSD — head/sys/netpfil/ipfw dn_aqm.h

Correct a typo in a comment.

MFC after:        2 weeks (with r300779)
Delta File
+1 -1 head/sys/netpfil/ipfw/dn_aqm.h
+1 -1 1 file

FreeBSD — head/sys/boot/efi/libefi efinet.c

Output the device path description for EFI network devices.

Lookup the DEVICE_PATH for each EFI network device handle and output the
string description using printf with '%S'.  To honor the pager, the newline
at the end of each line is still output with pager_output().

Sponsored by:        Cisco Systems
Delta File
+8 -3 head/sys/boot/efi/libefi/efinet.c
+8 -3 1 file

FreeBSD — head/sys/netpfil/ipfw dn_aqm.h

Modify BOUND_VAR() macro to wrap all of its arguments in () and tweak
its expression to work on powerpc and sparc64 (gcc compatibility).

Correct a typo in a nearby comment.

MFC after:        2 weeks (with r300779)
Delta File
+2 -2 head/sys/netpfil/ipfw/dn_aqm.h
+2 -2 1 file

FreeBSD — head/sys/boot/efi/include efilib.h, head/sys/boot/efi/libefi devpath.c Makefile

Add some routines for working with EFI DEVICE_PATH objects.

- efi_lookup_devpath() uses the DEVICE_PATH_PROTOCOL to obtain the
  DEVICE_PATH for a given EFI handle.
- efi_lookup_image_devpath() uses the LOADED_IMAGE_DEVICE_PATH_PROTOCOL
  to lookup the device path of the device used to load a loaded image.
- efi_devpath_name() uses the DEVICE_PATH_TO_TEXT_PROTOCOL to generate
  a string description of a device path.  The returned string is a CHAR16
  string that can be printed via the recently added '%S' format in
  libstand's printf().  Note that the returned string is returned in
  allocated storage that should be freed by calling
- efi_devpath_last_node() walks a DEVICE_PATH returning a pointer to the
  final node in the path (not counting the terminating node).  That is,
  it returns a pointer to the last meaninful node in a DEVICE_PATH.
- efi_devpath_trim() generates a new DEVICE_PATH from an existing
  DEVICE_PATH.  The new DEVICE_PATH does not include the last
  non-terminating node in the original path.  If the original DEVICE_PATH
  only contains the terminating node, this function returns NULL.
  The caller is responsible for freeing the returned DEVICE_PATH via
- efi_devpath_handle() attempts to find a handle that corresponds to a
  given device path.  However, if nodes at the end of the device path do
  not have valid handles associated with them, this function will return
  a handle that matches a node earlier in the device path.  In particular,

    [4 lines not shown]

FreeBSD — head/sbin/ipfw dummynet.c ipfw2.h, head/sys/modules/dummynet Makefile

Import Dummynet AQM version 0.2.1 (CoDel, FQ-CoDel, PIE and FQ-PIE).

Centre for Advanced Internet Architectures

Implementing AQM in FreeBSD

* Overview <http://caia.swin.edu.au/freebsd/aqm/index.html>

* Articles, Papers and Presentations

* Patches and Tools <http://caia.swin.edu.au/freebsd/aqm/downloads.html>


Recent years have seen a resurgence of interest in better managing
the depth of bottleneck queues in routers, switches and other places
that get congested. Solutions include transport protocol enhancements
at the end-hosts (such as delay-based or hybrid congestion control
schemes) and active queue management (AQM) schemes applied within
bottleneck queues.

The notion of AQM has been around since at least the late 1990s
(e.g. RFC 2309). In recent years the proliferation of oversized
buffers in all sorts of network devices (aka bufferbloat) has

    [38 lines not shown]

FreeBSD — stable/10/sys/fs/nfsserver nfs_nfsdserv.c

MFC: r299514
Fix use-after-free in NFS4 lock test service.

Trivial use-after-free where stp was freed too soon in the non-error path.
To fix, simply move its release to the end of the routine.

FreeBSD — head/sys/arm/allwinner axp209.c axp209reg.h, head/sys/boot/fdt/dts/arm xpowers-axp209.dtsi cubieboard2.dts

Add support for interrupts, sensors and GPIO for AXP209 PMIC.
Pressing the PEK (power enable key) will shutdown the board.
Some events are reported to devd via system "PMU" and subsystem
"Battery", "AC" and "USB" such as connected/disconnected.
Some sensors values (power source voltage/current) are reported via
sysctl (dev.axp209_pmu.X.)
It also expose a gpioc node usable in kernel and userland. Only 3 of
the 4 GPIO are exposed (The GPIO3 is different and mostly unused on
boards). Most popular boards uses GPIO1 as a sense pin for OTG power.
Add a dtsi file that adds gpio-controller capability to the device as
upstream doesn't defined it and include it in our custom DTS.

Reviewed by:        jmcneill
Approved by:        cognet (mentor)
Differential Revision:        https://reviews.freebsd.org/D6135