| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ld: locore.o: non-pic code with imm relocation against dynamic
symbol `__gp'
With binutils 2.15, ld(1) defines the implicit/automatic symbol __gp
as a dynamic symbol and thus will now complain when used in a non-PIC
fashion (the immediate relocation used to set the GP register). Resolve
this by defining __gp in the linker script. Make sure __gp is aligned
on a 16-byte boundary.
Note: the 0x200000 magic offset is due to having a 22-bit GP-relative
relocation. The GOT will be accessed with negative offsets from GP.
Notes:
svn path=/head/; revision=130829
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Version 3.5 brings:
- Atomic commits of ruleset changes (reduce the chance of ending up in an
inconsistent state).
- A 30% reduction in the size of state table entries.
- Source-tracking (limit number of clients and states per client).
- Sticky-address (the flexibility of round-robin with the benefits of
source-hash).
- Significant improvements to interface handling.
- and many more ...
Notes:
svn path=/head/; revision=130613
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
your (network) modules as well as any userland that might make sense of
sizeof(struct ifnet).
This does not change the queueing yet. These changes will follow in a
seperate commit. Same with the driver changes, which need case by case
evaluation.
__FreeBSD_version bump will follow.
Tested-by: (i386)LINT
Notes:
svn path=/head/; revision=130416
|
|
|
|
|
|
|
|
|
|
|
| |
conform to the rfc2734 and rfc3146 standard for IP over firewire and
should eventually supercede the fwe driver. Right now the broadcast
channel number is hardwired and we don't support MCAP for multicast
channel allocation - more infrastructure is required in the firewire
code itself to fix these problems.
Notes:
svn path=/head/; revision=130407
|
|
|
|
|
|
|
|
| |
own machine-dependent file. This makes alpha consistent with amd64, ia64,
and powerpc.
Notes:
svn path=/head/; revision=130361
|
|
|
|
|
|
|
|
| |
We inherited this from the sparc32 port of BSD4.4-Lite1. We have neither
a sparc32 port nor a SunOS4.x compatibility desire these days.
Notes:
svn path=/head/; revision=130344
|
|
|
|
| |
Notes:
svn path=/head/; revision=130296
|
|
|
|
|
|
|
| |
apply to sparc64.
Notes:
svn path=/head/; revision=130294
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
all of the interface between the driver and the bus. This will enable
us to stop special casing eisa bus attachments in modules and treat them
like we treat all other busses.
In the longer run, we need to eliminate much (all?) of these interfaces
and switch to using the standard bus_alloc_resource(), but that's not
done right now.
# I've not updated the modules to include eisa, etc, just yet
Tested on: Compaq Proliant 3000/333 purchased for eisa work
Notes:
svn path=/head/; revision=130274
|
|
|
|
|
|
|
|
|
| |
historical leftovers.
Approved by: alc
Notes:
svn path=/head/; revision=130201
|
|
|
|
|
|
|
|
| |
Kern_kse has already been committed.
This separates out the KSE threading ABI from generic thread support.
Notes:
svn path=/head/; revision=130199
|
|
|
|
|
|
|
| |
module-friendly midi subsystem to be merged soon.
Notes:
svn path=/head/; revision=129925
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
mbuma is an Mbuf & Cluster allocator built on top of a number of
extensions to the UMA framework, all included herein.
Extensions to UMA worth noting:
- Better layering between slab <-> zone caches; introduce
Keg structure which splits off slab cache away from the
zone structure and allows multiple zones to be stacked
on top of a single Keg (single type of slab cache);
perhaps we should look into defining a subset API on
top of the Keg for special use by malloc(9),
for example.
- UMA_ZONE_REFCNT zones can now be added, and reference
counters automagically allocated for them within the end
of the associated slab structures. uma_find_refcnt()
does a kextract to fetch the slab struct reference from
the underlying page, and lookup the corresponding refcnt.
mbuma things worth noting:
- integrates mbuf & cluster allocations with extended UMA
and provides caches for commonly-allocated items; defines
several zones (two primary, one secondary) and two kegs.
- change up certain code paths that always used to do:
m_get() + m_clget() to instead just use m_getcl() and
try to take advantage of the newly defined secondary
Packet zone.
- netstat(1) and systat(1) quickly hacked up to do basic
stat reporting but additional stats work needs to be
done once some other details within UMA have been taken
care of and it becomes clearer to how stats will work
within the modified framework.
From the user perspective, one implication is that the
NMBCLUSTERS compile-time option is no longer used. The
maximum number of clusters is still capped off according
to maxusers, but it can be made unlimited by setting
the kern.ipc.nmbclusters boot-time tunable to zero.
Work should be done to write an appropriate sysctl
handler allowing dynamic tuning of kern.ipc.nmbclusters
at runtime.
Additional things worth noting/known issues (READ):
- One report of 'ips' (ServeRAID) driver acting really
slow in conjunction with mbuma. Need more data.
Latest report is that ips is equally sucking with
and without mbuma.
- Giant leak in NFS code sometimes occurs, can't
reproduce but currently analyzing; brueffer is
able to reproduce but THIS IS NOT an mbuma-specific
problem and currently occurs even WITHOUT mbuma.
- Issues in network locking: there is at least one
code path in the rip code where one or more locks
are acquired and we end up in m_prepend() with
M_WAITOK, which causes WITNESS to whine from within
UMA. Current temporary solution: force all UMA
allocations to be M_NOWAIT from within UMA for now
to avoid deadlocks unless WITNESS is defined and we
can determine with certainty that we're not holding
any locks when we're M_WAITOK.
- I've seen at least one weird socketbuffer empty-but-
mbuf-still-attached panic. I don't believe this
to be related to mbuma but please keep your eyes
open, turn on debugging, and capture crash dumps.
This change removes more code than it adds.
A paper is available detailing the change and considering
various performance issues, it was presented at BSDCan2004:
http://www.unixdaemons.com/~bmilekic/netbuf_bmilekic.pdf
Please read the paper for Future Work and implementation
details, as well as credits.
Testing and Debugging:
rwatson,
brueffer,
Ketrien I. Saihr-Kesenchedra,
...
Reviewed by: Lots of people (for different parts)
Notes:
svn path=/head/; revision=129906
|
|
|
|
|
|
|
| |
of these are the start and end of the .ctors section.
Notes:
svn path=/head/; revision=129824
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This driver has
been developed for use with FreeBSD, version 4.8 and later.
Submitted by: Hema Joyce
Reviewed by: Prafulla Deuskar
Approved by: Prafulla Deuskar
MFC after: 1 week
Notes:
svn path=/head/; revision=129794
|
|
|
|
|
|
|
|
|
|
| |
places. This should have been committed last night with the rest of
my changes, but wasn't.
Pointy hat to: imp
Notes:
svn path=/head/; revision=129752
|
|
|
|
| |
Notes:
svn path=/head/; revision=129751
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixed profiling of trap, syscall and interrupt handlers and some
ordinary functions, essentially by backing out half of rev.1.106 of
i386/exception.s. The handlers must be between certain labels for
the purposes of profiling, and this was broken by scattering them in
separately compiled .s files, especially for ordinary functions that
ended up between the labels. Merge the files by #including them as
before, except with different pathnames and better comments and
organization. Changes to the scattered files are minimal -- just
move the labels to the file that does the #includes.
This also partly fixes profiling of IPIs -- all IPI handlers are now
correctly classified as interrupt handlers, but many are still missing
mcount calls.
vm86bios.s is included as before, but it is now between the labels for
interrupt handlers again, which seems to be wrong since half of it is
for a non-interrupt handler.
Notes:
svn path=/head/; revision=129742
|
|
|
|
|
|
|
|
|
|
| |
the modules.
Also generate usbdevs.h automatically now, but a non-kernel file is
stopping that at the moment.
Notes:
svn path=/head/; revision=129740
|
|
|
|
|
|
|
|
|
| |
rather than after.
bde inspired words: disorder
Notes:
svn path=/head/; revision=129739
|
|
|
|
|
|
|
|
|
|
|
| |
converts miidevs to a .h file, so rename to reflect that.
The usb and pccard versions have also been renamed and will be hooked
into the build system shortly (I've made the conversion in my p4
tree).
Notes:
svn path=/head/; revision=129738
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ordinary functions, essentially by backing out half of rev.1.115 of
amd64/exception.S. The handlers must be between certain labels for
the purposes of profiling, and this was broken by scattering them in
separately compiled .S files, especially for ordinary functions that
ended up between the labels. Merge the files by #including them as
before, except with different pathnames and better comments and
organization. Changes to the scattered files are minimal -- just
move the labels to the file that does the #includes.
This also partly fixes profiling of IPIs -- all IPI handlers are now
correctly classified as interrupt handlers, but many are still missing
mcount calls.
Notes:
svn path=/head/; revision=129653
|
|
|
|
|
|
|
|
|
| |
Fixed apparently-intentional disorder of the crypto files. Lists
of files should be sorted first on the pathname, not on the option
name or subsystem.
Notes:
svn path=/head/; revision=129646
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Kernel profiling for amd64's (normal and high resolution) should now
compile and work as (un)well as on i386's. It works better than user
profiling because:
- it uses _cyg_profile_func_*() instead of .mcount(), so it doesn't suffer
from gcc misspelling .mcount as mcount.
- it doesn't neglect saving %rax in .mcount().
The SMP case hasn't been tested. The high resolution subcase of this uses
the i8254, and as on i386's, the locking for this is deficient and the
i8254 is too inefficient. The acpi timer is also too inefficient.
Notes:
svn path=/head/; revision=129627
|
|
|
|
|
|
|
|
|
|
|
| |
- Connect geom_stripe and geom_nop modules to the build.
- Connect STRIPE and NOP classes to the LINT build.
- Disconnect gconcat(8) from the build.
Supported by: Wheel - Open Technologies - http://www.wheel.pl
Notes:
svn path=/head/; revision=129477
|
|
|
|
| |
Notes:
svn path=/head/; revision=129383
|
|
|
|
| |
Notes:
svn path=/head/; revision=129382
|
|
|
|
| |
Notes:
svn path=/head/; revision=129325
|
|
|
|
|
|
|
|
| |
the likelyhood of one ever being made is nil.
o While here, de-support sio(4).
Notes:
svn path=/head/; revision=129320
|
|
|
|
|
|
|
|
|
|
|
| |
repocopied. Soon there will be additional bus attachments and
specialization for isa, acpi and pccard (and maybe pc98's cbus).
This was approved by nate, joerg and myself. bde dissented on the new
location, but appeared to be OK after some discussion.
Notes:
svn path=/head/; revision=129318
|
|
|
|
| |
Notes:
svn path=/head/; revision=129284
|
|
|
|
|
|
|
|
|
|
| |
yet, but building kld's is OK now and they can be loaded by kldload(2).
(but the machine will likely crash soon afterwards, a "minor" problem :-)
Brought to you by: my injured knee (from moving)
Notes:
svn path=/head/; revision=129283
|
|
|
|
| |
Notes:
svn path=/head/; revision=129255
|
|
|
|
| |
Notes:
svn path=/head/; revision=129251
|
|
|
|
| |
Notes:
svn path=/head/; revision=129219
|
|
|
|
| |
Notes:
svn path=/head/; revision=129199
|
|
|
|
| |
Notes:
svn path=/head/; revision=129178
|
|
|
|
|
|
|
|
|
| |
an option. Note that this option doesn't follow the normal USB_ or
Uxxx_ convention. That's because it is this way in the upstream
provider and I didn't want to change that.
Notes:
svn path=/head/; revision=129167
|
|
|
|
|
|
|
|
|
|
| |
bridge in Intel ICH-series chipsets.
The original implementation was by W. Daryl Hawkins of Texas A&M, but I
have made substantial modifications.
Notes:
svn path=/head/; revision=129124
|
|
|
|
| |
Notes:
svn path=/head/; revision=129075
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"options OFW_NEWPCI").
This is a bit overdue, the new sparc64 OFW PCI code which is
meant to replace the old one is in place for 10 months and
enabled by default in GENERIC for 8 months. FreeBSD 5.2 and
5.2.1 also shipped with the new code enabled by default.
- Some minor clean-up, e.g. remove functions that encapsulated
the #ifdefs for OFW_NEWPCI, remove unused resp. no longer
required includes, etc.
Approved by: tmm, no objections on freebsd-sparc64
Notes:
svn path=/head/; revision=129051
|
|
|
|
| |
Notes:
svn path=/head/; revision=129020
|
|
|
|
| |
Notes:
svn path=/head/; revision=129010
|
|
|
|
| |
Notes:
svn path=/head/; revision=128969
|
|
|
|
|
|
|
|
|
|
| |
2. Note that ct device uses ctau name as driver name (due to name conflict
with ct driver) and also mark it as a driver inside the CVS tree.
MFC after: 10 days
Notes:
svn path=/head/; revision=128960
|
|
|
|
|
|
|
| |
MFC after: 10 days
Notes:
svn path=/head/; revision=128956
|
|
|
|
| |
Notes:
svn path=/head/; revision=128955
|
|
|
|
| |
Notes:
svn path=/head/; revision=128953
|
|
|
|
|
|
|
| |
of them in rev.1.358.
Notes:
svn path=/head/; revision=128952
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
register controlled the trigger mode and polarity of EISA interrupts.
However, it appears that most (all?) PCI systems use the ELCR to manage
the trigger mode and polarity of ISA interrupts as well since ISA IRQs used
to route PCI interrupts need to be level triggered with active low
polarity. We check to see if the ELCR exists by sanity checking the value
we get back ensuring that IRQS 0 (8254), 1 (atkbd), 2 (the link from the
slave PIC), and 8 (RTC) are all clear indicating edge trigger and active
high polarity.
This mini-driver will be used by the atpic driver to manage the trigger and
polarity of ISA IRQs. Also, the mptable parsing code will use this mini
driver rather than examining the ELCR directly.
Notes:
svn path=/head/; revision=128928
|