Displaying 1 50 of 32,580 commits (0.057s)

DragonFlyBSD — share/installer cmdnames.conf, usr.sbin/installer/dfuibe_installer fn_install.c

installer: Remove some more initrd creation code.

After my revert, this original mkinitrd code (for encrypted setup
originally) came back. Since we can now rely on the ISO having an
initrd to be installed already, we can remove this too.

DragonFlyBSD — share/installer cmdnames.conf, usr.sbin/installer/dfuibe_installer fn_install.c

installer: Remove some more initrd creation code.

After my revert, this original mkinitrd code (for encrypted setup
originally) came back. Since we can now rely on the ISO having an
initrd to be installed already, we can remove this too.

DragonFlyBSD — nrelease Makefile

nrelease: Solve the initial initrd creation better.

Hard links in cd9660, while not taking up more space in the ISO or on
the CD, all have distinct inode numbers, which causes them to be treated
like individual files when copying them somewhere. This caused the initrd
to overflow when we built it from the installer after booting from the
ISO.

This commit puts initrd creation into the nrelease process instead, making
use of mkinitrd(8)'s -c option which allows us to override the contents
directory to the ${ISOROOT}'s /usr/share/initrd.

Reported-by:   opvalues
Dragonfly-bug: <https://bugs.dragonflybsd.org/issues/2798>
Delta File
+6 -0 nrelease/Makefile
+6 -0 1 file

DragonFlyBSD — nrelease Makefile

nrelease: Solve the initial initrd creation better.

Hard links in cd9660, while not taking up more space in the ISO or on
the CD, all have distinct inode numbers, which causes them to be treated
like individual files when copying them somewhere. This caused the initrd
to overflow when we built it from the installer after booting from the
ISO.

This commit puts initrd creation into the nrelease process instead, making
use of mkinitrd(8)'s -c option which allows us to override the contents
directory to the ${ISOROOT}'s /usr/share/initrd.

Reported-by:   opvalues
Dragonfly-bug: <https://bugs.dragonflybsd.org/issues/2798>
Delta File
+6 -0 nrelease/Makefile
+6 -0 1 file

DragonFlyBSD — sbin/mkinitrd mkinitrd.8 mkinitrd.sh

mkinitrd(8): Add a -c option to override the contents directory.

DragonFlyBSD — sbin/mkinitrd mkinitrd.8 mkinitrd.sh

mkinitrd(8): Add a -c option to override the contents directory.

DragonFlyBSD — usr.sbin/installer/dfuibe_installer fn_install.c

Revert "installer: Create an initial initrd unconditionally."

This reverts commit 0c69777ed12f9dff4a80f46f9ef730837791cf33.

Due to shortcomings of the CD9660 filesystems, hardlinks end up
having different inode numbers on it, which leads to them being
treated like separate files when copying etc.

As a result, the initrd put together by mkinitrd from a CD9660
would end up being around 230MB large where it actually has to
be below 15MB.

We will solve this in nrelease instead, putting together the
initrd from the building machine.

DragonFlyBSD — usr.sbin/installer/dfuibe_installer fn_install.c

Revert "installer: Create an initial initrd unconditionally."

This reverts commit 0c69777ed12f9dff4a80f46f9ef730837791cf33.

Due to shortcomings of the CD9660 filesystems, hardlinks end up
having different inode numbers on it, which leads to them being
treated like separate files when copying etc.

As a result, the initrd put together by mkinitrd from a CD9660
would end up being around 230MB large where it actually has to
be below 15MB.

We will solve this in nrelease instead, putting together the
initrd from the building machine.

DragonFlyBSD — nrelease/root/etc fstab

nrelease: Remove an unneeded comma.
Delta File
+1 -1 nrelease/root/etc/fstab
+1 -1 1 file

DragonFlyBSD — nrelease/root/etc fstab

nrelease: Remove an unneeded comma.
Delta File
+1 -1 nrelease/root/etc/fstab
+1 -1 1 file

DragonFlyBSD — sys/vfs/hammer2 hammer2_io.c

hammer2 - Fix a few assertion panics and other bugs

* hammer2_io_getblk() was referencing a dio potentially after disposing
  of it.

* Remove the DIO_GOOD patch I previously committed, replacing it with
  a different (better) fix for the DIO_GOOD/DIO_INPROG race.

  The new fix is to run the iocb chains on IO completion before marking
  any of the iocbs done, using a simple depth-first recursion.  INPROG
  is cleared on the last iocb chain so all IOCB_DONE's occur after it
  has been cleared.

* iocb->flags must be modified with atomic ops now.
Delta File
+62 -40 sys/vfs/hammer2/hammer2_io.c
+62 -40 1 file

DragonFlyBSD — lib/libdmsg msg.c dmsg.h, sys/dev/disk/xdisk xdisk.c

dmsg - Stabilization work

* Add a refs field to dmsg_state and kdmsg_state for retention and
  disposal.

* Separate out the tracking of state->subq and the state RB trees.

* Greatly simplify the iocom shutdown code and functions related
  to handling communications failures.  When iterating states for
  shutdown, which requires simulating a received failure message,
  we can now simply iterate via state->subq.

* Greatly simplify how the simulated failures are generated and
  handled (See dmsg_msg_simulate_failure()).  This is probably the
  most complex part of the library.

* Fix a memory leak in kern_dmsg.c.

* Replace xdisk's per-softc token with a lockmgr lock.  Atomicy
  has to be guaranteed across blocking conditions in certain cases
  and it was easier to simply use a lock for everything.

  Cleanup the locking.

* Ripout the shutdown check in the I/O path, which can deadlock

    [9 lines not shown]
Delta File
+261 -115 sys/kern/kern_dmsg.c
+167 -97 sys/dev/disk/xdisk/xdisk.c
+72 -63 lib/libdmsg/msg.c
+7 -2 sys/sys/dmsg.h
+2 -1 lib/libdmsg/dmsg.h
+2 -0 sys/kern/subr_diskgpt.c
+7 -1 4 files not shown
+518 -279 10 files

DragonFlyBSD — sbin/dmesg dmesg.c

dmesg - Fix <> console parsing for first line

* If the first string in the buffer is a console string, the normal dmesg
  was not filtering it out due to the initial state of (newl).
Delta File
+1 -1 sbin/dmesg/dmesg.c
+1 -1 1 file

DragonFlyBSD — sbin/dmesg dmesg.c, sys/kern subr_prf.c

kernel - Refactor the kernel message buffer code (2)

* Fix an edge case, the sysctl was not working properly when the msgbuf
  was completely empty.  Generate a single newline output.

* Also if dmesg gets a msgbuf size of 0, allocate at least 1 byte to
  avoid a malloc failure.
Delta File
+15 -0 sys/kern/subr_prf.c
+3 -0 sbin/dmesg/dmesg.c
+18 -0 2 files

DragonFlyBSD — sbin/dmesg dmesg.c, sys/kern subr_prf.c subr_log.c

kernel - Refactor the kernel message buffer code

* Add a separate tracking index for /dev/klog (syslog) so it does not eat
  the base index for the in-memory buffer.

* Change the way the FIFO indexes work.  The indexes are no longer stored
  as modulo size values.  Instead they are simply adjusted without a modulo,
  making calculations easier.

* When the FIFO is full we now add around ~1KB of slop to reduce instances
  where SMP collisions implode the buffer.  This also required adjusting
  the kern.msgbuf sysctl to avoid dumping the 'slop' area (it used to just
  dump the entire buffer).

* Adjust dmesg to operate more consistently, and to modulo the indices when
  making calculations.

* The dmesg -a option now dumps the <num> prefix for syslog / console output
  messages.  Before it tried to strip them out, which created problems in
  distinguishing kprintf()d output from syslog output.

* Adjust the console tty support thread (which copies the dmesg buffer to the
  console) as well as /dev/klog to use the new index methodology.

* It is now possible for the indexes to wrap the buffer multiple times

    [3 lines not shown]

DragonFlyBSD — sbin/hammer cmd_show.c

    sbin/hammer: Don't show irrelevant "BM" and "d" after root split
    
    - Make hammer show command suppress irrelevant outputs
      "BM NODE ..." and "d tids ..." after splitting the root node.
    
    - When splitting the root node HAMMER uses a copy of predefined special
      node element that has static member values (regardless of other nodes
      within the btree). After the split, this predefined special element
      will be elms[0] of the (new)root node that has a pointer to the old
      root node as its current child.
    
    - However this elms[0] always has 0 for internal.mirror_tid and 1 for
      base.delete_tid (till it's updated) which results hammer show command
      showing unnecessary "BM" and "d". This commit suppress "BM" that
      doesn't actually indicate invalid mirror tid, and suppress "d" that
      doesn't indicate actual delete as following diff of two results shows.
    
    22c22
    <                d tids 0000000000000001:0000000000000001 suboff=8000000020800000 
mirror 0000000000000000
    ---
    >                  tids 0000000000000001:0000000000000001 suboff=8000000020800000 
mirror 0000000000000000
    46c46
    < BM   NODE 8000000020800000 cnt=43 p=8000000020801000 type=L depth=1 mirror 

    [4 lines not shown]
Delta File
+35 -9 sbin/hammer/cmd_show.c
+35 -9 1 file

DragonFlyBSD — sbin/hammer cmd_show.c

sbin/hammer - Change verbose level for showing data records.

- Also fix missing braces.

Suggested-by: tkusumi
Delta File
+7 -1 sbin/hammer/cmd_show.c
+7 -1 1 file

DragonFlyBSD — sbin/hammer cmd_show.c

sbin/hammer - Hex data dump for misc & data records

- Under request of very verbose output, provide an hex
  dump for data, db and ext records.
- This is very useful for debugging.
Delta File
+8 -0 sbin/hammer/cmd_show.c
+8 -0 1 file

DragonFlyBSD — sbin/hammer cmd_show.c

sbin/hammer - Properly indent config text on 'show' output
Delta File
+14 -2 sbin/hammer/cmd_show.c
+14 -2 1 file

DragonFlyBSD — sys/netgraph7 ng_gif.c, sys/netgraph7/ether ng_ether.c

ifnet: Make rest of ifnet accessing MPSAFE

DragonFlyBSD — etc Makefile, libexec/dma Makefile.etc Makefile

dma(8): install default conf files with installworld

Previously dma configure files were only installed with the
"make distribution" command.  Additionally, the user was expected to
modify them as opposed to copies of them.  This is probably why there
were part of distribution, in order to avoid overwriting the dma.conf
and auth.conf.

The negative side to this approach is that updated *.conf sample files
would never be installed.  Since the dma.conf is actually completely
commented out, and since it doesn't fail in the absence of dma.conf,
these files aren't actually needed.

This commit installs /etc/dma/dma.conf.sample and /etc/dma/auth.conf.sample
files during installworld instead.  Future updates to the *.conf.sample
files will overwrite them, but obviously /etc/dma/*.conf will not be
touched. Some of the sendfile conf files are provided as .sample, so the
concept is not new for DragonFly.

DragonFlyBSD — sys/dev/acpica acpi_cpu_pstate.c

acpi/pstate: Ignore inconsistent PSS table

Some BIOSes create different PSS tables; just trust the one from the
BSP and move on.

Tested-by: Markus Pfeiffer
Delta File
+6 -0 sys/dev/acpica/acpi_cpu_pstate.c
+6 -0 1 file

DragonFlyBSD — libexec/dma virtusertable

dma(8): remove unused virtusetable

This was intended to be template file for the VIRTUAL option in dma,
but it appears this option was never implemented, nor was this file
ever installed.  Remove it.
Delta File
+0 -6 libexec/dma/virtusertable
+0 -6 1 file

DragonFlyBSD — libexec/dma README.DRAGONFLY mail.c

dma(8): Sync with upstream (22 SEP 2014)

There is only one substantial change: improving mail input format error
message.  The remain changes are email address, copyright years, etc.

While here, document which files have local modifications by adding a
README.DRAGONFLY file

DragonFlyBSD — sbin/dmesg dmesg.c dmesg.8

dmesg - Add -n dumpnr option

* Add the -n option to specify a kernel core dump number, similar to
  how kgdb works, as a convenience so you don't have to write out the
  long -M and -N options.
Delta File
+7 -1 sbin/dmesg/dmesg.c
+3 -0 sbin/dmesg/dmesg.8
+10 -1 2 files

DragonFlyBSD — sys/vfs/hammer2 hammer2_io.c

hammer2 - Fix DIO_INPROG race.

* It is possible when a chained DIO_INPROG is present for the DIO to become
  GOOD and for the dio->refs ref to be release, but not yet have finished
  its INPROG processing due to the chaining.

  In this situation, a temporary user of the DIO will get/put it and hit
  an important sanity assertion in putblk.

* Fix by disallowing the DIO_GOOD shortcut in hammer2_io_getblk() if the
  DIO is still DIO_INPROG.
Delta File
+11 -1 sys/vfs/hammer2/hammer2_io.c
+11 -1 1 file

DragonFlyBSD — sys/dev/disk/xdisk xdisk.c

xdisk - Flesh out support

* Add libdevstat support so 'xa' devices can report meaningful
  data in systat -vm.

* Add sysctls to track active requests.
Delta File
+45 -7 sys/dev/disk/xdisk/xdisk.c
+45 -7 1 file

DragonFlyBSD — sys/kern kern_dmsg.c subr_diskiocom.c, sys/sys dmsg.h

kernel - work on dmsg disk exports

* Refactor and clean up the kdmsg thread cleanup code.

* Add a workaround for a possible tx/rx race which can occur due to the
  transmit side not retiring the kdmsg until after writing it.  This can
  potentially block and allow a received response to be processed before the
  related transmitted kdmsg is cleaned up.

* Add sysctls to track operations in progress.

* Code documentation.
Delta File
+137 -98 sys/kern/kern_dmsg.c
+13 -4 sys/kern/subr_diskiocom.c
+3 -1 sys/sys/dmsg.h
+153 -103 3 files

DragonFlyBSD — lib/libdevstat devstat.c

libdevstat - add "xa"

* Add a match line for "xa" (xdisk) devices.
Delta File
+1 -0 lib/libdevstat/devstat.c
+1 -0 1 file

DragonFlyBSD — lib/libdmsg msg.c

libdmsg - Fix incomplete write bug

* Fix a bug where a partial non-blocking write of encrypted data does not
  properly set the WREQ flag if the related dmsg has been disposed of.
  This could cause random stalls of the link.

* Fix an errno-handling bug.

* Cleanup and debugging.
Delta File
+118 -12 lib/libdmsg/msg.c
+118 -12 1 file

DragonFlyBSD — sys/dev/drm/i915 i915_gem.c

Revert "drm/i915: Sync i915_gem_pwrite_ioctl() with Linux 3.11"

This reverts commit 005b6ef6b6adc0554079d13443c56f48766e8afc.

It breaks Ironlake.
Delta File
+64 -48 sys/dev/drm/i915/i915_gem.c
+64 -48 1 file

DragonFlyBSD — contrib/libedit README.DRAGONFLY, contrib/libedit/src eln.c el.c

libedit: Add bapt patches to improve unicode

On Jan 9, bapt synced FreeBSD-current with the latest libedit from NetBSD.
After that, he added local patches to fix line reading in a unicode
environment.  Specifically it allowed sh(1) to work in UTF-8 environment.
I appreciate that bapt took the time to identify those patches for the
benefit of DragonFly.  Thanks!

DragonFlyBSD — sys/conf files, sys/dev/drm/radeon radeon_atpx_handler.c Makefile

kernel/radeon: Remove an unused GPLv2 only file.

Its contents are not used by our current radeon code (the functions
end up being defined as empty inlines in radeon_drv.c) and seems to
be the only file in Linux' radeon driver that is not MIT licensed.

So remove it.

In-discussion-with: ftigeot

DragonFlyBSD — sys/dev/drm/i915 i915_gem.c i915_trace.h

drm/i915: Sync i915_gem_pwrite_ioctl() with Linux 3.11

DragonFlyBSD — sys/dev/drm/i915 i915_gem.c i915_drv.c, sys/dev/drm/include/drm drmP.h

drm/i915: i915_gem_pager_fault() is i915_gem_fault()

DragonFlyBSD — sys/dev/drm/i915 i915_drv.h, sys/dev/drm/include/linux io-mapping.h

drm: Implement linux/io-mapping.h

DragonFlyBSD — sys/sys signalvar.h systm.h

kernel: Mark sigexit() and cpu_halt() as not returning.
Delta File
+1 -1 sys/sys/signalvar.h
+1 -1 sys/sys/systm.h
+2 -2 2 files

DragonFlyBSD — sbin/hammer cmd_show.c, sbin/newfs_hammer newfs_hammer.c

    sbin/hammer: Don't show FLAG_BADMIRRORTID for root node in certain corner case 
situation
    
    - Make hammer show command stop showwing an error flag regarding
      mirror tid that isn't actually an error.
    
    - newfs_hammer initializes the root node's mirror_tid with 0 along
      with its first two elements, but this mirror_tid is not updated
      till the third element is allocated (by creating a file, etc).
      Following result shows this situation.
    
    - In this situation the root node's node->mirror_tid (==0) being
      smaller than elm->base.create_tid or elm->base.delete_tid is not
      an error. This only happens on the root node because all the other
      nodes get updated when they split from existing ones.
    
         NODE 8000000020800000 cnt=02 p=0000000000000000 type=L depth=0 mirror 
0000000000000000 fill=z8:65=1% {
    B-----M        ELM  0 R lo=00000001 obj=0000000000000001 rt=01 key=0000000000000000 
ot=01
                     tids 0000000100000001:0000000000000000
                     <snip>
    B-----M        ELM  1 R lo=00000002 obj=0000000000000001 rt=15 key=0000000000000000 
ot=00
                     tids 0000000100000001:0000000000000000

    [2 lines not shown]

DragonFlyBSD — sys/netinet6 pim6_var.h ip6_mroute.h

kernel/netinet6: Remove some bogus checks for KERNEL (use just _KERNEL).

DragonFlyBSD — sys/bus/cam/scsi scsi_all.c

kernel/scsi: Fix sense information printing in bootverbose.
Delta File
+1 -1 sys/bus/cam/scsi/scsi_all.c
+1 -1 1 file

DragonFlyBSD — sys/bus/cam/scsi scsi_all.c

kernel/scsi: Fix sense information printing in bootverbose.
Delta File
+1 -1 sys/bus/cam/scsi/scsi_all.c
+1 -1 1 file

DragonFlyBSD — sbin/hammer2 main.c

hammer2 - Add extra debugging

* Enable DMsgDebugOpt if -d is specified twice.
Delta File
+2 -0 sbin/hammer2/main.c
+2 -0 1 file

DragonFlyBSD — lib/libdmsg msg.c

libdmsg - Fix memory leak

* Fix a memory leak in the message relay code.  When relaying a message
  we just transfer the aux_data pointer to the relay message.  The
  allocation of the relay message was also allocate aux_data space which
  was getting thrown away and not freed.
Delta File
+22 -6 lib/libdmsg/msg.c
+22 -6 1 file

DragonFlyBSD — sys/kern kern_dmsg.c subr_diskiocom.c, sys/sys dmsg.h

hammer2 / kern_dmsg - Fix bugs

* Fix header size limt check.

* Do not free the message data out from under a running I/O.
  Introduce an API for detaching aux_data from a msg.

* Increase DMSG_AUX_MAX to 1MB to ensure that xdisk (remote disks)
  work with any filesystem.

  Theoretically we can break up READ and WRITE messages into pieces
  in order to allow DMSG_AUX_MAX to be made smaller (which is easier
  to manage in-kernel), but for now the implementation just uses a
  single message transaction.

* Adjust some comments.

DragonFlyBSD — lib/libdmsg msg.c crypto.c

libdmsg - Fix buffer indexing bug in crypted path

* Fix a buffering index bug in the crypted path which causes a buffer
  overrun and/or implodes the connection on a protocol error.
Delta File
+14 -5 lib/libdmsg/msg.c
+7 -2 lib/libdmsg/crypto.c
+21 -7 2 files

DragonFlyBSD — . Makefile_upgrade.inc, sys/kern kern_synch.c

kernel: Remove unused xwait headers.

xsleep/xwakeup were added to DragonFly in 2003 to replace asleep/awakeup
from FreeBSD 4.x. tsleep & wakeup sleep on untyped identifiers; the sleep
routines do not store through the identifiers and treat them as opaque.
xsleep/xwakeup in contrast slept on explicit sleep structures,
'struct xwait'.

xsleep / xwakeup were never used; they were born #if-0ed out and were
removed by 2004. This commit removes a legacy declaration and associated
header.

Submitted-by:  vsrinivas
Dragonfly-bug: <https://bugs.dragonflybsd.org/issues/2786>

DragonFlyBSD — sys/kern kern_synch.c, sys/sys proc.h

kernel: Remove unused hogticks global from kern_synch.c.

hogticks was a global definition used in kern_synch.c:should_yield().
A thread that had remained running for more than hogticks would
return true for should_yield(). DragonFly has not used this global
for a long time.

Submitted-by:  vsrinivas
Dragonfly-bug: <https://bugs.dragonflybsd.org/issues/2787>
Delta File
+0 -4 sys/kern/kern_synch.c
+0 -1 sys/sys/proc.h
+0 -5 2 files

DragonFlyBSD — sys/dev/drm/i915 i915_gem.c i915_trace.h

drm/i915: Sync i915_gem.c with Linux 3.11

* Make the GEM code more similar to Linux

* Replace i915_gem_shmem_pread() by the OpenBSD implementation
  (i915_gem.c revision 1.85)

* The rest of the changed code is based on Linux 3.11

DragonFlyBSD — sys/dev/drm/include/asm uaccess.h

drm: Add asm/uaccess.h functions

* __copy_to_user() and __copy_from_user(), obtained from OpenBSD

* __copy_to_user_inatomic() and __copy_from_user_inatomic_nocache(),
  obtained from FreeBSD
Delta File
+36 -0 sys/dev/drm/include/asm/uaccess.h
+36 -0 1 file

DragonFlyBSD — sys/dev/drm/include/drm drm_memory.h drmP.h

drm: Import drm_memory.h from Linux 3.11