| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It seems that this issue only become obvious when compiled with -O2
on sparc64.
Since each struct iconv_converter_class has been initialized by
DEFINE_CLASS macro, not all members of struct iconv_converter_class
has been allocated on memory and cc_link member has not been
initialized, while iconv_register_converter() wanted to access it
with TAILQ.
Now we modify KICONV_CONVERTER macro and fix this bug.
Problem reported on: freebsd-sparc64
Pointed out by: yongari
Discussed with: yongari
Tested by: yongari
MFC after: 3 days
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
instead. Detailed changelist:
o Add flags field to struct pollrec, to indicate that
are particular entry is being worked on.
o Define a macro PR_VALID() to check that a pollrec
is valid and pollable.
o Mark ISRs as mpsafe.
o ether_poll()
- Acquire poll_mtx while traversing pollrec array.
- Skip pollrecs, that are being worked on.
- Conditionally acquire Giant when entering handler.
o netisr_pollmore()
- Conditionally assert Giant.
- Acquire poll_mtx while working with statistics.
o netisr_poll()
- Conditionally assert Giant.
- Acquire poll_mtx while working with statistics
and traversing pollrec array.
o ether_poll_register(), ether_poll_deregister()
- Conditionally assert Giant.
- Acquire poll_mtx while working with pollrec array.
o poll_idle()
- Remove all strange manipulations with Giant.
In collaboration with: ru, pjd
In collaboration with: Oleg Bulyzhin <oleg rinet.ru>
In collaboration with: dima <_pppp mail.ru>
|
|
|
|
|
|
|
|
|
|
|
|
| |
waiting for geom events to happen:
Instead of maintaining a count of outstanding events, simply look if
the queue is empty. Make sure to not remove events from the queue
until they are executed in order to not open a new race.
Much work by: pjd
Tested by: kris
MT6: yes, should be.
|
|
|
|
|
|
|
|
|
| |
eliminate TLB invalidations when permissions are relaxed, such as when a
read-only mapping is changed to a read/write mapping. Additionally,
eliminate TLB invalidations when bits that are ignored by the hardware,
such as PG_W ("wired mapping"), are changed.
Reviewed by: tegge
|
|
|
|
|
|
|
|
|
|
|
|
| |
before prefixes.
Use cases:
printf("%05d", -42); --> "00-42" (should be "-0042")
printf("%#05x", 12); --> "000xc" (should be "0x00c")
Submitted by: Oliver Fromme
PR: kern/85520
MFC After: 1 week
|
|
|
|
|
| |
Submitted by: Ted Unangst
MFC after: 3 days
|
|
|
|
|
|
| |
Submitted by: Ted Unangst
Reviewed by: rwatson
MFC after: 3 days
|
|
|
|
|
|
|
|
| |
before trying to use it.
This fix allows to 'kldunload if_bge' without panicing.
Reviewed by: bz
MFC after: 3 days
|
|
|
|
| |
Reviewed by: jhb
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
o s/vhpt_base/pmap_vhpt_base/g
o s/vhpt_bucket/pmap_vhpt_bucket/g
o Declare the above in <machine/pmap.h>
o Move the vm.stats.vhpt.* sysctls to machdep.vhpt.*
o Create a tunable machdep.vhpt.log2size, with corresponding sysctl.
The tunable allows the user to specify the VHPT size from the loader.
o Don't keep track of the number of PTEs in the VHPT. Calculate the
population when necessary by iterating the buckets and summing up
the length of the buckets.
o Don't perform the tpa instruction with a bucket lock held. The
instruction can (theoretically) fault and locking is not needed.
|
|
|
|
|
|
| |
return the correct bar size if we encountered a 64-bit BAR that had
its resources already assigned. If the resources weren't yet
assigned, we'd bogusly assume it was a 32-bit bar and return 1.
|
|
|
|
| |
Another pointyhat to: ssouhlal
|
|
|
|
|
|
|
|
|
|
| |
is never 0, so one cannot test for a NULL pointer after a physical
address is translated into a virtual pointer with said macro. Instead,
keep the physical address around and test it against 0. Note that
this obviously implies that a PTE can never be allocated at physical
address 0. This isn't exactly guaranteed, but hasn't been a problem
so far. We test the physical address against 0 for as long as the ia64
port exists...
|
|
|
|
| |
whether the mapping should permit execute access.
|
| |
|
|
|
|
|
|
|
|
| |
remaining % arguments because the varargs are now out of sync and
there is a risk that we might for instance dereference an integer
in a %s argument.
Sponsored by: Napatech.com
|
|
|
|
| |
Pointyhat to: ssouhlal
|
|
|
|
|
|
|
|
| |
lock when a module is unloaded similar to the recent change made to
MTX_SYSINIT().
Suggested by: pjd
MFC after: 3 days
|
|
|
|
|
|
|
|
|
|
|
| |
link proctree and allproc to Giant since that order is already implicitly
enforced.
- Use a goto to handle the case where we want to enforce a reversal before
calling isitmydescendant() in witness_checkorder() so that the logic is
easier to follow and so that it is easier to add more forced-reversal
cases in the future.
MFC after: 3 days
|
|
|
|
|
|
|
| |
mutex.
- Don't panic if a spin lock is held too long inside _mtx_lock_spin() if
panicstr is set (meaning that we are already in a panic). Just keep
spinning forever instead.
|
|
|
|
|
|
|
| |
locks.
Requested by: jeff
MFC after: 3 days
|
|
|
|
| |
important information from being rewritten.
|
|
|
|
|
|
| |
manual page.
Reviewed by: jhb, pjd
|
|
|
|
|
|
|
| |
instead of trying to do them all at once. This should fix the level sorting
problems from the previous revision.
Testing help: ume
|
|
|
|
|
|
|
| |
we do not hold.
Glanced at by: phk
MFC after: 3 days
|
|
|
|
|
|
| |
is locked.
MFC after: 3 days
|
|
|
|
|
|
|
| |
locked, so lock it.
Glanced at by: phk
MFC after: 3 days
|
|
|
|
|
|
| |
Glanced at by: phk
Tested by: pjd
MFC after: 3 days
|
|
|
|
|
|
|
|
| |
and unbusied in devfs_fixup(), which assumes that the devfs mount is
still locked.
Granced at by: phk
MFC after: 3 days
|
| |
|
|
|
|
|
|
|
| |
vn_finished_write() should not be called.
Reviewed by: ssouhlal
MFC after: 3 days
|
|
|
|
|
|
|
|
|
|
| |
PROM by bytes. Adjust the extraction of the MAC address from this data
to reflect this change.
This gets the AX88x90 based PC Cards MAC address working again (my
UMAX Ethernet and Linksys EC2T cards now work).
MFC After: 3 days
|
| |
|
|
|
|
|
|
| |
Reviewed by: jhb
Tested by: Mark Kirkwood
MFC After: 3 days
|
|
|
|
|
|
|
|
|
|
| |
- Always check mdnew() return value, as even in !autounit case
kthread_create() can fail.
Those two changes fix serval panics provked by simple stress test.
Tested by: Kris The BugMagnet
MFC after: 3 days
|
|
|
|
|
|
|
|
|
|
|
|
| |
panic. The panic happens when outgoing L2CAP connection descriptor is
deleted with the L2CAP command(s) pending in the queue. In this case when
the last L2CAP command is deleted (due to cleanup) and reference counter
for the L2CAP connection goes down to zero the auto disconnect timeout
is incorrectly set. pjd gets credit for tracking this down and committing
bandaid.
Reported by: Jonatan B <onatan at gmail dot com>
MFC after: 3 days
|
|
|
|
|
|
|
| |
- Set errno to ENXIO instead of 0 in several attach failure cases.
- Setup the interrupt handler at the very end of txp_attach() after
ether_ifattach().
- Various whitespace fixes in function prototypes.
|
|
|
|
|
|
| |
from the softc.
MFC after: 3 days
|
|
|
|
|
| |
OC3231 Token Ring + 28.8 modem
OC3232 Token Ring + 33.6 modem
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
value from an m_tag, but also to set it. This reduces
complex code duplication and improves its readability.
Alas, we shouldn't rename the macro to VLAN_TAG_LVALUE()
globally because that would cause pain for kernel module
port maintainers and vendors using FreeBSD as their codebase.
Added a clarifying comment instead.
Discussed with: ru, glebius
X-MFC-After: 6.0-RELEASE (MFC is good just to reduce the diff)
|
| |
|
|
|
|
|
|
|
|
| |
not fd->flags.
PR: kern/85481
Submitted by: Lev Levinson <llevinson at inbox dot ru>
MFC after: 1 day
|
|
|
|
|
|
|
|
|
| |
o for() instead of while() looping over mbuf chain
o paren's around all flag checks
o more verbose function and purpose description
o some more style changes
Based on feedback from: sam
|
|
|
|
| |
correctly test for m_nextpkt in an mbuf chain.
|
|
|
|
|
|
|
|
|
|
|
| |
- Add locked variants of start(), init(), ifmedia_upd(), and poll() and stop
recursing on the driver lock.
- Add locking to ifmedia_upd() and ifmedia_sts().
- Use callout_*() instead of timeout/untimeout.
- Fix locking in ioctl().
Tested by: Bob Bishop rb at gid dot co dot uk
MFC after: 3 days
|
|
|
|
|
|
|
|
| |
m_demote(m->m_next) if they wish to start at the second mbuf in chain.
o Test m_type with == instead of &.
o Check m_nextpkt against NULL instead of implicit 0.
Based on feedback from: sam
|
|
|
|
|
|
|
|
|
|
| |
by explicitly setting sc->font_width, in the same
places where sc->font_size is set, instead of
relying on the default initialized value of 0 for sc->font_width.
PR: kern/84836
Reported by: Andrey V. Elsukov <bu7cher at yandex dot ru>
MFC after: 2 days
|
| |
|
| |
|
|
|
|
| |
worked as intended but only by chance. MT_HEADER == M_PKTHDR == 0x2.
|