07 Oct, 2008
2 commits
-
- Change CM-X255 and CM-X270 common function prefix from cmx270 to cmx2xx
- Split cmx2xx_init to common and CM-X270-specific parts
- Use dynamic assignement for DM9000 resources and led GPIOs.Signed-off-by: Russ Dill
Signed-off-by: Mike Rapoport
Acked-by: Eric Miao
Signed-off-by: Russell King -
Signed-off-by: Russ Dill
Signed-off-by: Mike Rapoport
Acked-by: Eric Miao
Signed-off-by: Russell King
27 Aug, 2008
3 commits
-
Signed-off-by: Mike Rapoport
Acked-by: Eric Miao
Signed-off-by: Russell King -
Signed-off-by: Mike Rapoport
Acked-by: Eric Miao
Signed-off-by: Russell King -
This patch adds core support for CM-X300 board based on PXA300 processor
Signed-off-by: Mike Rapoport
Acked-by: Eric Miao
Signed-off-by: Russell King
26 Aug, 2008
23 commits
-
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
bnx2x: Version update
bnx2x: Multi Queue
bnx2x: NAPI and interrupts enable/disable
bnx2x: NIC load failure cleanup
bnx2x: Initialization structure
bnx2x: HW lock timeout
bnx2x: Minimize lock time
bnx2x: Fan failure mechanism on additional design
bnx2x: Rx work check
ipv6: sysctl fixes
ipv4: sysctl fixes
sctp: add verification checks to SCTP_AUTH_KEY option -
Signed-off-by: Stephen Rothwell
Signed-off-by: Linus Torvalds -
Version update
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
The multi queue support is still disabled by default for the bnx2x
(needs some more testing and validation), but there are 2 obvious bug in
it which are fixed in this patchSigned-off-by: Yitchak Gertner
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Fixing the order of enabling and disabling NAPI and the interrupts
Signed-off-by: Yitchak Gertner
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Load failures were not handled correctly
Signed-off-by: Yitchak Gertner
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
The TPA initialization is part of the FW internal memory initialization
and so it is moved to the appropriate functionSigned-off-by: Yitchak Gertner
Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Increasing the lock timeout to 5 seconds instead of 1 second to minimize
the chance of failures due to timeoutSigned-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
After iSCSI boot, the HW lock should only protect the flag so only the
first function will reset the chip and not then entire chip reset
processSigned-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
The A1021G board is also using the fan failure mechanism in the same way
the A1022G board doesSigned-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
The has Rx work check was wrong: when the FW was at the end of the page,
the driver was already at the beginning of the next page. Since the
check only validated that both driver and FW are pointing to the same
place, it concluded that there is still work to be done. This caused
some serious issues including long latency results on ping-pong test and
lockups while unloading the driver in that condition.Signed-off-by: Eilon Greenstein
Signed-off-by: David S. Miller -
Braino: net.ipv6 in ipv6 skeleton has no business in rotable
classSigned-off-by: Al Viro
Signed-off-by: David S. Miller -
net.ipv4.neigh should be a part of skeleton to avoid ordering problems
Signed-off-by: Al Viro
Signed-off-by: David S. Miller -
The structure used for SCTP_AUTH_KEY option contains a
length that needs to be verfied to prevent buffer overflow
conditions. Spoted by Eugene Teo .Signed-off-by: Vlad Yasevich
Signed-off-by: David S. Miller -
This fixes a regression that was indirectly caused by commit
1184dc2ffe2c8fb9afb766d870850f2c3165ef25 ("x86: modify Kconfig to allow
up to 4096 cpus").Allowing 4k CPU's is not practical at this time, because we still have a
number of places that have several 'cpumask_t's on the stack, and a
4k-bit cpumask is 512 bytes of stack-space for each such variable. This
literally caused functions like 'smp_call_function_mask' to have a 2.5kB
stack frame, and several functions to have 2kB stackframes.With an 8kB stack total, smashing the stack was simply much too likely.
At least bugzilla entryhttp://bugzilla.kernel.org/show_bug.cgi?id=11342
was due to this.
The earlier commit to not inline load_module() into sys_init_module()
fixed the particular symptoms of this that Alan Brunelle saw in that
bugzilla entry, but the huge stack waste by cpumask_t's was the more
direct cause.Some day we'll have allocation helpers that allocate large CPU masks
dynamically, but in the meantime we simply cannot allow cpumasks this
large.Cc: Alan D. Brunelle
Cc: Mike Travis
Cc: Ingo Molnar
Cc: Thomas Gleixner
Signed-off-by: Linus Torvalds -
…el/git/tip/linux-2.6-tip
* 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
rtc: fix deadlock -
…git/tip/linux-2.6-tip
* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
x86: add X86_FEATURE_XMM4_2 definitions
x86: fix cpufreq + sched_clock() regression
x86: fix HPET regression in 2.6.26 versus 2.6.25, check hpet against BAR, v3
x86: do not enable TSC notifier if we don't need it
x86 MCE: Fix CPU hotplug problem with multiple multicore AMD CPUs
x86: fix: make PCI ECS for AMD CPUs hotplug capable
x86: fix: do not run code in amd_bus.c on non-AMD CPUs -
…l/git/tip/linux-2.6-tip
* 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
sched_clock: fix cpu_clock() -
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:
PCI: fix reference leak in pci_get_dev_by_id()
PCI: shpchp: Rename duplicate slot name N as N-1, N-2, N-M...
PCI: pciehp: Rename duplicate slot name N as N-1, N-2, N-M... -
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
ALSA: ASoC: Fix double free and memory leak in many codec drivers
ALSA: CA0106 on MSI K8N Diamond PLUS Motherboard -
* 'kvm-updates-2.6.27' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm:
KVM: fix userspace ABI breakage
KVM: MMU: Fix torn shadow pte
KVM: Use .fixup instead of .text.fixup on __kvm_handle_fault_on_reboot -
* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
lguest: update commentry
stop_machine: Remove deprecated stop_machine_run
stop_machine: wean Xen off stop_machine_run
virtio_balloon: fix towards_target when deflating balloon -
'load_module()' is a complex function that contains all the ELF section
logic, and inlining it is utterly insane. But gcc will do it, simply
because there is only one call-site. As a result, all the stack space
that is allocated for all the work to load the module will still be
active when we actually call the module init sequence, and the deep call
chain makes stack overflows happen.And stack overflows are really hard to debug, because they not only
corrupt random pages below the stack, but also corrupt the thread_info
structure that is allocated under the stack.In this case, Alan Brunelle reported some crazy oopses at bootup, after
loading the processor module that ends up doing complex ACPI stuff and
has quite a deep callchain. This should fix it, and is the sane thing
to do regardless.Cc: Alan D. Brunelle
Cc: Arjan van de Ven
Cc: Rusty Russell
Signed-off-by: Linus Torvalds
25 Aug, 2008
12 commits
-
This patch fixes 3 issues:
a) it removes the dependency on jiffies, because jiffies are incremented
by a single CPU, and the tick is not synchronized between CPUs. Therefore
relying on it to calculate a window to clip whacky TSC values doesn't work
as it can drift around.So instead use [GTOD, GTOD+TICK_NSEC) as the window.
b) __update_sched_clock() did (roughly speaking):
delta = sched_clock() - scd->tick_raw;
clock += delta;Which gives exponential growth, instead of linear.
c) allows the sched_clock_cpu() value to warp the u64 without breaking.
the results are more reliable sched_clock() deltas:
before after sched_clock
cpu_clock: 15750 51312 51488
cpu_clock: 59719 51052 50947
cpu_clock: 15879 51249 51061
cpu_clock: 1 50933 51198
cpu_clock: 1 50931 51039
cpu_clock: 1 51093 50981
cpu_clock: 1 51043 51040
cpu_clock: 1 50959 50938
cpu_clock: 1 50981 51011
cpu_clock: 1 51364 51212
cpu_clock: 1 51219 51273
cpu_clock: 1 51389 51048
cpu_clock: 1 51285 51611
cpu_clock: 1 50964 51137
cpu_clock: 1 50973 50968
cpu_clock: 1 50967 50972
cpu_clock: 1 58910 58485
cpu_clock: 1 51082 51025
cpu_clock: 1 50957 50958
cpu_clock: 1 50958 50957
cpu_clock: 1006128 51128 50971
cpu_clock: 1 51107 51155
cpu_clock: 1 51371 51081
cpu_clock: 1 51104 51365
cpu_clock: 1 51363 51309
cpu_clock: 1 51107 51160
cpu_clock: 1 51139 51100
cpu_clock: 1 51216 51136
cpu_clock: 1 51207 51215
cpu_clock: 1 51087 51263
cpu_clock: 1 51249 51177
cpu_clock: 1 51519 51412
cpu_clock: 1 51416 51255
cpu_clock: 1 51591 51594
cpu_clock: 1 50966 51374
cpu_clock: 1 50966 50966
cpu_clock: 1 51291 50948
cpu_clock: 1 50973 50867
cpu_clock: 1 50970 50970
cpu_clock: 998306 50970 50971
cpu_clock: 1 50971 50970
cpu_clock: 1 50970 50970
cpu_clock: 1 50971 50971
cpu_clock: 1 50970 50970
cpu_clock: 1 51351 50970
cpu_clock: 1 50970 51352
cpu_clock: 1 50971 50970
cpu_clock: 1 50970 50970
cpu_clock: 1 51321 50971
cpu_clock: 1 50974 51324Signed-off-by: Peter Zijlstra
Signed-off-by: Ingo Molnar -
Added Intel processor SSE4.2 feature flag.
No in-tree user at the moment, but makes the tree-merging life easier
for the crypto tree.Signed-off-by: Austin Zhang
Signed-off-by: Ingo Molnar -
The following part of commit 9ef621d3be56e1188300476a8102ff54f7b6793f
(KVM: Support mixed endian machines) changed on the size of a struct
that is exported to userspace:include/linux/kvm.h:
@@ -318,14 +318,14 @@ struct kvm_trace_rec {
__u32 vcpu_id;
union {
struct {
- __u32 cycle_lo, cycle_hi;
+ __u64 cycle_u64;
__u32 extra_u32[KVM_TRC_EXTRA_MAX];
} cycle;
struct {
__u32 extra_u32[KVM_TRC_EXTRA_MAX];
} nocycle;
} u;
-};
+} __attribute__((packed));Packing a struct was the correct idea, but it packed the wrong struct.
Signed-off-by: Adrian Bunk
Signed-off-by: Avi Kivity -
The shadow code assigns a pte directly in one place, which is nonatomic on
i386 can can cause random memory references. Fix by using an atomic setter.Signed-off-by: Avi Kivity
-
vmlinux.lds expects the fixup code to be on a section named .fixup. The
.text.fixup section is not mentioned on vmlinux.lds, and is included on
the resulting vmlinux (just after .text) only because of ld heuristics on
placing orphan sections.However, placing .text.fixup outside .text breaks the definition of
_etext, making it exclude the .text.fixup contents. That makes .text.fixup
be ignored by the kernel initialization code that needs to know about
section locations, such as the code setting page protection bits.Signed-off-by: Eduardo Habkost
Signed-off-by: Avi Kivity -
Signed-off-by: Rusty Russell
-
Everyone should be using stop_machine() now. The staged API
transition helped life in linux-next.Signed-off-by: Rusty Russell
-
This is the last use of (the deprecated) stop_machine_run in the tree.
Signed-off-by: Rusty Russell
Acked-by: Jeremy Fitzhardinge -
Both v and vb->num_pages are u32 and unsigned int respectively. If v is less
than vb->num_pages (and it is, when deflating the balloon), the result is a
very large 32-bit number. Since we're returning a s64, instead of getting the
same negative number we desire, we get a very large positive number.This handles the case where v < vb->num_pages and ensures we get a small,
negative, s64 as the result.Rusty: please push this for 2.6.27-rc4. It's probably appropriate for the
stable tree too as it will cause an unexpected OOM when ballooning.Signed-off-by: Anthony Liguori
Signed-off-by: Rusty Russell (simplified) -
I noticed that my sched_clock() was slow on a number of machine, so I
started looking at cpufreq.The below seems to fix the problem for me.
Signed-off-by: Ingo Molnar
-
Many SoC audio codec drivers have improper freeing of memory in error
paths.* codec is allocated in the platform device probe function, but is not
freed there in case of error. Instead it is freed in the i2c device
probe function's error path. However the success or failure of both
functions is not linked, so this could result in a double free (if
the platform device is successfully probed, the i2c device probing
fails and then the platform driver is unregistered.)* codec->private_data is allocated in many platform device probe
functions but not freed in their error paths.This patch hopefully solves all these problems.
Signed-off-by: Jean Delvare
Signed-off-by: Mark Brown
Signed-off-by: Takashi Iwai